diff --git a/docs/_config.yml b/docs/_config.yml index beb04bb..b8d4530 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -1,5 +1,19 @@ title: Zero Compiler -description: The Zero language and assembly compiler -theme: jekyll-theme-cayman +description: The Zero programming language and Zero Assembly +theme: jekyll-theme-slate +lang: en-US +logo: /images/zero-logo.png +repository: SuessLabs/ZeroCompiler +show_downloads: false url: https://suesslabs.github.io baseurl: /ZeroCompiler + +plugins: + - jekyll-relative-links + +defaults: + - scope: + path: "" + type: pages + values: + layout: default diff --git a/docs/_layouts/default.html b/docs/_layouts/default.html new file mode 100644 index 0000000..dcec5c5 --- /dev/null +++ b/docs/_layouts/default.html @@ -0,0 +1,48 @@ + + + + + + {% seo %} + + + + + + +
+ +
+ +
+
+ {{ content }} +
+
+ + + + diff --git a/docs/assets/css/style.scss b/docs/assets/css/style.scss new file mode 100644 index 0000000..11d5c02 --- /dev/null +++ b/docs/assets/css/style.scss @@ -0,0 +1,340 @@ +--- +--- + +@import "jekyll-theme-slate"; + +// Keep Slate's layout and syntax highlighting, with Zero's brand and doc sizing. +* { + box-sizing: border-box; +} + +html { + scroll-padding-top: 1.5rem; +} + +body { + color: #263445; + background: #17212f; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif; + font-size: 17px; + line-height: 1.75; +} + +.inner { + width: calc(100% - 3rem); + max-width: 1088px; + padding: 0; +} + +a { + color: #006c82; + transition: none; + text-underline-offset: 0.18em; +} + +a:hover { + color: #004d60; +} + +a:focus-visible { + outline: 3px solid #008da6; + outline-offset: 4px; + border-radius: 2px; +} + +.skip-link { + position: absolute; + top: 0.5rem; + left: 1rem; + z-index: 10; + padding: 0.5rem 1rem; + color: #102033; + background: #fff; + transform: translateY(-200%); +} + +.skip-link:focus { + transform: translateY(0); +} + +#header_wrap { + background: #17212f; + border-bottom: 3px solid #008da6; +} + +#header_wrap .site-header { + padding: 2.5rem 0 0; +} + +.brand-row { + display: flex; + align-items: center; + justify-content: space-between; + gap: 2rem; +} + +.brand { + display: block; + flex-shrink: 0; + width: 330px; + max-width: 100%; + padding: 0.35rem 0.75rem; + border: 1px solid #dbe4eb; + border-radius: 5px; + background: #fff; + line-height: 0; +} + +.brand img { + display: block; + width: 100%; + max-width: 100%; + height: auto; + margin: 0; + padding: 0; + border: 0; + box-shadow: none; +} + +.header-links { + display: flex; + align-items: center; + flex-wrap: wrap; + gap: 1.5rem; + font-size: 0.9rem; + font-weight: 600; +} + +.header-links a, +.site-nav a { + color: #d9e3ed; +} + +.header-links .download-link { + padding: 0.6rem 1rem; + color: #fff; + border: 1px solid #587183; + border-radius: 4px; + background: #24384a; +} + +.header-links a:hover, +.site-nav a:hover { + color: #fff; +} + +.site-description { + margin: 1rem 0 1.75rem; + color: #b9c8d6; + font-size: 1rem; +} + +.site-nav { + display: flex; + flex-wrap: wrap; + gap: 0 1.75rem; + border-top: 1px solid #354455; + font-size: 0.9rem; + font-weight: 600; +} + +.site-nav a { + display: inline-block; + padding: 0.9rem 0; + border-bottom: 3px solid transparent; + margin-bottom: -3px; +} + +.site-nav a[aria-current="page"] { + color: #fff; + border-bottom-color: #71d3e0; +} + +#main_content_wrap { + border: 0; + background: #fff; +} + +#main_content { + padding: 3rem 0 4rem; + overflow-wrap: anywhere; +} + +#main_content > :first-child { + margin-top: 0; +} + +h1, h2, h3, h4, h5, h6 { + color: #172a3d; + font-family: inherit; + letter-spacing: -0.025em; + line-height: 1.3; +} + +h1 { + margin: 0 0 1.5rem; + font-size: 2.4rem; +} + +h2 { + padding: 0 0 0.65rem; + margin: 3rem 0 1.2rem; + border-bottom: 1px solid #dbe4eb; + background: none; + font-size: 1.65rem; +} + +h3 { + margin: 2rem 0 0.9rem; + font-size: 1.25rem; +} + +p, ul, ol { + margin-bottom: 1.2rem; +} + +#main_content > p { + max-width: 82ch; +} + +li + li { + margin-top: 0.3rem; +} + +pre, code { + font-family: "Cascadia Code", Consolas, "Liberation Mono", monospace; + border-radius: 4px; + box-shadow: none; +} + +code { + padding: 0.15em 0.35em; + margin: 0; + color: #15364d; + background: #edf2f6; + font-size: 0.88em; +} + +pre { + max-width: 100%; + padding: 1.25rem; + border: 1px solid #dbe4eb; + margin: 1.25rem 0 1.75rem; + background: #f6f8fa; + line-height: 1.6; + overflow: auto; + overflow-wrap: normal; +} + +pre code { + padding: 0; + border: 0; + background: transparent; + font-size: 0.9rem; +} + +table { + display: table; + width: 100%; + max-width: 100%; + border: 1px solid #dbe4eb; + margin: 1.5rem 0 2rem; + font-size: 0.94rem; + overflow-x: auto; +} + +th { + padding: 0.8rem 1rem; + border: 1px solid #35475a; + color: #fff; + background: #26394c; + font-weight: 600; +} + +td { + padding: 0.8rem 1rem; + border: 1px solid #dbe4eb; + vertical-align: top; +} + +tbody tr:nth-child(even) { + background: #f5f8fa; +} + +blockquote { + padding: 0.8rem 1.25rem; + border-left: 3px solid #008da6; + color: #42566b; + background: #f0f6f8; +} + +blockquote > :last-child { + margin-bottom: 0; +} + +#footer_wrap { + background: #17212f; +} + +.site-footer { + display: flex; + justify-content: space-between; + flex-wrap: wrap; + gap: 0.5rem 2rem; + padding: 1.75rem 0; + font-size: 0.85rem; +} + +.site-footer p { + margin: 0; + color: #b9c8d6; +} + +@media screen and (max-width: 640px) { + body { + font-size: 16px; + } + + .inner { + width: calc(100% - 2rem); + min-width: 0; + } + + #header_wrap .site-header { + padding-top: 1.5rem; + } + + .brand-row { + align-items: flex-start; + flex-direction: column; + gap: 1.25rem; + } + + .brand { + width: 280px; + } + + .site-nav { + gap: 0 1.25rem; + } + + #main_content { + padding-top: 2rem; + } + + h1 { + font-size: 2rem; + } + + h2 { + font-size: 1.45rem; + } + + table { + display: block; + } + + th, td { + min-width: 10rem; + } +}