This commit is contained in:
Peter Williams 2020-04-06 21:48:36 -04:00
Коммит 93a1abbf3f
16 изменённых файлов: 846 добавлений и 0 удалений

1
.gitignore поставляемый Normal file
Просмотреть файл

@ -0,0 +1 @@
/public/

15
config.toml Normal file
Просмотреть файл

@ -0,0 +1,15 @@
# The URL the site will be built for
base_url = "https://worldwidetelescope.org"
# Whether to automatically compile all Sass files in the sass directory
compile_sass = true
# Whether to do syntax highlighting
# Theme can be customised by setting the `highlight_theme` variable to a theme supported by Zola
highlight_code = true
# Whether to build a search index to be used later on by a JavaScript library
build_search_index = false
[extra]
# Put all your custom variables here

566
sass/sanitize.css Normal file
Просмотреть файл

@ -0,0 +1,566 @@
/* Document
* ========================================================================== */
/**
* Add border box sizing in all browsers (opinionated).
*/
*,
::before,
::after {
box-sizing: border-box;
}
/**
* 1. Add text decoration inheritance in all browsers (opinionated).
* 2. Add vertical alignment inheritance in all browsers (opinionated).
*/
::before,
::after {
text-decoration: inherit; /* 1 */
vertical-align: inherit; /* 2 */
}
/**
* 1. Use the default cursor in all browsers (opinionated).
* 2. Change the line height in all browsers (opinionated).
* 3. Use a 4-space tab width in all browsers (opinionated).
* 4. Remove the grey highlight on links in iOS (opinionated).
* 5. Prevent adjustments of font size after orientation changes in
* IE on Windows Phone and in iOS.
* 6. Breaks words to prevent overflow in all browsers (opinionated).
*/
html {
cursor: default; /* 1 */
line-height: 1.5; /* 2 */
-moz-tab-size: 4; /* 3 */
tab-size: 4; /* 3 */
-webkit-tap-highlight-color: transparent /* 4 */;
-ms-text-size-adjust: 100%; /* 5 */
-webkit-text-size-adjust: 100%; /* 5 */
word-break: break-word; /* 6 */
}
/* Sections
* ========================================================================== */
/**
* Remove the margin in all browsers (opinionated).
*/
body {
margin: 0;
}
/**
* Correct the font size and margin on `h1` elements within `section` and
* `article` contexts in Chrome, Edge, Firefox, and Safari.
*/
h1 {
font-size: 2em;
margin: 0.67em 0;
}
/* Grouping content
* ========================================================================== */
/**
* Remove the margin on nested lists in Chrome, Edge, IE, and Safari.
*/
dl dl,
dl ol,
dl ul,
ol dl,
ul dl {
margin: 0;
}
/**
* Remove the margin on nested lists in Edge 18- and IE.
*/
ol ol,
ol ul,
ul ol,
ul ul {
margin: 0;
}
/**
* 1. Add the correct sizing in Firefox.
* 2. Show the overflow in Edge 18- and IE.
*/
hr {
height: 0; /* 1 */
overflow: visible; /* 2 */
}
/**
* Add the correct display in IE.
*/
main {
display: block;
}
/**
* Remove the list style on navigation lists in all browsers (opinionated).
*/
nav ol,
nav ul {
list-style: none;
padding: 0;
}
/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
pre {
font-family: monospace, monospace; /* 1 */
font-size: 1em; /* 2 */
}
/* Text-level semantics
* ========================================================================== */
/**
* Remove the gray background on active links in IE 10.
*/
a {
background-color: transparent;
}
/**
* Add the correct text decoration in Edge 18-, IE, and Safari.
*/
abbr[title] {
text-decoration: underline;
text-decoration: underline dotted;
}
/**
* Add the correct font weight in Chrome, Edge, and Safari.
*/
b,
strong {
font-weight: bolder;
}
/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp {
font-family: monospace, monospace; /* 1 */
font-size: 1em; /* 2 */
}
/**
* Add the correct font size in all browsers.
*/
small {
font-size: 80%;
}
/* Embedded content
* ========================================================================== */
/*
* Change the alignment on media elements in all browsers (opinionated).
*/
audio,
canvas,
iframe,
img,
svg,
video {
vertical-align: middle;
}
/**
* Add the correct display in IE 9-.
*/
audio,
video {
display: inline-block;
}
/**
* Add the correct display in iOS 4-7.
*/
audio:not([controls]) {
display: none;
height: 0;
}
/**
* Remove the border on iframes in all browsers (opinionated).
*/
iframe {
border-style: none;
}
/**
* Remove the border on images within links in IE 10-.
*/
img {
border-style: none;
}
/**
* Change the fill color to match the text color in all browsers (opinionated).
*/
svg:not([fill]) {
fill: currentColor;
}
/**
* Hide the overflow in IE.
*/
svg:not(:root) {
overflow: hidden;
}
/* Tabular data
* ========================================================================== */
/**
* Collapse border spacing in all browsers (opinionated).
*/
table {
border-collapse: collapse;
}
/* Forms
* ========================================================================== */
/**
* Remove the margin on controls in Safari.
*/
button,
input,
select {
margin: 0;
}
/**
* 1. Show the overflow in IE.
* 2. Remove the inheritance of text transform in Edge 18-, Firefox, and IE.
*/
button {
overflow: visible; /* 1 */
text-transform: none; /* 2 */
}
/**
* Correct the inability to style buttons in iOS and Safari.
*/
button,
[type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button;
}
/**
* 1. Change the inconsistent appearance in all browsers (opinionated).
* 2. Correct the padding in Firefox.
*/
fieldset {
border: 1px solid #a0a0a0; /* 1 */
padding: 0.35em 0.75em 0.625em; /* 2 */
}
/**
* Show the overflow in Edge 18- and IE.
*/
input {
overflow: visible;
}
/**
* 1. Correct the text wrapping in Edge 18- and IE.
* 2. Correct the color inheritance from `fieldset` elements in IE.
*/
legend {
color: inherit; /* 2 */
display: table; /* 1 */
max-width: 100%; /* 1 */
white-space: normal; /* 1 */
}
/**
* 1. Add the correct display in Edge 18- and IE.
* 2. Add the correct vertical alignment in Chrome, Edge, and Firefox.
*/
progress {
display: inline-block; /* 1 */
vertical-align: baseline; /* 2 */
}
/**
* Remove the inheritance of text transform in Firefox.
*/
select {
text-transform: none;
}
/**
* 1. Remove the margin in Firefox and Safari.
* 2. Remove the default vertical scrollbar in IE.
* 3. Change the resize direction in all browsers (opinionated).
*/
textarea {
margin: 0; /* 1 */
overflow: auto; /* 2 */
resize: vertical; /* 3 */
}
/**
* Remove the padding in IE 10-.
*/
[type="checkbox"],
[type="radio"] {
padding: 0;
}
/**
* 1. Correct the odd appearance in Chrome, Edge, and Safari.
* 2. Correct the outline style in Safari.
*/
[type="search"] {
-webkit-appearance: textfield; /* 1 */
outline-offset: -2px; /* 2 */
}
/**
* Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
height: auto;
}
/**
* Correct the text style of placeholders in Chrome, Edge, and Safari.
*/
::-webkit-input-placeholder {
color: inherit;
opacity: 0.54;
}
/**
* Remove the inner padding in Chrome, Edge, and Safari on macOS.
*/
::-webkit-search-decoration {
-webkit-appearance: none;
}
/**
* 1. Correct the inability to style upload buttons in iOS and Safari.
* 2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
-webkit-appearance: button; /* 1 */
font: inherit; /* 2 */
}
/**
* Remove the inner border and padding of focus outlines in Firefox.
*/
::-moz-focus-inner {
border-style: none;
padding: 0;
}
/**
* Restore the focus outline styles unset by the previous rule in Firefox.
*/
:-moz-focusring {
outline: 1px dotted ButtonText;
}
/**
* Remove the additional :invalid styles in Firefox.
*/
:-moz-ui-invalid {
box-shadow: none;
}
/* Interactive
* ========================================================================== */
/*
* Add the correct display in Edge 18- and IE.
*/
details {
display: block;
}
/*
* Add the correct styles in Edge 18-, IE, and Safari.
*/
dialog {
background-color: white;
border: solid;
color: black;
display: block;
height: -moz-fit-content;
height: -webkit-fit-content;
height: fit-content;
left: 0;
margin: auto;
padding: 1em;
position: absolute;
right: 0;
width: -moz-fit-content;
width: -webkit-fit-content;
width: fit-content;
}
dialog:not([open]) {
display: none;
}
/*
* Add the correct display in all browsers.
*/
summary {
display: list-item;
}
/* Scripting
* ========================================================================== */
/**
* Add the correct display in IE 9-.
*/
canvas {
display: inline-block;
}
/**
* Add the correct display in IE.
*/
template {
display: none;
}
/* User interaction
* ========================================================================== */
/*
* 1. Remove the tapping delay in IE 10.
* 2. Remove the tapping delay on clickable elements
in all browsers (opinionated).
*/
a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
-ms-touch-action: manipulation; /* 1 */
touch-action: manipulation; /* 2 */
}
/**
* Add the correct display in IE 10-.
*/
[hidden] {
display: none;
}
/* Accessibility
* ========================================================================== */
/**
* Change the cursor on busy elements in all browsers (opinionated).
*/
[aria-busy="true"] {
cursor: progress;
}
/*
* Change the cursor on control elements in all browsers (opinionated).
*/
[aria-controls] {
cursor: pointer;
}
/*
* Change the cursor on disabled, not-editable, or otherwise
* inoperable elements in all browsers (opinionated).
*/
[aria-disabled="true"],
[disabled] {
cursor: not-allowed;
}
/*
* Change the display on visually hidden accessible elements
* in all browsers (opinionated).
*/
[aria-hidden="false"][hidden] {
display: initial;
}
[aria-hidden="false"][hidden]:not(:focus) {
clip: rect(0, 0, 0, 0);
position: absolute;
}

193
sass/style.scss Normal file
Просмотреть файл

@ -0,0 +1,193 @@
// SASS variables, mixins, etc.
$light-color: rgb(247, 245, 231);
$dark-color: #290066;
@mixin border-radius($radius) {
-webkit-border-radius: $radius;
-moz-border-radius: $radius;
-ms-border-radius: $radius;
border-radius: $radius;
}
@font-face {
font-family: UniversLTPro-45Light;
src: url("/assets/39762C_0_0.eot?#iefix") format("embedded-opentype"), url("/assets/39762C_0_0.woff2") format("woff2"), url("/assets/39762C_0_0.woff") format("woff"), url("/assets/39762C_0_0.ttf") format("truetype");
}
@font-face {
font-family: UniversLTPro-65Bold;
src: url("/assets/39762C_2_0.eot?#iefix") format("embedded-opentype"), url("/assets/39762C_2_0.woff2") format("woff2"), url("/assets/39762C_2_0.woff") format("woff"), url("/assets/39762C_2_0.ttf") format("truetype");
}
// Breakpoints for responsive CSS media queries. For reference, Boostrap uses:
//
// extra-small < 576px <~26em smartphone in portrait
// small < 768px <~35em smartphone, landscape
// medium < 992px <~45em tablet (portrait?)
// large <1200px <~55em reasonable desktop
// extra-large >1200px >~55em large desktop
//
// (Here, the "em" measurements use our adopted fiducial conversion of 1em =
// 22px; see below.) But we don't care about such fine gradations, so we keep
// it more reasonable.
$break-small: 36em;
// Top-level setup
html {
// Default font sizes are too small, I think. At a standard 1em = 16px,
// 1.375em becomes 22px.
font-size: 1.375em;
font-family: "UniversLTPro-45Light";
// The viewport width changes slightly if there's a scrollbar or now,
// causing the layout to shift when navigating between long and short
// pages. There are a few ways to try to deal with this, but here I
// just force there to always be a scrollbar.
overflow-y: scroll;
}
// Styling for generic Markdown. I want Markdown-derived HTML to look
// reasonable without any extra futzing or applying CSS classes, so these
// rules try to set up a nice, coherent appearance that will work well in a
// variety of contexts.
p {
// Note use of "em" units here.
margin: 0.3em 0 1em 0;
}
img {
max-width: 100%;
}
li {
margin: 0.3rem 0 0.3rem 0;
}
pre {
font-size: 70%;
padding: 0.2rem;
@media screen and (max-width: $break-small) {
font-size: 50%;
padding: 0.1rem;
}
}
blockquote {
font-size: 85%;
font-family: "Noto Sans";
}
hr {
margin: 1rem 2rem;
}
a {
color: $dark-color;
}
h1 {
// Keep this smaller than `.post-title`
font-size: 125%;
margin: 1em 0 0.3em 0;
}
h2 {
// Looks like we need to manually specify these font sizes to cascade down
// relative to h1.
font-size: 110%;
}
h3, h4, h5, h6 {
// Todo: use techniques other than font-sizing to distinguish h4 and below
// from h3.
font-size: 100%;
}
h1, h2, h3, h4, h5, h6 {
line-height: 1;
}
// Additional generic rules, for figures. Using `table` and `table-caption`
// for display types makes it so that the caption never becomes wider than the
// figure.
figure {
display: table;
margin: 1.5rem auto 1.5rem auto;
max-width: 100%;
img {
max-width: 100%;
margin: 0;
}
}
figcaption {
display: table-caption;
caption-side: bottom;
font-size: 70%;
font-style: italic;
margin-top: 0.2rem;
}
// Page layout. Thus far, this has ended up being extremely simple! Yay.
div.maxwidth {
max-width: 32rem;
padding: 0 1.5rem 0 1.5rem;
margin-left: auto;
margin-right: auto;
}
// The universal footer. The structure is `footer > div.maxwidth > p`.
footer {
background-color: $light-color;
width: 100%;
clear: both;
font-size: 60%;
margin: 1rem 0 0 0;
padding: 0.3rem 0 0.3rem 0;
p {
margin: 0;
}
}
// The main content area of each page. In an inversion of most of the rest of
// the elements, the structure is `div.maxwidth > div.content`.
div.content {
width: 100%;
margin-top: 1rem;
// This line-height is very generous, but the W3C apparently recommends a
// value at least this large for body text for accessibility reasons.
line-height: 1.5;
}
// We configure Zola to insert anchor links for headers in the Markdown.
// These show up as `a.zola-anchor` tags inside the <hN> tag to the left
// of the header text.
a.zola-anchor {
visibility: hidden;
text-decoration: none;
font-size: 80%;
margin-left: 0.2em; // note: intentionally `em` here
}
h1:hover a.zola-anchor,
h2:hover a.zola-anchor,
h3:hover a.zola-anchor,
h4:hover a.zola-anchor,
h5:hover a.zola-anchor,
h6:hover a.zola-anchor {
visibility: visible;
}

Двоичные данные
static/assets/39762C_0_0.eot Normal file

Двоичный файл не отображается.

Двоичные данные
static/assets/39762C_0_0.ttf Normal file

Двоичный файл не отображается.

Двоичные данные
static/assets/39762C_0_0.woff Normal file

Двоичный файл не отображается.

Двоичные данные
static/assets/39762C_0_0.woff2 Normal file

Двоичный файл не отображается.

Двоичные данные
static/assets/39762C_2_0.eot Normal file

Двоичный файл не отображается.

Двоичные данные
static/assets/39762C_2_0.ttf Normal file

Двоичный файл не отображается.

Двоичные данные
static/assets/39762C_2_0.woff Normal file

Двоичный файл не отображается.

Двоичные данные
static/assets/39762C_2_0.woff2 Normal file

Двоичный файл не отображается.

46
templates/base.html Normal file
Просмотреть файл

@ -0,0 +1,46 @@
{%- import "macros.html" as macros -%}
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<title>{% block title %}AAS WorldWide Telescope{% endblock title %}</title>
<link rel="stylesheet" href="{{ get_url(path="sanitize.css") | safe }}">
<link rel="stylesheet" href="{{ get_url(path="style.css") | safe }}">
<!--[if IE]> <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
{% block extra_head %}
{% endblock extra_head %}
</head>
<body>
<header>
<div class="maxwidth">
<p id="banner"><a href="{{ get_url(path="", trailing_slash=true) | safe }}">AAS WorldWide Telescope</a></p>
</div>
</header>
<nav id="topnav">
<div class="maxwidth">
<ul>
<!-- <li><a href="[[ macros__page_url(path="dir/file.md") ]]">Link</a></li> -->
<li>Nav Item</li>
</ul>
</div>
</nav>
<div class="maxwidth">
<div class="content">
{% block content %}
{% endblock content %}
</div>
</div>
<footer>
<div class="maxwidth">
<p>Copyright {{ now() | date(format="%Y") }} AAS. Site generated
with <a href="https://www.getzola.org/">Zola</a>.</p>
</div>
</footer>
</body>
</html>

11
templates/index.html Normal file
Просмотреть файл

@ -0,0 +1,11 @@
{% extends "base.html" %}
{% block extra_head %}
<link rel="alternate" type="application/rss+xml" title="WWT Feed" href="{{ get_url(path="rss.xml") | safe }}" />
{% endblock extra_head %}
{% block content %}
<p>Heres some content.</p>
{% endblock content %}

4
templates/macros.html Normal file
Просмотреть файл

@ -0,0 +1,4 @@
{%- macro page_url(path) -%}
{%- set page = get_page(path=path) -%}
{{ page.permalink | safe }}
{%- endmacro input -%}

10
templates/page.html Normal file
Просмотреть файл

@ -0,0 +1,10 @@
{% extends "base.html" %}
{%- block title -%}
{{ config.title }}: {{ page.title }}
{%- endblock title -%}
{% block content %}
<p class="post-title"><a href="{{ page.permalink | safe }}">{{ page.title }}</a></p>
{{ page.content | safe }}
{% endblock content %}