commit 263ba0d329e8fdf514f73a719bb24c3281561806
Author: Adora Laura Kalb hugo says hello! hugo says hello! hugo says hello! my first post my second post 🙈 -1&&(n.refIndex=e.idx),t.matches.push(n)}}))}function le(e,t){t.score=e.score}function de(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.includeMatches,i=void 0===r?A.includeMatches:r,o=n.includeScore,c=void 0===o?A.includeScore:o,a=[];return i&&a.push(fe),c&&a.push(le),e.map((function(e){var n=e.idx,r={item:t[n],refIndex:n};return a.length&&a.forEach((function(t){t(e,r)})),r}))}var ve=function(){function e(n){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2?arguments[2]:void 0;t(this,e),this.options=c({},A,{},r),this.options.useExtendedSearch,this._keyStore=new w(this.options.keys),this.setCollection(n,i)}return r(e,[{key:"setCollection",value:function(e,t){if(this._docs=e,t&&!(t instanceof E))throw new Error("Incorrect 'index' type");this._myIndex=t||$(this.options.keys,this._docs,{getFn:this.options.getFn})}},{key:"add",value:function(e){k(e)&&(this._docs.push(e),this._myIndex.add(e))}},{key:"remove",value:function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(){return!1},t=[],n=0,r=this._docs.length;n{{ .Title }}
+ {{ end }}
+
+
+
+```
+
+Hugo uses the Go template engine. That engine scans the template files for commands which are enclosed between "{{" and "}}". In our template, the commands are:
+
+1. range
+2. .Title
+3. end
+
+The "range" command is an iterator. We're going to use it to go through the first ten pages. Every HTML file that Hugo creates is treated as a page, so looping through the list of pages will look at every file that will be created.
+
+The ".Title" command prints the value of the "title" variable. Hugo pulls it from the front matter in the Markdown file.
+
+The "end" command signals the end of the range iterator. The engine loops back to the top of the iteration when it finds "end." Everything between the "range" and "end" is evaluated every time the engine goes through the iteration. In this file, that would cause the title from the first ten pages to be output as heading level one.
+
+It's helpful to remember that some variables, like .Data, are created before any output files. Hugo loads every content file into the variable and then gives the template a chance to process before creating the HTML files.
+
+Build the web site and then verify the results.
+
+```shell
+ $ rm -rf public
+ $ hugo --verbose
+ INFO: 2014/09/29 Using config file: /Users/quoha/Sites/zafta/hugo.toml
+ INFO: 2014/09/29 syncing from /Users/quoha/Sites/zafta/themes/zafta/static/ to /Users/quoha/Sites/zafta/public/
+ INFO: 2014/09/29 syncing from /Users/quoha/Sites/zafta/static/ to /Users/quoha/Sites/zafta/public/
+ INFO: 2014/09/29 found taxonomies: map[string]string{"tag":"tags", "category":"categories"}
+ WARN: 2014/09/29 Unable to locate layout: [404.html theme/404.html]
+ 0 draft content
+ 0 future content
+ 2 pages created
+ 0 tags created
+ 0 categories created
+ in 4 ms
+ $ find public -type f -name '*.html' | xargs ls -l
+ -rw-r--r-- 1 quoha staff 94 Sep 29 22:23 public/index.html
+ -rw-r--r-- 1 quoha staff 0 Sep 29 22:23 public/post/first/index.html
+ -rw-r--r-- 1 quoha staff 0 Sep 29 22:23 public/post/index.html
+ -rw-r--r-- 1 quoha staff 0 Sep 29 22:23 public/post/second/index.html
+ $ cat public/index.html
+
+
+
+
+ second
+
+ first
+
+
+
+ $
+```
+
+Congratulations, the home page shows the title of the two posts. The posts themselves are still empty, but let's take a moment to appreciate what we've done. Your template now generates output dynamically. Believe it or not, by inserting the range command inside of those curly braces, you've learned everything you need to know to build a theme. All that's really left is understanding which template will be used to generate each content file and becoming familiar with the commands for the template engine.
+
+And, if that were entirely true, this tutorial would be much shorter. There are a few things to know that will make creating a new template much easier. Don't worry, though, that's all to come.
+
+### Add Content to the Posts
+
+We're working with posts, which are in the content/post/ directory. That means that their section is "post" (and if we don't do something weird, their type is also "post").
+
+Hugo uses the section and type to find the template file for every piece of content. Hugo will first look for a template file that matches the section or type name. If it can't find one, then it will look in the _default/ directory. There are some twists that we'll cover when we get to categories and tags, but for now we can assume that Hugo will try post/single.html, then _default/single.html.
+
+Now that we know the search rule, let's see what we actually have available:
+
+```shell
+ $ find themes/zafta -name single.html | xargs ls -l
+ -rw-r--r-- 1 quoha staff 132 Sep 29 17:31 themes/zafta/layouts/_default/single.html
+```
+
+We could create a new template, post/single.html, or change the default. Since we don't know of any other content types, let's start with updating the default.
+
+Remember, any content that we haven't created a template for will end up using this template. That can be good or bad. Bad because I know that we're going to be adding different types of content and we're going to end up undoing some of the changes we've made. It's good because we'll be able to see immediate results. It's also good to start here because we can start to build the basic layout for the site. As we add more content types, we'll refactor this file and move logic around. Hugo makes that fairly painless, so we'll accept the cost and proceed.
+
+Please see the Hugo documentation on template rendering for all the details on determining which template to use. And, as the docs mention, if you're building a single page application (SPA) web site, you can delete all of the other templates and work with just the default single page. That's a refreshing amount of joy right there.
+
+#### Update the Template File
+
+```html
+ $ vi themes/zafta/layouts/_default/single.html
+
+
+
+ {{ .Title }}
+ {{ .Content }}
+
+
+ :wq
+```
+
+Build the web site and verify the results.
+
+ $ rm -rf public
+ $ hugo --verbose
+ INFO: 2014/09/29 Using config file: /Users/quoha/Sites/zafta/hugo.toml
+ INFO: 2014/09/29 syncing from /Users/quoha/Sites/zafta/themes/zafta/static/ to /Users/quoha/Sites/zafta/public/
+ INFO: 2014/09/29 syncing from /Users/quoha/Sites/zafta/static/ to /Users/quoha/Sites/zafta/public/
+ INFO: 2014/09/29 found taxonomies: map[string]string{"tag":"tags", "category":"categories"}
+ WARN: 2014/09/29 Unable to locate layout: [404.html theme/404.html]
+ 0 draft content
+ 0 future content
+ 2 pages created
+ 0 tags created
+ 0 categories created
+ in 4 ms
+
+ $ find public -type f -name '*.html' | xargs ls -l
+ -rw-r--r-- 1 quoha staff 94 Sep 29 22:40 public/index.html
+ -rw-r--r-- 1 quoha staff 125 Sep 29 22:40 public/post/first/index.html
+ -rw-r--r-- 1 quoha staff 0 Sep 29 22:40 public/post/index.html
+ -rw-r--r-- 1 quoha staff 128 Sep 29 22:40 public/post/second/index.html
+
+
+```html $ cat public/post/first/index.html
+
+
+
+ first
+ second
+ {{ .Title }}
+ {{ end }}
+
+
+```
+
+Build the web site and verify the results.
+
+```shell
+ $ rm -rf public
+ $ hugo --verbose
+ INFO: 2014/09/29 Using config file: /Users/quoha/Sites/zafta/hugo.toml
+ INFO: 2014/09/29 syncing from /Users/quoha/Sites/zafta/themes/zafta/static/ to /Users/quoha/Sites/zafta/public/
+ INFO: 2014/09/29 syncing from /Users/quoha/Sites/zafta/static/ to /Users/quoha/Sites/zafta/public/
+ INFO: 2014/09/29 found taxonomies: map[string]string{"tag":"tags", "category":"categories"}
+ WARN: 2014/09/29 Unable to locate layout: [404.html theme/404.html]
+ 0 draft content
+ 0 future content
+ 2 pages created
+ 0 tags created
+ 0 categories created
+ in 4 ms
+
+ $ find public -type f -name '*.html' | xargs ls -l
+ -rw-r--r-- 1 quoha staff 149 Sep 29 22:44 public/index.html
+ -rw-r--r-- 1 quoha staff 125 Sep 29 22:44 public/post/first/index.html
+ -rw-r--r-- 1 quoha staff 0 Sep 29 22:44 public/post/index.html
+ -rw-r--r-- 1 quoha staff 128 Sep 29 22:44 public/post/second/index.html
+
+ $ cat public/index.html
+
+
+
+
+ second
+
+ first
+
+
+
+
+ $
+```
+
+### Create a Post Listing
+
+We have the posts displaying on the home page and on their own page. We also have a file public/post/index.html that is empty. Let's make it show a list of all posts (not just the first ten).
+
+We need to decide which template to update. This will be a listing, so it should be a list template. Let's take a quick look and see which list templates are available.
+
+```shell
+ $ find themes/zafta -name list.html | xargs ls -l
+ -rw-r--r-- 1 quoha staff 0 Sep 29 17:31 themes/zafta/layouts/_default/list.html
+```
+
+As with the single post, we have to decide to update _default/list.html or create post/list.html. We still don't have multiple content types, so let's stay consistent and update the default list template.
+
+## Creating Top Level Pages
+
+Let's add an "about" page and display it at the top level (as opposed to a sub-level like we did with posts).
+
+The default in Hugo is to use the directory structure of the content/ directory to guide the location of the generated html in the public/ directory. Let's verify that by creating an "about" page at the top level:
+
+```markdown
+$ vi content/about.md
++++
+title = "about"
+description = "about this site"
+date = "2014-09-27"
+slug = "about time"
++++
+
+## about us
+
+i'm speechless
+:wq
+```
+Generate the web site and verify the results.
+
+```shell
+ $ find public -name '*.html' | xargs ls -l
+ -rw-rw-r-- 1 mdhender staff 334 Sep 27 15:08 public/about-time/index.html
+ -rw-rw-r-- 1 mdhender staff 527 Sep 27 15:08 public/index.html
+ -rw-rw-r-- 1 mdhender staff 358 Sep 27 15:08 public/post/first-post/index.html
+ -rw-rw-r-- 1 mdhender staff 0 Sep 27 15:08 public/post/index.html
+ -rw-rw-r-- 1 mdhender staff 342 Sep 27 15:08 public/post/second-post/index.html
+```
+
+Notice that the page wasn't created at the top level. It was created in a sub-directory named 'about-time/'. That name came from our slug. Hugo will use the slug to name the generated content. It's a reasonable default, by the way, but we can learn a few things by fighting it for this file.
+
+One other thing. Take a look at the home page.
+
+```html
+
+
+
+
+ creating a new theme
+ about
+ second
+ first
+
+
+```
+Notice that the "about" link is listed with the posts? That's not desirable, so let's change that first.
+
+```html
+
+
+
+
+ posts
+ {{ range first 10 .Data.Pages }}
+ {{ if eq .Type "post"}}
+ {{ .Title }}
+ {{ end }}
+ {{ end }}
+
+ pages
+ {{ range .Data.Pages }}
+ {{ if eq .Type "page" }}
+ {{ .Title }}
+ {{ end }}
+ {{ end }}
+
+
+
+```
+Generate the web site and verify the results. The home page has two sections, posts and pages, and each section has the right set of headings and links in it.
+
+But, that about page still renders to about-time/index.html.
+
+```bash
+ $ find public -name '*.html' | xargs ls -l
+ -rw-rw-r-- 1 mdhender staff 334 Sep 27 15:33 public/about-time/index.html
+ -rw-rw-r-- 1 mdhender staff 645 Sep 27 15:33 public/index.html
+ -rw-rw-r-- 1 mdhender staff 358 Sep 27 15:33 public/post/first-post/index.html
+ -rw-rw-r-- 1 mdhender staff 0 Sep 27 15:33 public/post/index.html
+ -rw-rw-r-- 1 mdhender staff 342 Sep 27 15:33 public/post/second-post/index.html
+```
+
+Knowing that hugo is using the slug to generate the file name, the simplest solution is to change the slug. Let's do it the hard way and change the permalink in the configuration file.
+
+ $ vi hugo.toml
+ [permalinks]
+ page = "/:title/"
+ about = "/:filename/"
+
+Generate the web site and verify that this didn't work. Hugo lets "slug" or "URL" override the permalinks setting in the configuration file. Go ahead and comment out the slug in content/about.md, then generate the web site to get it to be created in the right place.
+
+## Sharing Templates
+
+If you've been following along, you probably noticed that posts have titles in the browser and the home page doesn't. That's because we didn't put the title in the home page's template (layouts/index.html). That's an easy thing to do, but let's look at a different option.
+
+We can put the common bits into a shared template that's stored in the themes/zafta/layouts/partials/ directory.
+
+### Create the Header and Footer Partials
+
+In Hugo, a partial is a sugar-coated template. Normally a template reference has a path specified. Partials are different. Hugo searches for them along a TODO defined search path. This makes it easier for end-users to override the theme's presentation.
+
+```html
+ $ vi themes/zafta/layouts/partials/header.html
+
+
+
+ posts
+{{ range first 10 .Data.Pages }}
+ {{ if eq .Type "post"}}
+ {{ .Title }}
+ {{ end }}
+{{ end }}
+
+pages
+{{ range .Data.Pages }}
+ {{ if or (eq .Type "page") (eq .Type "about") }}
+ {{ .Type }} - {{ .Title }} - {{ .RelPermalink }}
+ {{ end }}
+{{ end }}
+{{ partial "footer.html" . }}
+```
+
+Generate the web site and verify the results. The title on the home page is now "your title here", which comes from the "title" variable in the hugo.toml file.
+
+### Update the Default Single Template to Use the Partials
+
+ $ vi themes/zafta/layouts/_default/single.html
+ {{ partial "header.html" . }}
+
+ {{ .Title }}
+ {{ .Content }}
+
+ {{ partial "footer.html" . }}
+ :wq
+
+Generate the web site and verify the results. The title on the posts and the about page should both reflect the value in the markdown file.
+
+## Add “Date Published” to Posts
+
+It's common to have posts display the date that they were written or published, so let's add that. The front matter of our posts has a variable named "date." It's usually the date the content was created, but let's pretend that's the value we want to display.
+
+### Add “Date Published” to the Template
+
+We'll start by updating the template used to render the posts. The template code will look like:
+
+`{{ .Date.Format "Mon, Jan 2, 2006" }}`
+
+Posts use the default single template, so we'll change that file.
+
+```html
+
+{{ partial "header.html" . }}
+
+ {{ .Title }}
+ {{ .Date.Format "Mon, Jan 2, 2006" }}
+ {{ .Content }}
+
+{{ partial "footer.html" . }}
+```
+
+Generate the web site and verify the results. The posts now have the date displayed in them. There's a problem, though. The "about" page also has the date displayed.
+
+As usual, there are a couple of ways to make the date display only on posts. We could do an "if" statement like we did on the home page. Another way would be to create a separate template for posts.
+
+The "if" solution works for sites that have just a couple of content types. It aligns with the principle of "code for today," too.
+
+Let's assume, though, that we've made our site so complex that we feel we have to create a new template type. In Hugo-speak, we're going to create a section template.
+
+Let's restore the default single template before we forget.
+
+```html
+
+ $ vi themes/zafta/layouts/_default/single.html
+ {{ partial "header.html" . }}
+
+ {{ .Title }}
+ {{ .Content }}
+
+ {{ partial "footer.html" . }}
+```
+
+Now we'll update the post's version of the single template. If you remember Hugo's rules, the template engine will use this version over the default.
+
+```html
+
+{{ partial "header.html" . }}
+
+ {{ .Title }}
+ {{ .Date.Format "Mon, Jan 2, 2006" }}
+ {{ .Content }}
+
+{{ partial "footer.html" . }}
+```
+
+Note that we removed the date logic from the default template and put it in the post template. Generate the web site and verify the results. Posts have dates and the about page doesn't.
+
+### Don't Repeat Yourself
+
+DRY is a good design goal and Hugo does a great job supporting it. Part of the art of a good template is knowing when to add a new template and when to update an existing one. While you're figuring that out, accept that you'll be doing some refactoring. Hugo makes that easy and fast, so it's okay to delay splitting up a template.
diff --git a/exampleSite/content/blog/emoji-support.md b/exampleSite/content/blog/emoji-support.md
new file mode 100644
index 0000000..57c88c1
--- /dev/null
+++ b/exampleSite/content/blog/emoji-support.md
@@ -0,0 +1,99 @@
++++
+author = "Hugo Authors"
+title = "Emoji Support"
+date = "2019-03-05"
+description = "Guide to emoji usage in Hugo"
+tags = ["emoji"]
+image = "/images/artist.jpg"
++++
+
+Emoji can be enabled in a Hugo project in a number of ways.
+
+
+The `[emojify](https://gohugo.io/functions/emojify/)` function can be called directly in templates or [Inline Shortcodes](https://gohugo.io/templates/shortcode-templates/#inline-shortcodes).
+
+{{< youtube "https://www.youtube.com/watch?v=eW7Twd85m2g" >}}
+
+To enable emoji globally, set `enableEmoji` to `true` in your site’s [configuration](https://gohugo.io/getting-started/configuration/) and then you can type emoji shorthand codes directly in content files; e.g.
+
+:see_no_evil:
🙉 :hear_no_evil:
🙊 :speak_no_evil:
+
+The [Emoji cheat sheet](http://www.emoji-cheat-sheet.com/) is a useful reference for emoji shorthand codes.
+
+***
+
+**N.B.** The above steps enable Unicode Standard emoji characters and sequences in Hugo, however the rendering of these glyphs depends on the browser and the platform. To style the emoji you can either use a third party emoji font or a font stack; e.g.
+
+### Inline CSS
+
+```html
+
+```
+
+### Javascript
+
+```javascript
+function createEl(element) {
+ return document.createElement(element);
+}
+
+function elem(selector, parent = document){
+ let elem = parent.querySelector(selector);
+ return elem != false ? elem : false;
+}
+
+let navBar = elem(`.${bar}`);
+let nav = elem('.nav-body');
+let open = 'nav-open';
+let exit = 'nav-exit';
+let drop = 'nav-drop';
+let pop = 'nav-pop';
+let navDrop = elem(`.${drop}`);
+let hidden = 'hidden';
+
+```
+
+### Swift
+
+```swift
+class Person {
+ var residence: Residence?
+}
+
+class Residence {
+ var rooms = [Room]()
+ var numberOfRooms: Int {
+ return rooms.count
+ }
+
+
+ subscript(i: Int) -> Room {
+ get {
+ return rooms[i]
+ }
+ set {
+ rooms[i] = newValue
+ }
+ }
+
+ func printNumberOfRooms() {
+ print("The number of rooms is \(numberOfRooms)")
+ }
+
+ var address: Address?
+
+}
+```
diff --git a/exampleSite/content/blog/goisforlovers.md b/exampleSite/content/blog/goisforlovers.md
new file mode 100644
index 0000000..ee3c6e0
--- /dev/null
+++ b/exampleSite/content/blog/goisforlovers.md
@@ -0,0 +1,339 @@
++++
+title = "(Hu)go Template Primer"
+description = ""
+tags = [
+"go",
+"golang",
+"templates",
+"themes",
+"development",
+]
+date = "2014-04-02"
+categories = [
+"Development",
+"golang",
+]
+image = "/images/artist.jpg"
++++
+
+Hugo uses the excellent [Go](https://golang.org/) [html/template](https://golang.org/pkg/html/template/) library for
+its template engine. It is an extremely lightweight engine that provides a very
+small amount of logic. In our experience that it is just the right amount of
+logic to be able to create a good static website. If you have used other
+template systems from different languages or frameworks you will find a lot of
+similarities in Go templates.
+
+This document is a brief primer on using Go templates. The [Go docs](https://golang.org/pkg/html/template/)
+provide more details.
+
+## Introduction to Go Templates
+
+Go templates provide an extremely simple template language. It adheres to the
+belief that only the most basic of logic belongs in the template or view layer.
+One consequence of this simplicity is that Go templates parse very quickly.
+
+A unique characteristic of Go templates is they are content aware. Variables and
+content will be sanitized depending on the context of where they are used. More
+details can be found in the [Go docs](https://golang.org/pkg/html/template/).
+
+## Basic Syntax
+
+Golang templates are HTML files with the addition of variables and
+functions.
+
+**Go variables and functions are accessible within {{ }}**
+
+Accessing a predefined variable "foo":
+
+ {{ foo }}
+
+**Parameters are separated using spaces**
+
+Calling the add function with input of 1, 2:
+
+ {{ add 1 2 }}
+
+**Methods and fields are accessed via dot notation**
+
+Accessing the Page Parameter "bar"
+
+ {{ .Params.bar }}
+
+**Parentheses can be used to group items together**
+
+ {{ if or (isset .Params "alt") (isset .Params "caption") }} Caption {{ end }}
+
+## Variables
+
+Each Go template has a struct (object) made available to it. In hugo each
+template is passed either a page or a node struct depending on which type of
+page you are rendering. More details are available on the
+[variables](/layout/variables) page.
+
+A variable is accessed by referencing the variable name.
+
+ {{ index .Params "title" }}
{{ end }}
+
+**Example 2: If -> Else**
+
+ {{ if isset .Params "alt" }}
+ {{ index .Params "alt" }}
+ {{else}}
+ {{ index .Params "caption" }}
+ {{ end }}
+
+**Example 3: And & Or**
+
+ {{ if and (or (isset .Params "title") (isset .Params "caption")) (isset .Params "attr")}}
+
+**Example 4: With**
+
+An alternative way of writing "if" and then referencing the same value
+is to use "with" instead. With rebinds the context `.` within its scope,
+and skips the block if the variable is absent.
+
+The first example above could be simplified as:
+
+ {{ with .Params.title }}{{ . }}
{{ end }}
+
+**Example 5: If -> Else If**
+
+ {{ if isset .Params "alt" }}
+ {{ index .Params "alt" }}
+ {{ else if isset .Params "caption" }}
+ {{ index .Params "caption" }}
+ {{ end }}
+
+## Pipes
+
+One of the most powerful components of Go templates is the ability to
+stack actions one after another. This is done by using pipes. Borrowed
+from unix pipes, the concept is simple, each pipeline's output becomes the
+input of the following pipe.
+
+Because of the very simple syntax of Go templates, the pipe is essential
+to being able to chain together function calls. One limitation of the
+pipes is that they only can work with a single value and that value
+becomes the last parameter of the next pipeline.
+
+A few simple examples should help convey how to use the pipe.
+
+**Example 1 :**
+
+ {{ if eq 1 1 }} Same {{ end }}
+
+is the same as
+
+ {{ eq 1 1 | if }} Same {{ end }}
+
+It does look odd to place the if at the end, but it does provide a good
+illustration of how to use the pipes.
+
+**Example 2 :**
+
+ {{ index .Params "disqus_url" | html }}
+
+Access the page parameter called "disqus_url" and escape the HTML.
+
+**Example 3 :**
+
+ {{ if or (or (isset .Params "title") (isset .Params "caption")) (isset .Params "attr")}}
+ Stuff Here
+ {{ end }}
+
+Could be rewritten as
+
+ {{ isset .Params "caption" | or isset .Params "title" | or isset .Params "attr" | if }}
+ Stuff Here
+ {{ end }}
+
+## Context (aka. the dot)
+
+The most easily overlooked concept to understand about Go templates is that {{ . }}
+always refers to the current context. In the top level of your template this
+will be the data set made available to it. Inside of a iteration it will have
+the value of the current item. When inside of a loop the context has changed. .
+will no longer refer to the data available to the entire page. If you need to
+access this from within the loop you will likely want to set it to a variable
+instead of depending on the context.
+
+**Example:**
+
+ {{ $title := .Site.Title }}
+ {{ range .Params.tags }}
+
` tag.
+
+Alternatively, if you want to use the `hugo.toml` to track your custom styles or scripts, declare them as slices under `[params]` like so:
+
+```toml
+...
+[params]
+customCSS = [styleURL1, styleURL2 ...]
+customJS = [scriptURL1, scriptURL2 ... ]
+...
+```
+
+### I want to add custom SASS or JS
+
+Add custom SASS and JS via [this custom SASS file](https://github.com/onweru/compose/blob/master/assets/sass/_custom.sass) and [this custom JavaScript file](https://github.com/onweru/compose/hugo-compose/blob/master/assets/js/custom.js).
+
+### How to change site favicon
+
+Your favicons should be stored inside `static/favicons` directory.
+
+Here are some of the favicon files that you should have in that folder:
+
+```
+.
+├── android-chrome-192x192.png
+├── android-chrome-512x512.png
+├── apple-touch-icon.png
+├── favicon-16x16.png
+├── favicon-32x32.png
+├── favicon.ico
+└── site.webmanifest
+```
+
+We recommend you consider using this [tool](https://realfavicongenerator.net/) while generating your favicons.
\ No newline at end of file
diff --git a/exampleSite/content/docs/compose/github-actions.md b/exampleSite/content/docs/compose/github-actions.md
new file mode 100644
index 0000000..76869f7
--- /dev/null
+++ b/exampleSite/content/docs/compose/github-actions.md
@@ -0,0 +1,28 @@
++++
+description = "Use github actions with compose theme"
+title = "Leverage Github actions"
+weight = 11
++++
+
+This theme ships with 2 github actions inside the exampleSite folder:
+
+1. AWS CI
+2. Algolia CI
+
+## AWS CI
+
+ This helps you to autodeploy your hugo website from github to an AWS s3 bucket. Set the secrets in the action accordingly and voila.
+
+## Algolia CI
+
+ This action will automatically update your algolia search index. No extra npm manual setup will be needed.
+
+These actions are customizable to fire off under your specified set of circumstances.
+
+By default, the actions will be off, so be sure to turn them on, and set the github actions secrets appropriately.
+
+```shell
+name: Update Algolia Search Index
+
+off: # change to `on:` to turn on
+```
\ No newline at end of file
diff --git a/exampleSite/content/docs/compose/graphs-charts-tables.md b/exampleSite/content/docs/compose/graphs-charts-tables.md
new file mode 100644
index 0000000..65bc158
--- /dev/null
+++ b/exampleSite/content/docs/compose/graphs-charts-tables.md
@@ -0,0 +1,103 @@
++++
+title = "Graphs, charts & dynamic tables"
+weight = 9
+[dataset1]
+ fileLink = "content/projects.csv" # path to where csv is stored
+ colors = ["#ef7f1a", "#627c62", "#11819b", "#4e1154"] # chart colors
+ columnTitles = ["Section", "Status", "Author"] # optional if not table will be displayed from dataset
+ baseChartOn = 3 # number of column the chart(s) and graph should be drawn from # can be overridden directly via shortcode parameter # it's therefore optional
+ title = "Projects"
+
+[dataset2]
+ fileLink = "content/themes.csv" # path to where csv is stored
+ colors = ["#ef7f1a", "#627c62", "#11819b", "#4e1154"] # chart colors
+ columnTitles = ["Theme", "Latest Version", "Repo Owner"] # Optional if no table will be displayed from dataset
+ baseChartOn = 2 # number of column the chart(s) and graph should be drawn from # can be overridden directly via shortcode parameter # it's therefore optional
+ title = "Hugo Themes"
++++
+
+Using [chart js library](https://www.chartjs.org/) you can display data you have stored in a `csv` file as a pie chart, bar graph or doughnut chart.
+
+At this point if you want to display data from a json or yaml file, you would need to [convert it into csv](http://convertcsv.com/json-to-csv.htm) first. Else the template will error out.
+
+Once you have a csv file, you display the charts as follows:
+
+#### Show a pie, doughnut & bar chart at once
+
+Firstly define the data you want to display from the front matter:
+
+```markdown
+# from front matter
+...
+[dataset1] # this key will in the chart shortcode
+ fileLink = "content/projects.csv" # path to where csv is stored
+ colors = ["#627c62", "#11819b", "#ef7f1a", "#4e1154"] # chart colors
+ columnTitles = ["Section", "Status", "Author"]
+ charts = ["bar", "doughnut", "pie", "table"]
+ baseChartOn = 3 # number of column the chart(s) and graph should be drawn from
+ piechart = true
+ doughnutchart = true
+ bargraph = true
+ title = "Projects"
+ table = true # show table listing the chart data
+
+// from page content
+...
+{{* grid " mt-2" */>}}
+ {{* chart "dataset1" */>}}
+{{* /grid */>}}
+...
+```
+
+{{< grid "3 mt-2 mb-2" >}}
+ {{< chart "dataset1" "pie,doughnut,bar" >}}
+{{< /grid >}}
+
+#### __Show Table at once__
+
+{{< block >}}
+ {{< chart "dataset1" "table" >}}
+{{< /block >}}
+
+Firstly define the data you want to display from the front matter:
+
+```toml
+# from page front matter
+[dataset2]
+ fileLink = "content/themes.csv" # path to where csv is stored # this key will in the chart shortcode
+ colors = ["#627c62", "#11819b", "#ef7f1a", "#4e1154"] # chart colors
+ columnTitles = ["Theme", "Latest Version", "Owner"]
+ title = "Hugo Themes"
+ baseChartOn = 2 # number of column the chart(s) and graph should be drawn from
+ piechart = false
+ doughnutchart = true
+ bargraph = true
+ table = false # show table listing the chart data
+```
+
+#### Show only a pie and a doughnut chart
+
+```markdown
+// from page content
+...
+{{* grid " mt-2" */>}}
+ {{* chart "dataset2" */>}}
+{{* /grid */>}}
+...
+```
+
+{{< grid "3 mt-2 mb-2" >}}
+ {{< chart "dataset2" "pie,doughnut" "1" >}}
+{{< /grid >}}
+
+#### Show table with filter
+
+{{< grid "3" >}}
+ {{< chart "dataset2" "table" >}}
+{{< /grid >}}
+
+#### Show table only
+
+{{< grid "3" >}}
+ {{< chart "dataset2" "table,noFilter" >}}
+{{< /grid >}}
diff --git a/exampleSite/content/docs/compose/install-theme.md b/exampleSite/content/docs/compose/install-theme.md
new file mode 100755
index 0000000..fa1b31c
--- /dev/null
+++ b/exampleSite/content/docs/compose/install-theme.md
@@ -0,0 +1,77 @@
++++
+title = "Install theme"
+weight = 2
+description = """
+This page tells you how to get started with the Compose theme.
+"""
++++
+
+### Prerequisites
+
+First ensure that you have hugo installed.
+
+You need a [recent **extended** version](https://github.com/gohugoio/hugo/releases) (we recommend version 0.61 or later) of [Hugo](https://gohugo.io/) to do local builds and previews of sites (like this one) that uses this theme.
+
+If you install from the release page, make sure to get the `extended` Hugo version, which supports [sass](https://sass-lang.com/documentation/file.SCSS_FOR_SASS_USERS.html); you may need to scroll down the list of releases to see it.
+
+For comprehensive Hugo documentation, see [gohugo.io](https://gohugo.io/).
+
+## Run your site with compose theme
+
+You could go with the options right below.
+
+### Option 1 (my favorite)
+
+This option enables you to load compose theme as a hugo module. First things first, ensure you have `go` binary [installed on your machine](https://golang.org/doc/install).
+
+```shell
+$ git clone https://github.com/onweru/compose/
+cd compose/exampleSite/
+hugo server
+```
+
+To pull in theme updates, run `hugo mod get -u ./...` from the theme folder. If unsure, [learn how to update hugo modules](https://gohugo.io/hugo-modules/use-modules/#update-modules)
+
+{{< tip "warning" >}}
+The exampleSite uses the theme as a hugo module by default.
+
+If you choose __Option 2__ or __Option 3__ below, ensure you edit [these lines in the hugo.toml file](https://github.com/onweru/compose/blob/b3e30e0816621223224897edc45eeeabd0d9cd16/exampleSite/hugo.toml#L4-L7) as advised on the comments. Else, you will not be able to pull theme updates.
+{{< /tip >}}
+
+### Option 2 (recommended)
+
+Generate a new Hugo site and add this theme as a Git submodule inside your themes folder:
+
+```bash
+hugo new site yourSiteName
+cd yourSiteName
+git init
+git submodule add https://github.com/onweru/compose/ themes/compose
+cp -a themes/compose/exampleSite/* .
+git commit -m "setup compose theme"
+```
+
+Then run
+
+```bash
+hugo server
+```
+
+Hurray!
+
+### Option 3 (Great for testing quickly)
+
+You can run your site directly from the `exampleSite`. To do so, use the following commands:
+
+```bash
+git clone https://github.com/onweru/compose/
+cd compose/exampleSite/
+hugo server --themesDir ../..
+```
+
+{{< tip >}}
+Although, option 3 is great for quick testing, it is somewhat problematic when you want to update your theme. You would need to be careful not to overwrite your changes.
+{{< /tip >}}
+
+Once set, jump over to the [hugo.toml](https://github.com/onweru/compose/blob/afdf1cd76408aeac11547a6abd51bdc5138a295f/exampleSite/hugo.toml#L4-L7) file and start configuring your site.
+
diff --git a/exampleSite/content/docs/compose/mermaid.md b/exampleSite/content/docs/compose/mermaid.md
new file mode 100644
index 0000000..c54c9c7
--- /dev/null
+++ b/exampleSite/content/docs/compose/mermaid.md
@@ -0,0 +1,668 @@
++++
+title = "Mermaid"
+weight = 8
+description = "Generate diagrams, flowcharts, and piecharts from text in a similar manner as markdown."
++++
+
+[Mermaid](https://mermaidjs.github.io/) is library that helps you generate diagrams, flowcharts, and piecharts from text in a similar manner as markdown.
+
+With compose theme, you can use mermaid using a custom shortcode as follows:
+
+### Sequence Diagrams
+
+**Snippet**
+
+```tpl
+{{* mermaid */>}}
+sequenceDiagram
+ participant Alice
+ participant Bob
+ Alice->>John: Hello John, how are you?
+ loop Healthcheck
+ John->>John: Fight against hypochondria
+ end
+ Note right of John: Rational thoughts Bummer! This page doesn't exist. back home.
prevail...
+ John-->>Alice: Great!
+ John->>Bob: How about you?
+ Bob-->>John: Jolly good!
+{{* /mermaid */>}}
+```
+
+**Result**
+
+{{< mermaid >}}
+sequenceDiagram
+ participant Alice
+ participant Bob
+ Alice->>John: Hello John, how are you?
+ loop Healthcheck
+ John->>John: Fight against hypochondria
+ end
+ Note right of John: Rational thoughts
prevail...
+ John-->>Alice: Great!
+ John->>Bob: How about you?
+ Bob-->>John: Jolly good!
+{{< /mermaid >}}
+
+### Flow Charts
+
+**Snippet**
+
+```tpl
+{{* mermaid */>}}
+flowchart TB
+ c1-->a2
+ subgraph one
+ a1-->a2
+ end
+ subgraph two
+ b1-->b2
+ end
+ subgraph three
+ c1-->c2
+ end
+ one --> two
+ three --> two
+ two --> c2
+{{* /mermaid */>}}
+```
+**Result**
+
+{{< mermaid >}}
+flowchart TB
+ c1-->a2
+ subgraph one
+ a1-->a2
+ end
+ subgraph two
+ b1-->b2
+ end
+ subgraph three
+ c1-->c2
+ end
+ one --> two
+ three --> two
+ two --> c2
+{{< /mermaid >}}
+
+### Graphs
+
+**Snippet**
+
+```tpl
+{{* mermaid */>}}
+graph TB
+ sq[Square shape] --> ci((Circle shape))
+
+ subgraph A
+ od>Odd shape]-- Two line
edge comment --> ro
+ di{Diamond with
line break} -.-> ro(Rounded
square
shape)
+ di==>ro2(Rounded square shape)
+ end
+
+ %% Notice that no text in shape are added here instead that is appended further down
+ e --> od3>Really long text with linebreak
in an Odd shape]
+
+ %% Comments after double percent signs
+ e((Inner / circle
and some odd
special characters)) --> f(,.?!+-*ز)
+
+ cyr[Cyrillic]-->cyr2((Circle shape Начало));
+
+ classDef green fill:#9f6,stroke:#333,stroke-width:2px;
+ classDef orange fill:#f96,stroke:#333,stroke-width:4px;
+ class sq,e green
+ class di orange
+{{* /mermaid */>}}
+```
+
+**Result**
+
+{{< mermaid >}}
+graph TB
+ sq[Square shape] --> ci((Circle shape))
+
+ subgraph A
+ od>Odd shape]-- Two line
edge comment --> ro
+ di{Diamond with
line break} -.-> ro(Rounded
square
shape)
+ di==>ro2(Rounded square shape)
+ end
+
+ %% Notice that no text in shape are added here instead that is appended further down
+ e --> od3>Really long text with linebreak
in an Odd shape]
+
+ %% Comments after double percent signs
+ e((Inner / circle
and some odd
special characters)) --> f(,.?!+-*ز)
+
+ cyr[Cyrillic]-->cyr2((Circle shape Начало));
+
+ classDef green fill:#9f6,stroke:#333,stroke-width:2px;
+ classDef orange fill:#f96,stroke:#333,stroke-width:4px;
+ class sq,e green
+ class di orange
+{{< /mermaid >}}
+
+**Snippet**
+
+```tpl
+{{* mermaid */>}}
+graph LR
+ A[Hard edge] -->|Link text| B(Round edge)
+ B --> C{Decision}
+ C -->|One| D[Result one]
+ C -->|Two| E[Result two]
+{{* /mermaid */>}}
+```
+
+**Result**
+
+{{< mermaid >}}
+graph LR
+ A[Hard edge] -->|Link text| B(Round edge)
+ B --> C{Decision}
+ C -->|One| D[Result one]
+ C -->|Two| E[Result two]
+{{< /mermaid >}}
+
+### Class Diagram
+
+{{< mermaid >}}
+classDiagram
+ Animal <|-- Duck
+ Animal <|-- Fish
+ Animal <|-- Zebra
+ Animal : +int age
+ Animal : +String gender
+ Animal: +isMammal()
+ Animal: +mate()
+ class Duck{
+ +String beakColor
+ +swim()
+ +quack()
+ }
+ class Fish{
+ -int sizeInFeet
+ -canEat()
+ }
+ class Zebra{
+ +bool is_wild
+ +run()
+ }
+{{< /mermaid >}}
+
+
+### State Diagram
+
+{{< mermaid >}}
+stateDiagram-v2
+ [*] --> Active
+
+ state Active {
+ [*] --> NumLockOff
+ NumLockOff --> NumLockOn : EvNumLockPressed
+ NumLockOn --> NumLockOff : EvNumLockPressed
+ --
+ [*] --> CapsLockOff
+ CapsLockOff --> CapsLockOn : EvCapsLockPressed
+ CapsLockOn --> CapsLockOff : EvCapsLockPressed
+ --
+ [*] --> ScrollLockOff
+ ScrollLockOff --> ScrollLockOn : EvScrollLockPressed
+ ScrollLockOn --> ScrollLockOff : EvScrollLockPressed
+ }
+{{< /mermaid >}}
+
+{{< mermaid >}}
+stateDiagram-v2
+ State1: The state with a note
+ note right of State1
+ Important information! You can write
+ notes.
+ end note
+ State1 --> State2
+ note left of State2 : This is the note to the left.
+{{< /mermaid >}}
+
+### Relationship Diagrams
+
+**Snippet**
+
+```tpl
+{{* mermaid */>}}
+erDiagram
+ CUSTOMER ||--o{ ORDER : places
+ ORDER ||--|{ LINE-ITEM : contains
+ CUSTOMER }|..|{ DELIVERY-ADDRESS : uses
+{{* /mermaid */>}}
+```
+
+**Result**
+
+{{< mermaid >}}
+erDiagram
+ CUSTOMER ||--o{ ORDER : places
+ ORDER ||--|{ LINE-ITEM : contains
+ CUSTOMER }|..|{ DELIVERY-ADDRESS : uses
+{{< /mermaid >}}
+
+### User Journey
+
+**Snippet**
+
+```tpl
+{{* mermaid */>}}
+journey
+ title My working day
+ section Go to work
+ Make tea: 5: Me
+ Go upstairs: 3: Me
+ Do work: 1: Me, Cat
+ section Go home
+ Go downstairs: 5: Me
+ Sit down: 5: Me
+{{* /mermaid */>}}
+
+```
+
+**Result**
+
+{{< mermaid >}}
+journey
+ title My working day
+ section Go to work
+ Make tea: 5: Me
+ Go upstairs: 3: Me
+ Do work: 1: Me, Cat
+ section Go home
+ Go downstairs: 5: Me
+ Sit down: 5: Me
+{{< /mermaid >}}
+
+### Gantt
+
+**Snippet**
+
+```tpl
+{{* mermaid */>}}
+gantt
+ dateFormat YYYY-MM-DD
+ title Adding GANTT diagram functionality to mermaid
+ excludes weekends
+ %% (`excludes` accepts specific dates in YYYY-MM-DD format, days of the week ("sunday") or "weekends", but not the word "weekdays".)
+
+ section A section
+ Completed task :done, des1, 2014-01-06,2014-01-08
+ Active task :active, des2, 2014-01-09, 3d
+ Future task : des3, after des2, 5d
+ Future task2 : des4, after des3, 5d
+
+ section Critical tasks
+ Completed task in the critical line :crit, done, 2014-01-06,24h
+ Implement parser and jison :crit, done, after des1, 2d
+ Create tests for parser :crit, active, 3d
+ Future task in critical line :crit, 5d
+ Create tests for renderer :2d
+ Add to mermaid :1d
+
+ section Documentation
+ Describe gantt syntax :active, a1, after des1, 3d
+ Add gantt diagram to demo page :after a1 , 20h
+ Add another diagram to demo page :doc1, after a1 , 48h
+
+ section Last section
+ Describe gantt syntax :after doc1, 3d
+ Add gantt diagram to demo page :20h
+ Add another diagram to demo page :48h
+{{* /mermaid */>}}
+```
+
+**Result**
+
+{{< mermaid >}}
+gantt
+ dateFormat YYYY-MM-DD
+ title Adding GANTT diagram functionality to mermaid
+ excludes weekends
+ %% (`excludes` accepts specific dates in YYYY-MM-DD format, days of the week ("sunday") or "weekends", but not the word "weekdays".)
+
+ section A section
+ Completed task :done, des1, 2014-01-06,2014-01-08
+ Active task :active, des2, 2014-01-09, 3d
+ Future task : des3, after des2, 5d
+ Future task2 : des4, after des3, 5d
+
+ section Critical tasks
+ Completed task in the critical line :crit, done, 2014-01-06,24h
+ Implement parser and jison :crit, done, after des1, 2d
+ Create tests for parser :crit, active, 3d
+ Future task in critical line :crit, 5d
+ Create tests for renderer :2d
+ Add to mermaid :1d
+
+ section Documentation
+ Describe gantt syntax :active, a1, after des1, 3d
+ Add gantt diagram to demo page :after a1 , 20h
+ Add another diagram to demo page :doc1, after a1 , 48h
+
+ section Last section
+ Describe gantt syntax :after doc1, 3d
+ Add gantt diagram to demo page :20h
+ Add another diagram to demo page :48h
+{{< /mermaid >}}
+
+### Pie Chart
+
+```tpl
+{{* mermaid */>}}
+pie
+ title Key elements in Product X
+ "Calcium" : 42.96
+ "Potassium" : 50.05
+ "Magnesium" : 10.01
+ "Iron" : 5
+{{* /mermaid */>}}
+
+```
+
+**Result**
+
+{{< mermaid >}}
+pie
+ title Key elements in Product X
+ "Calcium" : 42.96
+ "Potassium" : 50.05
+ "Magnesium" : 10.01
+ "Iron" : 5
+{{< /mermaid >}}
+
+
+### Mindmap
+
+__Snippet__
+
+```tpl
+{{* mermaid */>}}
+mindmap
+ root((mindmap))
+ Origins
+ Long history
+ ::icon(fa fa-book)
+ Popularisation
+ British popular psychology author Tony Buzan
+ Research
+ On effectiveness
and features
+ On Automatic creation
+ Uses
+ Creative techniques
+ Strategic planning
+ Argument mapping
+ Tools
+ Pen and paper
+ Mermaid
+
+{{* /mermaid */>}}
+```
+
+__Result__
+
+{{< mermaid >}}
+mindmap
+ root((mindmap))
+ Origins
+ Long history
+ ::icon(fa fa-book)
+ Popularisation
+ British popular psychology author Tony Buzan
+ Research
+ On effectiveness
and features
+ On Automatic creation
+ Uses
+ Creative techniques
+ Strategic planning
+ Argument mapping
+ Tools
+ Pen and paper
+ Mermaid
+
+{{< /mermaid >}}
+
+### Timeline
+
+__Snippet I__
+
+```tpl
+{{* mermaid */>}}
+timeline
+ title History of Social Media Platform
+ 2002 : LinkedIn
+ 2004 : Facebook : Google
+ 2005 : Youtube
+ 2006 : Twitter
+{{* /mermaid */>}}
+```
+
+__Result I__
+
+{{< mermaid >}}
+timeline
+ title History of Social Media Platform
+ 2002 : LinkedIn
+ 2004 : Facebook : Google
+ 2005 : Youtube
+ 2006 : Twitter
+{{< /mermaid >}}
+
+__Snippet II__
+
+```tpl
+{{* mermaid */>}}
+timeline
+ title MermaidChart 2023 Timeline
+ section 2023 Q1
Release Personal Tier
+ Buttet 1 : sub-point 1a : sub-point 1b
+ : sub-point 1c
+ Bullet 2 : sub-point 2a : sub-point 2b
+ section 2023 Q2
Release XYZ Tier
+ Buttet 3 : sub-point
3a : sub-point 3b
+ : sub-point 3c
+ Bullet 4 : sub-point 4a : sub-point 4b
+
+{{* /mermaid */>}}
+```
+
+__Result II__
+{{< mermaid >}}
+timeline
+ title MermaidChart 2023 Timeline
+ section 2023 Q1
Release Personal Tier
+ Buttet 1 : sub-point 1a : sub-point 1b
+ : sub-point 1c
+ Bullet 2 : sub-point 2a : sub-point 2b
+ section 2023 Q2
Release XYZ Tier
+ Buttet 3 : sub-point
3a : sub-point 3b
+ : sub-point 3c
+ Bullet 4 : sub-point 4a : sub-point 4b
+
+{{< /mermaid >}}
+
+### Gitgraph
+
+__Snippet__
+
+```tpl
+{{* mermaid */>}}
+---
+title: Example Git diagram
+---
+gitGraph
+ commit
+ commit
+ branch develop
+ checkout develop
+ commit
+ commit
+ checkout main
+ merge develop
+ commit
+ commit
+
+{{* /mermaid */>}}
+```
+
+__Result__
+
+{{< mermaid >}}
+---
+title: Example Git diagram
+---
+gitGraph
+ commit
+ commit
+ branch develop
+ checkout develop
+ commit
+ commit
+ checkout main
+ merge develop
+ commit
+ commit
+
+{{< /mermaid >}}
+
+### Requirement Diagram
+
+__Snippet__
+
+```tpl
+{{* mermaid */>}}
+ requirementDiagram
+
+ requirement test_req {
+ id: 1
+ text: the test text.
+ risk: high
+ verifymethod: test
+ }
+
+ element test_entity {
+ type: simulation
+ }
+
+ test_entity - satisfies -> test_req
+{{* /mermaid */>}}
+```
+
+__Result__
+
+{{< mermaid >}}
+ requirementDiagram
+
+ requirement test_req {
+ id: 1
+ text: the test text.
+ risk: high
+ verifymethod: test
+ }
+
+ element test_entity {
+ type: simulation
+ }
+
+ test_entity - satisfies -> test_req
+{{< /mermaid >}}
+
+
+### C4C Diagram
+
+```tpl
+{{* mermaid */>}}
+ C4Context
+ title System Context diagram for Internet Banking System
+ Enterprise_Boundary(b0, "BankBoundary0") {
+ Person(customerA, "Banking Customer A", "A customer of the bank, with personal bank accounts.")
+ Person(customerB, "Banking Customer B")
+ Person_Ext(customerC, "Banking Customer C", "desc")
+
+ Person(customerD, "Banking Customer D", "A customer of the bank,
with personal bank accounts.")
+
+ System(SystemAA, "Internet Banking System", "Allows customers to view information about their bank accounts, and make payments.")
+
+ Enterprise_Boundary(b1, "BankBoundary") {
+
+ SystemDb_Ext(SystemE, "Mainframe Banking System", "Stores all of the core banking information about customers, accounts, transactions, etc.")
+
+ System_Boundary(b2, "BankBoundary2") {
+ System(SystemA, "Banking System A")
+ System(SystemB, "Banking System B", "A system of the bank, with personal bank accounts. next line.")
+ }
+
+ System_Ext(SystemC, "E-mail system", "The internal Microsoft Exchange e-mail system.")
+ SystemDb(SystemD, "Banking System D Database", "A system of the bank, with personal bank accounts.")
+
+ Boundary(b3, "BankBoundary3", "boundary") {
+ SystemQueue(SystemF, "Banking System F Queue", "A system of the bank.")
+ SystemQueue_Ext(SystemG, "Banking System G Queue", "A system of the bank, with personal bank accounts.")
+ }
+ }
+ }
+
+ BiRel(customerA, SystemAA, "Uses")
+ BiRel(SystemAA, SystemE, "Uses")
+ Rel(SystemAA, SystemC, "Sends e-mails", "SMTP")
+ Rel(SystemC, customerA, "Sends e-mails to")
+
+ UpdateElementStyle(customerA, $fontColor="red", $bgColor="grey", $borderColor="red")
+ UpdateRelStyle(customerA, SystemAA, $textColor="blue", $lineColor="blue", $offsetX="5")
+ UpdateRelStyle(SystemAA, SystemE, $textColor="blue", $lineColor="blue", $offsetY="-10")
+ UpdateRelStyle(SystemAA, SystemC, $textColor="blue", $lineColor="blue", $offsetY="-40", $offsetX="-50")
+ UpdateRelStyle(SystemC, customerA, $textColor="red", $lineColor="red", $offsetX="-50", $offsetY="20")
+
+ UpdateLayoutConfig($c4ShapeInRow="3", $c4BoundaryInRow="1")
+{{* /mermaid */>}}
+```
+
+__Result__
+
+{{< mermaid >}}
+ C4Context
+ title System Context diagram for Internet Banking System
+ Enterprise_Boundary(b0, "BankBoundary0") {
+ Person(customerA, "Banking Customer A", "A customer of the bank, with personal bank accounts.")
+ Person(customerB, "Banking Customer B")
+ Person_Ext(customerC, "Banking Customer C", "desc")
+
+ Person(customerD, "Banking Customer D", "A customer of the bank,
with personal bank accounts.")
+
+ System(SystemAA, "Internet Banking System", "Allows customers to view information about their bank accounts, and make payments.")
+
+ Enterprise_Boundary(b1, "BankBoundary") {
+
+ SystemDb_Ext(SystemE, "Mainframe Banking System", "Stores all of the core banking information about customers, accounts, transactions, etc.")
+
+ System_Boundary(b2, "BankBoundary2") {
+ System(SystemA, "Banking System A")
+ System(SystemB, "Banking System B", "A system of the bank, with personal bank accounts. next line.")
+ }
+
+ System_Ext(SystemC, "E-mail system", "The internal Microsoft Exchange e-mail system.")
+ SystemDb(SystemD, "Banking System D Database", "A system of the bank, with personal bank accounts.")
+
+ Boundary(b3, "BankBoundary3", "boundary") {
+ SystemQueue(SystemF, "Banking System F Queue", "A system of the bank.")
+ SystemQueue_Ext(SystemG, "Banking System G Queue", "A system of the bank, with personal bank accounts.")
+ }
+ }
+ }
+
+ BiRel(customerA, SystemAA, "Uses")
+ BiRel(SystemAA, SystemE, "Uses")
+ Rel(SystemAA, SystemC, "Sends e-mails", "SMTP")
+ Rel(SystemC, customerA, "Sends e-mails to")
+
+ UpdateElementStyle(customerA, $fontColor="red", $bgColor="grey", $borderColor="red")
+ UpdateRelStyle(customerA, SystemAA, $textColor="blue", $lineColor="blue", $offsetX="5")
+ UpdateRelStyle(SystemAA, SystemE, $textColor="blue", $lineColor="blue", $offsetY="-10")
+ UpdateRelStyle(SystemAA, SystemC, $textColor="blue", $lineColor="blue", $offsetY="-40", $offsetX="-50")
+ UpdateRelStyle(SystemC, customerA, $textColor="red", $lineColor="red", $offsetX="-50", $offsetY="20")
+
+ UpdateLayoutConfig($c4ShapeInRow="3", $c4BoundaryInRow="1")
+{{< /mermaid >}}
\ No newline at end of file
diff --git a/exampleSite/content/docs/compose/organize-content.md b/exampleSite/content/docs/compose/organize-content.md
new file mode 100644
index 0000000..0c9b392
--- /dev/null
+++ b/exampleSite/content/docs/compose/organize-content.md
@@ -0,0 +1,34 @@
++++
+title = "Content organization"
+weight = 4
++++
+
+This theme is primarily meant for documentation.
+
+#### Documentation
+
+By default, the theme will look for all your documentation content within the `docs` directory.
+
+However, if you would like to have your docs content across multiple directories, please list those directories inside `config/_default/params.toml` under `docSections` like so:
+
+```
+...
+docSections = ["docs", "tutorials"]
+...
+```
+
+Unlike other regular pages, the documentation pages will have a left sidebar. This sidebar will list links to all the pages in the documentation pages. Beneath each link, there will be a collapsible list of __table of contents'__ links. These nested lists will unfold automatically on the active/current page.
+
+#### Home Page
+
+At the root level there's an `_index.md` page which is the homepage. Feel free to edit it as you like.
+
+#### Other pages
+
+You can also add as many regular pages as you like e.g `about.md`, `contact.md`...
+
+Take advantage of [shortcodes](../shortcodes) to customize the layouts of these pages and any other.
+
+#### Does this theme support blogging function?
+
+Currently, no.
diff --git a/exampleSite/content/docs/compose/search.md b/exampleSite/content/docs/compose/search.md
new file mode 100644
index 0000000..e1e7347
--- /dev/null
+++ b/exampleSite/content/docs/compose/search.md
@@ -0,0 +1,68 @@
++++
+description = ""
+title = "Search Function"
+weight = 7
++++
+
+Firstly, ensure you have these lines inside your hugo.toml file
+
+```toml
+[outputs]
+ home = ["HTML", "RSS","JSON"]
+```
+
+Compose implements [Fuse js](https://fusejs.io/) or [Algolia](https://www.algolia.com/doc/rest-api/search/) to enable search functionality. By default Fuse is applied. Algolia can be enabled by adding this settings to `config/_default/params.toml` file
+
+```toml
+# search
+[search]
+on = true
+global = false
+[search.algolia]
+enable = false # if false search will default to fusejs
+id = "Q40WQQX84U" # Application ID
+index = "compose" # Index name
+key = "da87401a458102ec6bbd6cc5e5cf8d95" # Search-Only API Key
+```
+
+Both search engines will display results using the same UI. By choosing the default (.ie fuse js), you will be opting for local search. This way, no additional setup is needed.
+
+Algolia will require you to build and host your index. For those using Github, this theme ships with an [algolia github action](/docs/compose/github-actions/#algolia-ci).
+
+By default, search will return results from the current content section. Searches from the top level section e.g the homepage, will return global results. This way, the results are scoped. You can override this behaviour using this setting
+
+```toml
+...
+[search]
+...
+global = false # turn to `true` to enable global search
+...
+```
+
+At the time of this writing, search on these theme takes either of this forms:
+
+### 1. Passive search
+
+This occurs only when the user loads the search page i.e `/search/`. They can directly navigate to that url. Alternatively, the user can type you search query on the search field and click enter. They will be redirected to the search page which will contain matched results if any.
+
+### 2. Live search
+
+This behaviour will be obvious as the user types a search query on the search field. All `valid search queries`, will yield a list of `quick links` or a simple `no matches found`. Else, the user will be prompted to continue typing.
+
+> Please note that the results under quick links will be a truncated list of the most relevant results. Only a maximum of 8 items will be returned. This number is pragmatic at best if not arbitrary. On the search page, the number is set to 12.
+
+Note that live search on the search page will behave differently than on the other pages. Nonetheles, the pages apply the same live search principle.
+
+> Hitting enter while typing on the search page will be moot as that page’s content will live update as you type in the search word / phrase.
+
+### Customize search feedback labels
+
+Use the `i18n` files to do so.
+
+### What is a valid search query
+
+A valid search query must be long enough. If the search query can be cast as a float, then it only need contain one or more characters.
+
+Else the search query must be at least 2 characters long.
+
+
\ No newline at end of file
diff --git a/exampleSite/content/docs/compose/shortcodes-example.md b/exampleSite/content/docs/compose/shortcodes-example.md
new file mode 100644
index 0000000..378e015
--- /dev/null
+++ b/exampleSite/content/docs/compose/shortcodes-example.md
@@ -0,0 +1,56 @@
++++
+title = "Shortcodes Applied"
+weight = 7
+description = "This is how the shortcodes would look like in action"
+draft = true
++++
+
+### Blocks, columns & buttons
+
+```sh
+{{* block "grid-2" */>}}
+{{* column */>}}
+#### Coumn 1
+
+Lorem ipsum dolor sit amet,
+...
+
+{{* button "https://github.com/onweru/compose" "Download Theme" */>}}
+
+{{* /column */>}}
+{{* column */>}}
+
+
+```
+
+{{< block "grid-2" >}}
+{{< column >}}
+#### Coumn 1
+
+Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
+
+dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
+
+Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
+
+> Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
+
+{{< button "https://github.com/onweru/compose" "Download Theme" >}}
+
+{{< /column >}}
+{{< column >}}
+#### Coumn 2
+
+
+Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
+
+> dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
+
+Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
+
+Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
+
+{{< button "docs/" "Read the Docs" >}}
+
+{{< /column >}}
+{{< /block >}}
\ No newline at end of file
diff --git a/exampleSite/content/docs/compose/shortcodes.md b/exampleSite/content/docs/compose/shortcodes.md
new file mode 100644
index 0000000..38aa8ae
--- /dev/null
+++ b/exampleSite/content/docs/compose/shortcodes.md
@@ -0,0 +1,244 @@
++++
+description = "Use hugo shortcodes to quickly compose your documentation pages."
+title = "Shortcodes"
+weight = 5
+
++++
+Instead of writing all your site pages from scratch, Hugo lets you define and use [shortcodes](https://gohugo.io/content-management/shortcodes/).
+
+Why shortcodes? While markdown is sufficient to produce simple pages, it's insufficient where complex page structures are needed. Thusly, whenever we need special styling, shortcodes compliment the shortcomings of markdown.
+
+This way, you can side step complex html and css boilerplate in your content files.
+
+Sometimes, the shortcode will wrap content, sometimes it won't. When content is wrapped, a closing shortcode tag is needed. Please see the link I provided above and the markdown files for examples. You'll get the gist pretty quickly.
+
+I've setup the following shortcodes:
+
+### Block
+
+Takes positional modifiers
+
+**Example**
+
+```markdown
+...
+ {{* block "modifiers" */>}}
+
+ {{* /block */>}}
+...
+```
+
+### Column
+
+It takes positional parameters
+
+**Example**
+
+```markdown
+ {{* column "mt-2 mb-2" */>}}
+
+ {{* /column */>}}
+```
+
+### Youtube Video
+
+This allows you to embed a youtube video in you content. You would achieve that using a positional parameter (needs no name )parameter, like so:
+
+**Syntax**
+
+```markdown
+ {{* youtube "25QyCxVkXwQ" */>}}
+
+```
+
+**Result**
+
+{{< youtube "25QyCxVkXwQ" >}}
+
+**OR**
+
+**Syntax**
+
+```markdown
+
+{{* youtube "https://www.youtube.com/watch?v=MmG2ah5Df4g" */>}}
+```
+
+**Result**
+
+{{< youtube "https://www.youtube.com/watch?v=MmG2ah5Df4g" >}}
+
+#### Lite YouTube
+
+The `liteyoutube` shortcode supports three parameters:
+
+| PARAMETER | PURPOSE | OPTIONAL |
+| :--- | :--- | :--- |
+| videoid | YouTube video identifier | no |
+| params | YouTube parameters | yes |
+| img | Background image from static/images | yes |
+
+##### With no Parameters
+
+This example shows only supplying the required `videoid` (without a named parameter). You can also add the `img` and `params` parameters (in that order) without using named parameters.
+
+```markdown
+{{* liteyoutube "MmG2ah5Df4g" */>}}
+```
+
+{{< liteyoutube "MmG2ah5Df4g" >}}
+
+##### With `videoid` and `params`
+
+The params string instructs YouTube to play only 20 seconds of the video starting at ten seconds and ending at 30 seconds. It also disables the player controls and enables the YouTube `JSAPI`.
+
+```markdown
+{{* liteyoutube videoid="MmG2ah5Df4g" params="controls=0&start=10&end=30&modestbranding=2&rel=0&enablejsapi=1" */>}}
+```
+
+{{< liteyoutube videoid="MmG2ah5Df4g" params="controls=0&start=10&end=30&modestbranding=2&rel=0&enablejsapi=1" >}}
+
+##### With All Three Positional Parameters
+
+```markdown
+{{* liteyoutube "MmG2ah5Df4g" "painting.jpg" "controls=0&start=10&end=30&modestbranding=2&rel=0&enablejsapi=1" */>}}
+```
+
+{{< liteyoutube "MmG2ah5Df4g" "painting.jpg" "controls=0&start=10&end=30&modestbranding=2&rel=0&enablejsapi=1" >}}
+
+{{< tip >}}
+You can browse the full list of YouTube parameters [here](https://developers.google.com/youtube/player_parameters#Parameters)
+{{< /tip >}}
+
+### Button
+
+This adds a styled link (styled like a button). It takes two no-optional parameters:
+
+| PARAMETER | PURPOSE | OPTIONAL |
+| :--- | :--- | :--- |
+| label | button text | no |
+| url | button link | no |
+| modifier | styling classes | yes |
+
+**Example**
+
+```markdown
+ {{* button "/" "doe nu mee" */>}}
+```
+
+### Picture
+
+You want to use darkmode images when darkmode is enabled on a device and a regular image on lightmode? It takes 3 positional parameter
+
+Store these images in the `static/images` directory.
+
+**Syntax**
+
+```markdown
+...
+{{* picture "lightModeImage.png" "darkModeImage.png" "Image alt text" */>}}
+...
+```
+
+**Result**
+
+{{< picture "compose.svg" "compose-light.svg" "Compose Logo" >}}
+
+### Gallery
+
+Include inline galleries within your articles. These galleries can contain `N` number of images. It takes 2 positional parameters.
+
+The 1st parameter is required. It's a _comma-separated list_ (`,`) of your images' paths.
+
+The 2nd parameter is optional. It's a _double-collon-separated list_ (`::`) of your images' alt/description/captions text. It's always a good SEO practice to include alt text for your images.
+
+**Syntax**
+
+```markdown
+...
+{{* gallery "images/painting.jpg,images/scribble.jpg,images/painting.jpg" "Gallery Image 1::gallery image 2::gallery image 1 copy" */>}}
+...
+```
+
+{{< tip >}}
+
+> For legibility, you may include a space after the delimiters `,` & `::`
+> {{< /tip >}}
+
+**Result**
+
+{{< gallery "images/painting.jpg,images/scribble.jpg,images/painting.jpg" "Gallery Image 1::gallery image 2::gallery image 1 copy" >}}
+
+### Tab(s)
+
+Use this short if you want to publish a multiple tabs component.
+
+**Syntax**
+
+```markdown
+{{* tabs "tabsId" */>}}
+{{* tab "First" */>}}
+What could such a tab include?
+{{* /tab >}}
+{{* tab "Second" */>}}
+- Some *bulletpoints*
+- and more…
+- …
+{{* /tab >}}
+{{* tab "Third" */>}}
+> great wise words?
+{{* /tab */>}}
+{{* /tabs */>}}
+```
+
+**Result**
+
+{{< tabs "tabsId" >}}
+{{< tab "First" >}}
+What could such a tab include?
+{{< /tab >}}
+{{< tab "Second" >}}
+- Some *bulletpoints*
+- and more…
+- …
+{{< /tab >}}
+{{< tab "Third" >}}
+> great wise words?
+{{< /tab >}}
+{{< /tabs >}}
+
+### Tip
+
+Use this short if you want to publish informational tooltips that look like:
+
+This tooltips may take either of the following forms:
+
+**Syntax**
+
+```markdown
+{{* tip */>}}
+Something of __interest__ you want to highlight
+{{* /tip */>}}
+```
+
+**Result**
+
+{{< tip >}}
+Something of **interest** you want to highlight
+{{< /tip >}}
+
+**OR**
+
+**Syntax**
+
+```markdown
+{{* tip "warning" */>}}
+Something of __interest__ the user should be careful about
+{{* /tip */>}}
+```
+
+**Result**
+
+{{< tip "warning" >}}
+Something of **interest** the user should be careful about
+{{< /tip >}}
diff --git a/exampleSite/content/docs/compose/use-tina-cms.md b/exampleSite/content/docs/compose/use-tina-cms.md
new file mode 100644
index 0000000..3201b16
--- /dev/null
+++ b/exampleSite/content/docs/compose/use-tina-cms.md
@@ -0,0 +1,56 @@
++++
+title = "Use Tina.io CMS"
+description = ""
+weight = 3
++++
+
+Do you prefer managing your site using a CMS? Or would you like to make it easier for someone (a non-techie, perhaps) in your team to make edits easily? If interested, follow along. Else, skip to the [next section](../organize-content/)
+
+Let's sync your site with Tina CMS.
+
+## Prerequisites !!
+
+Obviously you ought to have __a github account__. This is where your website source will live. Basically, Tina will read from github and write (commit) to your github repo.
+
+{{< tip "warning" >}}
+Gitlab or bitbucket will work too. Just check their [implementation here](https://Tina.io/docs/git-sync/gitlab/). Happy fishing.
+{{< /tip >}}
+
+### Requirement 1 : A Tina.io account
+
+Jump over to [Tina.io](https://tina.io/) and sign up for an account. Consider signing up using your github account. That way, you don't have to deal with passwords.
+
+### Requirement 2: A Netlify account _(optional)_
+
+If you intend to host with something other than Netlify _e.g github pages_, please scroll on. Hosting with Netlify is a lot of fun though; I highly recommend it.
+
+### Step 1 : Fork or Clone Compose theme
+
+First we will fork [this theme's](https://github.com/onweru/compose) template.
+
+### Step 2 : Add your repository in Tina CMS
+
+{{< tip >}}
+The exampleSite already comes with prefilled placeholder Tina settings. If you set up your site using [option 2](../install-theme/#option-2-recommended)
+
+{{< /tip >}}
+
+Edit `./static/tina/config.js` and replace tina CMS tokens with values from your own Tina account
+
+```json
+...
+ clientId: "6ff9830b-b18a-4d21-b38c-cae1679e335f", // replace
+ token: "2954980a0db18868974dc57a66be9ecdfe6f336b", // replace
+...
+search: {
+ ...
+ tina: {
+ indexerToken: "977c145439dda036080dd7a33478d2ba385ab5af", // replace
+ stopwordLanguages: ["deu", "eng", "fra", "ita", "spa", "nld"] // consider adding or removing languages https://github.com/fergiemcdowall/stopword#language-code
+ },
+ ...
+ }
+...
+```
+
+Go to your [Tina](https://tina.io/) account
diff --git a/exampleSite/content/projects.csv b/exampleSite/content/projects.csv
new file mode 100644
index 0000000..ba00546
--- /dev/null
+++ b/exampleSite/content/projects.csv
@@ -0,0 +1,12 @@
+project 6,alpha,weru
+project 4,beta,dan
+project 4,candidate,dahl
+project y,abandoned,weru
+project 1,alpha,weru
+project 4,beta,ryan
+project 4,candidate,dan
+project y,abandoned,weru
+project 11,alpha,dahl
+project 4,beta,dan
+project 4,candidate,dan
+project A,abandoned,weru
diff --git a/exampleSite/content/search.md b/exampleSite/content/search.md
new file mode 100644
index 0000000..65759a0
--- /dev/null
+++ b/exampleSite/content/search.md
@@ -0,0 +1,5 @@
++++
+title = "Search"
+searchPage = true
+type = "search"
++++
\ No newline at end of file
diff --git a/exampleSite/content/themes.csv b/exampleSite/content/themes.csv
new file mode 100644
index 0000000..1de183b
--- /dev/null
+++ b/exampleSite/content/themes.csv
@@ -0,0 +1,4 @@
+clarity,V.1,chipzoller
+compose,V.1,weru
+swift,V.2,weru
+newsroom,V.1,weru
diff --git a/exampleSite/content/tutorials/_index.md b/exampleSite/content/tutorials/_index.md
new file mode 100644
index 0000000..51f04c4
--- /dev/null
+++ b/exampleSite/content/tutorials/_index.md
@@ -0,0 +1,15 @@
++++
+title = "Tutorials' Docs"
+weight = 1
++++
+
+Just an example of an additional docs folder.
+
+Surprised that it doesn't have a left sidebar menu? Worry not; just [follow this instructions to enable it](../docs/compose/organize-content/#documentation).
+
+
+
+{{< button "./example" "Tutorials" "mb-1" >}}
+
+{{< button "../docs/" "Back to docs" >}}
+
diff --git a/exampleSite/content/tutorials/example/_index.md b/exampleSite/content/tutorials/example/_index.md
new file mode 100644
index 0000000..071af9d
--- /dev/null
+++ b/exampleSite/content/tutorials/example/_index.md
@@ -0,0 +1,8 @@
++++
+title = "Compose Docs"
+weight = 1
++++
+
+Welcome to the Compose theme user guide! This guide shows you how to get started creating technical documentation sites using Compose, including site customization and how to use Compose's blocks and templates.
+
+{{< button "../../docs/compose/install-theme/" "Get started now" >}}
diff --git a/exampleSite/content/tutorials/example/mermaid.md b/exampleSite/content/tutorials/example/mermaid.md
new file mode 100644
index 0000000..365ac7d
--- /dev/null
+++ b/exampleSite/content/tutorials/example/mermaid.md
@@ -0,0 +1,375 @@
++++
+title = "Mermaid"
+weight = 8
+description = "Generate diagrams, flowcharts, and piecharts from text in a similar manner as markdown."
++++
+
+[Mermaid](https://mermaidjs.github.io/) is library that helps you generate diagrams, flowcharts, and piecharts from text in a similar manner as markdown.
+
+With compose theme, you can use mermaid using a custom shortcode as follows:
+
+### Sequence Diagrams
+
+**Syntax**
+
+```tpl
+{{* mermaid */>}}
+sequenceDiagram
+ participant Alice
+ participant Bob
+ Alice->>John: Hello John, how are you?
+ loop Healthcheck
+ John->>John: Fight against hypochondria
+ end
+ Note right of John: Rational thoughts
prevail...
+ John-->>Alice: Great!
+ John->>Bob: How about you?
+ Bob-->>John: Jolly good!
+{{* /mermaid */>}}
+```
+
+**Result**
+
+{{< mermaid >}}
+sequenceDiagram
+ participant Alice
+ participant Bob
+ Alice->>John: Hello John, how are you?
+ loop Healthcheck
+ John->>John: Fight against hypochondria
+ end
+ Note right of John: Rational thoughts
prevail...
+ John-->>Alice: Great!
+ John->>Bob: How about you?
+ Bob-->>John: Jolly good!
+{{< /mermaid >}}
+
+### Flow Charts
+
+**Syntax**
+
+```tpl
+{{* mermaid */>}}
+flowchart TB
+ c1-->a2
+ subgraph one
+ a1-->a2
+ end
+ subgraph two
+ b1-->b2
+ end
+ subgraph three
+ c1-->c2
+ end
+ one --> two
+ three --> two
+ two --> c2
+{{* /mermaid */>}}
+```
+**Result**
+
+{{< mermaid >}}
+flowchart TB
+ c1-->a2
+ subgraph one
+ a1-->a2
+ end
+ subgraph two
+ b1-->b2
+ end
+ subgraph three
+ c1-->c2
+ end
+ one --> two
+ three --> two
+ two --> c2
+{{< /mermaid >}}
+
+### Graphs
+
+**Syntax**
+
+```tpl
+{{* mermaid */>}}
+graph TB
+ sq[Square shape] --> ci((Circle shape))
+
+ subgraph A
+ od>Odd shape]-- Two line
edge comment --> ro
+ di{Diamond with
line break} -.-> ro(Rounded
square
shape)
+ di==>ro2(Rounded square shape)
+ end
+
+ %% Notice that no text in shape are added here instead that is appended further down
+ e --> od3>Really long text with linebreak
in an Odd shape]
+
+ %% Comments after double percent signs
+ e((Inner / circle
and some odd
special characters)) --> f(,.?!+-*ز)
+
+ cyr[Cyrillic]-->cyr2((Circle shape Начало));
+
+ classDef green fill:#9f6,stroke:#333,stroke-width:2px;
+ classDef orange fill:#f96,stroke:#333,stroke-width:4px;
+ class sq,e green
+ class di orange
+{{* /mermaid */>}}
+```
+
+**Result**
+
+{{< mermaid >}}
+graph TB
+ sq[Square shape] --> ci((Circle shape))
+
+ subgraph A
+ od>Odd shape]-- Two line
edge comment --> ro
+ di{Diamond with
line break} -.-> ro(Rounded
square
shape)
+ di==>ro2(Rounded square shape)
+ end
+
+ %% Notice that no text in shape are added here instead that is appended further down
+ e --> od3>Really long text with linebreak
in an Odd shape]
+
+ %% Comments after double percent signs
+ e((Inner / circle
and some odd
special characters)) --> f(,.?!+-*ز)
+
+ cyr[Cyrillic]-->cyr2((Circle shape Начало));
+
+ classDef green fill:#9f6,stroke:#333,stroke-width:2px;
+ classDef orange fill:#f96,stroke:#333,stroke-width:4px;
+ class sq,e green
+ class di orange
+{{< /mermaid >}}
+
+**Syntax**
+
+```tpl
+{{* mermaid */>}}
+graph LR
+ A[Hard edge] -->|Link text| B(Round edge)
+ B --> C{Decision}
+ C -->|One| D[Result one]
+ C -->|Two| E[Result two]
+{{* /mermaid */>}}
+```
+
+**Result**
+
+{{< mermaid >}}
+graph LR
+ A[Hard edge] -->|Link text| B(Round edge)
+ B --> C{Decision}
+ C -->|One| D[Result one]
+ C -->|Two| E[Result two]
+{{< /mermaid >}}
+
+### Class Diagram
+
+{{< mermaid >}}
+classDiagram
+ Animal <|-- Duck
+ Animal <|-- Fish
+ Animal <|-- Zebra
+ Animal : +int age
+ Animal : +String gender
+ Animal: +isMammal()
+ Animal: +mate()
+ class Duck{
+ +String beakColor
+ +swim()
+ +quack()
+ }
+ class Fish{
+ -int sizeInFeet
+ -canEat()
+ }
+ class Zebra{
+ +bool is_wild
+ +run()
+ }
+{{< /mermaid >}}
+
+
+### State Diagram
+
+{{< mermaid >}}
+stateDiagram-v2
+ [*] --> Active
+
+ state Active {
+ [*] --> NumLockOff
+ NumLockOff --> NumLockOn : EvNumLockPressed
+ NumLockOn --> NumLockOff : EvNumLockPressed
+ --
+ [*] --> CapsLockOff
+ CapsLockOff --> CapsLockOn : EvCapsLockPressed
+ CapsLockOn --> CapsLockOff : EvCapsLockPressed
+ --
+ [*] --> ScrollLockOff
+ ScrollLockOff --> ScrollLockOn : EvScrollLockPressed
+ ScrollLockOn --> ScrollLockOff : EvScrollLockPressed
+ }
+{{< /mermaid >}}
+
+{{< mermaid >}}
+stateDiagram-v2
+ State1: The state with a note
+ note right of State1
+ Important information! You can write
+ notes.
+ end note
+ State1 --> State2
+ note left of State2 : This is the note to the left.
+{{< /mermaid >}}
+
+### Relationship Diagrams
+
+**Syntax**
+
+```tpl
+{{* mermaid */>}}
+erDiagram
+ CUSTOMER ||--o{ ORDER : places
+ ORDER ||--|{ LINE-ITEM : contains
+ CUSTOMER }|..|{ DELIVERY-ADDRESS : uses
+{{* /mermaid */>}}
+```
+
+**Result**
+
+{{< mermaid >}}
+erDiagram
+ CUSTOMER ||--o{ ORDER : places
+ ORDER ||--|{ LINE-ITEM : contains
+ CUSTOMER }|..|{ DELIVERY-ADDRESS : uses
+{{< /mermaid >}}
+
+### User Journey
+
+**Syntax**
+
+```tpl
+{{* mermaid */>}}
+journey
+ title My working day
+ section Go to work
+ Make tea: 5: Me
+ Go upstairs: 3: Me
+ Do work: 1: Me, Cat
+ section Go home
+ Go downstairs: 5: Me
+ Sit down: 5: Me
+{{* /mermaid */>}}
+
+```
+
+**Result**
+
+{{< mermaid >}}
+journey
+ title My working day
+ section Go to work
+ Make tea: 5: Me
+ Go upstairs: 3: Me
+ Do work: 1: Me, Cat
+ section Go home
+ Go downstairs: 5: Me
+ Sit down: 5: Me
+{{< /mermaid >}}
+
+### Gantt
+
+**Syntax**
+
+```tpl
+{{* mermaid */>}}
+gantt
+ dateFormat YYYY-MM-DD
+ title Adding GANTT diagram functionality to mermaid
+ excludes weekends
+ %% (`excludes` accepts specific dates in YYYY-MM-DD format, days of the week ("sunday") or "weekends", but not the word "weekdays".)
+
+ section A section
+ Completed task :done, des1, 2014-01-06,2014-01-08
+ Active task :active, des2, 2014-01-09, 3d
+ Future task : des3, after des2, 5d
+ Future task2 : des4, after des3, 5d
+
+ section Critical tasks
+ Completed task in the critical line :crit, done, 2014-01-06,24h
+ Implement parser and jison :crit, done, after des1, 2d
+ Create tests for parser :crit, active, 3d
+ Future task in critical line :crit, 5d
+ Create tests for renderer :2d
+ Add to mermaid :1d
+
+ section Documentation
+ Describe gantt syntax :active, a1, after des1, 3d
+ Add gantt diagram to demo page :after a1 , 20h
+ Add another diagram to demo page :doc1, after a1 , 48h
+
+ section Last section
+ Describe gantt syntax :after doc1, 3d
+ Add gantt diagram to demo page :20h
+ Add another diagram to demo page :48h
+{{* /mermaid */>}}
+```
+
+**Result**
+
+{{< mermaid >}}
+gantt
+ dateFormat YYYY-MM-DD
+ title Adding GANTT diagram functionality to mermaid
+ excludes weekends
+ %% (`excludes` accepts specific dates in YYYY-MM-DD format, days of the week ("sunday") or "weekends", but not the word "weekdays".)
+
+ section A section
+ Completed task :done, des1, 2014-01-06,2014-01-08
+ Active task :active, des2, 2014-01-09, 3d
+ Future task : des3, after des2, 5d
+ Future task2 : des4, after des3, 5d
+
+ section Critical tasks
+ Completed task in the critical line :crit, done, 2014-01-06,24h
+ Implement parser and jison :crit, done, after des1, 2d
+ Create tests for parser :crit, active, 3d
+ Future task in critical line :crit, 5d
+ Create tests for renderer :2d
+ Add to mermaid :1d
+
+ section Documentation
+ Describe gantt syntax :active, a1, after des1, 3d
+ Add gantt diagram to demo page :after a1 , 20h
+ Add another diagram to demo page :doc1, after a1 , 48h
+
+ section Last section
+ Describe gantt syntax :after doc1, 3d
+ Add gantt diagram to demo page :20h
+ Add another diagram to demo page :48h
+{{< /mermaid >}}
+
+### Pie Chart
+
+```tpl
+{{* mermaid */>}}
+pie
+ title Key elements in Product X
+ "Calcium" : 42.96
+ "Potassium" : 50.05
+ "Magnesium" : 10.01
+ "Iron" : 5
+{{* /mermaid */>}}
+
+```
+
+**Result**
+
+{{< mermaid >}}
+pie
+ title Key elements in Product X
+ "Calcium" : 42.96
+ "Potassium" : 50.05
+ "Magnesium" : 10.01
+ "Iron" : 5
+{{< /mermaid >}}
diff --git a/exampleSite/dist/.gitkeep b/exampleSite/dist/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/exampleSite/go.mod b/exampleSite/go.mod
new file mode 100644
index 0000000..caa4077
--- /dev/null
+++ b/exampleSite/go.mod
@@ -0,0 +1,5 @@
+module compose-exampleSite
+
+go 1.19
+
+require github.com/onweru/compose v0.0.0-20240711165024-0ea6ac76134e // indirect
diff --git a/exampleSite/go.sum b/exampleSite/go.sum
new file mode 100644
index 0000000..91176af
--- /dev/null
+++ b/exampleSite/go.sum
@@ -0,0 +1,30 @@
+github.com/onweru/compose v0.0.0-20230709163331-af3e133abf10 h1:6+OU3YpznL1bAy1s4B9KhEteRN+qo5T9vgYTWuGHpLw=
+github.com/onweru/compose v0.0.0-20230709163331-af3e133abf10/go.mod h1:tf1kQIBUcwJ/3mRFU5eiMrMvsDScVTK2IEFsZE3hZOc=
+github.com/onweru/compose v0.0.0-20230709170553-cdf6b3d268e3 h1:LQ9aw508QrowSWfr8m7Q43AelhGTaNhX+obnkCWefKg=
+github.com/onweru/compose v0.0.0-20230709170553-cdf6b3d268e3/go.mod h1:tf1kQIBUcwJ/3mRFU5eiMrMvsDScVTK2IEFsZE3hZOc=
+github.com/onweru/compose v0.0.0-20230717085020-14357bb3e167 h1:btK2EwB8mRaebaNkvzsEjnxQt6dI9corw9n5kyPQoMk=
+github.com/onweru/compose v0.0.0-20230717085020-14357bb3e167/go.mod h1:tf1kQIBUcwJ/3mRFU5eiMrMvsDScVTK2IEFsZE3hZOc=
+github.com/onweru/compose v0.0.0-20230729163245-27b84dc22eb8 h1:aVItqjRfGwyOZHloHxVY6kEjjR+e8AQVXlpWiQtO0dw=
+github.com/onweru/compose v0.0.0-20230729163245-27b84dc22eb8/go.mod h1:tf1kQIBUcwJ/3mRFU5eiMrMvsDScVTK2IEFsZE3hZOc=
+github.com/onweru/compose v0.0.0-20230730204557-43a58bce3d5a h1:o/x7EfZKZquisgw30cKagraXVccTNydxPGQYV9LadZY=
+github.com/onweru/compose v0.0.0-20230730204557-43a58bce3d5a/go.mod h1:tf1kQIBUcwJ/3mRFU5eiMrMvsDScVTK2IEFsZE3hZOc=
+github.com/onweru/compose v0.0.0-20230730204838-eb9964865cd0 h1:xIK8kxui2ulVqJRO9tjbGuhNPxr1QlmmnswX8Tcs+Js=
+github.com/onweru/compose v0.0.0-20230730204838-eb9964865cd0/go.mod h1:tf1kQIBUcwJ/3mRFU5eiMrMvsDScVTK2IEFsZE3hZOc=
+github.com/onweru/compose v0.0.0-20230817095514-20a7d0ddbfcb h1:azper7pbfQ92zfd8rV7HBjhF8AsZbZmGqxFqqTYEef8=
+github.com/onweru/compose v0.0.0-20230817095514-20a7d0ddbfcb/go.mod h1:tf1kQIBUcwJ/3mRFU5eiMrMvsDScVTK2IEFsZE3hZOc=
+github.com/onweru/compose v0.0.0-20230823103345-61fa78130dec h1:8iFU5Cf76/ww5+gLyyRrI7dpJpcKmnpBXtraIIq4AT0=
+github.com/onweru/compose v0.0.0-20230823103345-61fa78130dec/go.mod h1:2eSBLsKzvKf3r4/vHiKdakIBqDtWACDAqAD7tRdt00o=
+github.com/onweru/compose v0.0.0-20240111174942-cdf2ef5f4da1 h1:evqwOllx6XwfmYG2NKGFmfloNQXazxOCPir914Myjpk=
+github.com/onweru/compose v0.0.0-20240111174942-cdf2ef5f4da1/go.mod h1:2eSBLsKzvKf3r4/vHiKdakIBqDtWACDAqAD7tRdt00o=
+github.com/onweru/compose v0.0.0-20240111175353-5392252575a2 h1:jqoBc1FPDJNxRrrieLlRvyKCumTLa5XkehgXz3yBdvE=
+github.com/onweru/compose v0.0.0-20240111175353-5392252575a2/go.mod h1:2eSBLsKzvKf3r4/vHiKdakIBqDtWACDAqAD7tRdt00o=
+github.com/onweru/compose v0.0.0-20240111181611-61cf3194699c h1:4SSQgoXXBQS9iZ5IQIGLxXOExaeODx5Hg0+fDzcsLB0=
+github.com/onweru/compose v0.0.0-20240111181611-61cf3194699c/go.mod h1:2eSBLsKzvKf3r4/vHiKdakIBqDtWACDAqAD7tRdt00o=
+github.com/onweru/compose v0.0.0-20240113175534-20909d29d9a8 h1:g9eo2danSDAQ8wD/HDLWqFt7s01YaAGAVJZhN4ODBs8=
+github.com/onweru/compose v0.0.0-20240113175534-20909d29d9a8/go.mod h1:2eSBLsKzvKf3r4/vHiKdakIBqDtWACDAqAD7tRdt00o=
+github.com/onweru/compose v0.0.0-20240114134437-91252edd0478 h1:n5wqTvZ1RLOHHwJoHal5WmhSF/gqhxaDr/w1+wW9Dsw=
+github.com/onweru/compose v0.0.0-20240114134437-91252edd0478/go.mod h1:2eSBLsKzvKf3r4/vHiKdakIBqDtWACDAqAD7tRdt00o=
+github.com/onweru/compose v0.0.0-20240114135539-a7a9df6d34b9 h1:pRRosz/W2ZKxruZ5fTYxN+BAFIybNg+V8IhGMVdZfbE=
+github.com/onweru/compose v0.0.0-20240114135539-a7a9df6d34b9/go.mod h1:2eSBLsKzvKf3r4/vHiKdakIBqDtWACDAqAD7tRdt00o=
+github.com/onweru/compose v0.0.0-20240711165024-0ea6ac76134e h1:ljas9s4I9bPPkSEkk7CXkDitWxrHUmIlrfLmojpHCcI=
+github.com/onweru/compose v0.0.0-20240711165024-0ea6ac76134e/go.mod h1:2eSBLsKzvKf3r4/vHiKdakIBqDtWACDAqAD7tRdt00o=
diff --git a/exampleSite/hugo.toml b/exampleSite/hugo.toml
new file mode 100644
index 0000000..bb9d060
--- /dev/null
+++ b/exampleSite/hugo.toml
@@ -0,0 +1,13 @@
+baseURL = "https://example.com/"
+title = "Compose Docs"
+enableRobotsTXT = true
+# this example loads the theme as hugo module
+# comment out line below, and uncomment the line after it if you prefer to load the theme normally
+theme = ["github.com/onweru/compose"] # edit this if you'ld rather use a fork of this repo
+# theme = "compose"
+enableGitInfo = true
+
+# disableKinds = ["taxonomy", "taxonomyTerm"]
+
+[outputs]
+ home = ["HTML", "RSS","JSON"]
diff --git a/exampleSite/netlify.toml b/exampleSite/netlify.toml
new file mode 100644
index 0000000..23a675b
--- /dev/null
+++ b/exampleSite/netlify.toml
@@ -0,0 +1,39 @@
+[build]
+publish = "public"
+#command = "hugo --gc --minify"
+command = "hugo --gc --minify --baseURL https://composedocs.netlify.app/"
+
+[context.production.environment]
+HUGO_VERSION = "0.128.2"
+GO_VERSION = "1.21.0"
+NODE_VERSION = "20.5.1"
+HUGO_ENV = "production"
+HUGO_ENABLEGITINFO = "true"
+
+[context.split1]
+command = "hugo --gc --minify --enableGitInfo"
+
+[context.split1.environment]
+HUGO_VERSION = "0.128.2"
+GO_VERSION = "1.21.0"
+NODE_VERSION = "20.5.1"
+HUGO_ENV = "production"
+
+[context.deploy-preview]
+command = "hugo --gc --minify --buildFuture -b $DEPLOY_PRIME_URL"
+
+[context.deploy-preview.environment]
+HUGO_VERSION = "0.128.2"
+GO_VERSION = "1.21.0"
+NODE_VERSION = "20.5.1"
+
+[context.branch-deploy]
+command = "hugo --gc --minify -b $DEPLOY_PRIME_URL"
+
+[context.branch-deploy.environment]
+HUGO_VERSION = "0.128.2"
+GO_VERSION = "1.21.0"
+NODE_VERSION = "20.5.1"
+
+[context.next.environment]
+HUGO_ENABLEGITINFO = "true"
diff --git a/exampleSite/package.json b/exampleSite/package.json
new file mode 100644
index 0000000..8365aaf
--- /dev/null
+++ b/exampleSite/package.json
@@ -0,0 +1,18 @@
+{
+ "name": "examplesite",
+ "version": "1.0.0",
+ "description": "This guide covers the necessary bits. As the project evolves, it will only become more comprehensive",
+ "main": "index.js",
+ "scripts": {
+ "test": "echo \"Error: no test specified\" && exit 1"
+ },
+ "keywords": [],
+ "author": "",
+ "license": "ISC",
+ "dependencies": {
+ "@tinacms/cli": "^1.5.31",
+ "tinacms": "^1.5.22",
+ "@tinacms/auth": "^1.0.3",
+ "next-tinacms-cloudinary": "^4.3.0"
+ }
+}
\ No newline at end of file
diff --git a/exampleSite/resources/_gen/assets/sass/main.sass_ae9eb86df8175869edaecf50caadd93b.content b/exampleSite/resources/_gen/assets/sass/main.sass_ae9eb86df8175869edaecf50caadd93b.content
new file mode 100644
index 0000000..ce03c35
--- /dev/null
+++ b/exampleSite/resources/_gen/assets/sass/main.sass_ae9eb86df8175869edaecf50caadd93b.content
@@ -0,0 +1,3 @@
+html{--info-icon: url('http://localhost:1313/icons/info.svg');--sun-icon: url('http://localhost:1313/icons/sun.svg');--moon-icon: url('http://localhost:1313/icons/moon.svg');--next-icon: url('http://localhost:1313/icons/next.svg')}html{--color-mode: "light";--light: #fff;--dark: rgb(28,28,30);--haze: #f2f5f7;--bubble: rgb(36,36,38);--accent: var(--haze);--bg: var(--light);--code-bg: var(--accent);--overlay: var(--light);--text: #141010;--font: 'Metropolis', sans-serif;--border-color: #eee;--inline-color: darkgoldenrod;--theme: rgb(52,199,89);--ease: ease;--scroll-thumb: rgba(0,0,0,.06);--search-border-color: transparent;--next-icon-path: url(../images/icons/double-arrow.svg);--never-icon-path: url(../images/sitting.svg)}html[data-mode="dark"]{--color-mode: "dark";--theme: rgb(48,209,88);--bg: var(--dark);--text: #eee;--text-light: #fff;--accent: var(--bubble);--overlay: var(--bubble);--border-color: transparent;--scroll-thumb: rgba(255,255,255,.06);--search-bg: var(--accent);--search-border-color: var(--accent)}html[data-mode="dark"] *{box-shadow:none !important}html[data-mode="dark"] .color_choice::after{background-image:var(--moon-icon)}@media (prefers-color-scheme: dark){html[data-mode="auto"]{--color-mode: "dark";--theme: rgb(48,209,88);--bg: var(--dark);--text: #eee;--text-light: #fff;--accent: var(--bubble);--overlay: var(--bubble);--border-color: transparent;--scroll-thumb: rgba(255,255,255,.06);--search-bg: var(--accent);--search-border-color: var(--accent)}html[data-mode="auto"] *{box-shadow:none !important}}blockquote+.highlight_wrap{margin-top:2.25rem}*{box-sizing:border-box;margin:0;padding:0;scrollbar-color:var(--scroll-thumb) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:.5rem}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:.25rem}body,html{scroll-behavior:smooth;scroll-padding-top:1rem;font-kerning:normal;-webkit-text-size-adjust:100%;font-size:18px}@keyframes flash{0%{opacity:0}75%{opacity:0}100%{opacity:1}}body{font-family:var(--font);background-color:var(--bg);color:var(--text);line-height:1.5;margin:0 auto;position:relative;font-kerning:normal;display:flex;min-width:0;flex-direction:column;justify-content:space-between;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-overflow-scrolling:touch;max-width:1440px;animation:0.67s flash ease-in}@media screen and (min-width: 1640px){body{max-width:1600px}}a{text-decoration:none;color:inherit}p{padding:0.75rem 0}p:empty{display:none}li,li p{padding:0.25rem 0}blockquote{opacity:0.8;padding:1rem;position:relative;quotes:"“" "”" "‘" "’";margin:0.75rem 0;display:flex;flex-flow:row wrap;background-repeat:no-repeat;background-size:5rem;background-position:50% 50%;position:relative;background-color:var(--accent);border-radius:0.25rem;overflow:hidden}blockquote::before{content:"";padding:2px;position:absolute;top:0;bottom:0;left:0;background:var(--theme)}blockquote p{padding-left:0.5rem !important;font-size:1.1rem !important;width:100%;font-style:italic}h1,h2,h3,h4,h5{font-family:inherit;font-weight:500;padding:0.33rem 0;color:inherit;line-height:1.35}h1{font-size:200%}h2{font-size:175%}h3{font-size:150%}h4{font-size:125%}h5{font-size:120%}h6{font-size:100%}img,svg,figure{max-width:100%;vertical-align:middle}img{height:auto;margin:1rem auto;padding:0}main{flex:1}@media screen and (min-width: 42rem){main{padding-bottom:45px}}ol,ul{list-style:none}b,strong{font-weight:500}hr{border:none;padding:1px;background:var(--border-color);margin:1rem 0}.aside{overflow-y:auto;background:var(--bg);border-radius:0.25rem;align-self:start;max-height:80vh;position:sticky;z-index:9999;top:0;padding:1rem 0}@media screen and (min-width: 42rem){.aside{padding:1rem 1.5rem;top:2.5rem;margin-top:1rem;padding-top:0}}.aside_inner{height:0;overflow:hidden}@media screen and (min-width: 42rem){.aside_inner{height:initial}}.aside.show .aside_inner{height:initial;overflow:visible}.aside_toggle{padding:0.5rem 1.5rem;border-radius:0.5rem;background:var(--accent);transform:translateY(-1rem);display:flex;justify-content:space-between}@media screen and (min-width: 42rem){.aside_toggle{display:none}}.aside h3{position:relative}.aside ul{padding:0;list-style:none}th,td{padding:0.5rem;font-weight:400 !important}th:not(:first-child),td:not(:first-child){padding-left:1.5rem}thead{background:var(--theme);color:var(--light);font-weight:400;text-align:left}tbody tr:nth-child(even){background-color:var(--accent) !important;box-shadow:0 1rem 0.75rem -0.75rem rgba(0,0,0,0.07)}table{margin:1.5rem 0;width:100%}.main{flex:1}@media screen and (max-width: 667px){.main>.grid-auto{grid-gap:0}}.page-home h1{font-weight:300}.content ul,.content ol{padding-left:1.1rem}.content ul{list-style:initial}.content ol{list-style:decimal}.content a:not(.button){color:var(--theme)}::placeholder{font-size:1rem}svg.icon_sort{fill:var(--light);height:0.7rem;width:0.7rem;display:inline-block;margin-left:auto;vertical-align:middle}canvas{margin:2.5rem auto 0 auto;max-width:450px !important;max-height:450px !important}footer{min-height:150px}del{opacity:0.5}#toTop{background:transparent;outline:0.5rem solid transparent;height:2rem;width:2rem;cursor:pointer;padding:0.5rem;display:flex;align-items:center;justify-content:center;position:fixed;right:0;bottom:2.25rem;transform:rotate(45deg) translate(5rem);opacity:0;transition:opacity 0.5s var(--ease),transform 0.25s var(--ease);z-index:5}#toTop.active{right:1.5rem;opacity:1;transform:rotate(45deg) translate(0)}#toTop::after,#toTop::before{position:absolute;display:block;width:1rem;height:1rem;content:"";border-left:1px solid var(--text);border-top:1px solid var(--text)}#toTop::after{width:0.67rem;height:0.67rem;transform:translate(0.1rem, 0.1rem)}#searchpage{padding-top:5rem}.nav{display:grid;grid-gap:1rem;padding:0 1.5rem !important;align-items:center;background-color:var(--bg)}@media screen and (min-width: 992px){.nav{grid-template-columns:10rem 1fr}}.nav_brand{position:relative}.nav_brand picture,.nav_brand img{max-width:10rem}.nav_header{position:absolute;top:0;left:0;width:100%;background-color:var(--bg);z-index:999999}.nav_toggle{position:absolute;top:0;bottom:0;width:3rem;display:flex;align-items:center;justify-content:flex-end;text-align:center;right:0;color:var(--text)}@media screen and (min-width: 992px){.nav_toggle{display:none}}.nav_body{display:flex;flex-direction:column;background:var(--accent);position:fixed;left:0;top:0;bottom:0;height:100vh;transition:transform 0.25s var(--ease);transform:translateX(-101vw)}@media screen and (min-width: 992px){.nav_body{transform:translateX(0);position:relative;height:initial;justify-content:flex-end;background:transparent;flex-direction:row}}.nav.show .nav_body{transform:translateX(0);box-shadow:0 1rem 4rem rgba(0,0,0,0.1);background:var(--bg);overflow-y:auto}.nav.show .nav_body li:first-child{margin:1.5rem 1rem 0.5rem 1rem}.nav-link{display:inline-flex;padding:0.5rem 1rem}.nav-item{display:grid;align-items:center}@media screen and (min-width: 992px){.nav-item .search{margin-right:1.5rem}}.nav_repo picture,.nav_repo img{max-width:1.25rem}.section_title{font-size:1.25rem}.section_link{font-size:1rem;font-weight:400}.sidebar-link{display:grid;padding:0.2rem 0}.toc{border-left:2px solid var(--theme);padding:0 1rem;height:0;overflow:hidden;filter:opacity(0.87)}.toc_item{font-size:0.9rem}.toc_active{height:initial}.search{flex:1;display:flex;justify-content:flex-end;position:relative}.search_field{padding:0.5rem 1.5rem 0.5rem 2.5rem;border-radius:1.5rem;width:13.5rem;outline:none;border:1px solid var(--search-border-color);background:transparent;color:var(--text);box-shadow:0 1rem 4rem rgba(0,0,0,0.17);font-size:1rem}.search_field:hover,.search_field:focus{background:var(--search-bg)}.search_label{width:1rem;height:1rem;position:absolute;left:0.33rem;top:0.25rem;opacity:0.33}.search_label svg{width:100%;height:100%;fill:var(--text)}.search_result{padding:0.5rem 1rem;display:block}.search_result:not(.passive):hover{background-color:var(--theme);color:var(--light)}.search_result.passive{display:grid}.search_results{width:13.5rem;background-color:var(--overlay);border-radius:0 0 0.25rem 0.25rem;box-shadow:0 1rem 4rem rgba(0,0,0,0.17);position:absolute;top:125%;display:grid;overflow:hidden;z-index:5}.search_results:empty{display:none}.search_title{padding:0.5rem 1rem 0.5rem 1rem;background:var(--theme);color:var(--light);font-size:0.9rem;opacity:0.87;text-transform:uppercase}.button{background-color:var(--theme);color:var(--light);border-radius:0.25rem;display:inline-block;padding:0.75rem 1.25rem;text-align:center}.button:hover{opacity:0.84}.button+.button{background-color:var(--haze);color:var(--dark)}.button_grid{display:grid;max-width:15rem;grid-gap:1rem;grid-template-columns:repeat(auto-fit, minmax(12rem, 1fr))}@media screen and (min-width: 557px){.button_grid{max-width:25rem}}.video{overflow:hidden;padding-bottom:56.25%;position:relative;height:0;margin:1.5rem 0;border-radius:0.6rem;background-color:var(--bg);box-shadow:0 1rem 2rem rgba(0,0,0,0.17)}.video iframe{left:0;top:0;height:100%;width:100%;border:none;position:absolute;transform:scale(1.02)}.icon{width:1.1rem;height:1.1rem;display:inline-flex;justify-content:center;align-items:center;margin:0 0.5rem}.link{opacity:0;position:relative}.link_owner:hover .link{opacity:1}.link_yank{opacity:1}.link_yanked{position:absolute;right:-2.2rem;top:-2rem;background-color:var(--theme);color:var(--light);width:7rem;padding:0.25rem 0.5rem;font-size:0.9rem;border-radius:1rem;text-align:center}.link_yanked::after{position:absolute;top:1rem;content:"";border-color:var(--theme) transparent;border-style:solid;border-width:1rem 1rem 0 1rem;height:0;width:0;transform-origin:50% 50%;transform:rotate(145deg);right:0.45rem}.gallery{width:100%;column-count:3;column-gap:1rem}@media screen and (max-width: 667px){.gallery{column-count:2}}.gallery_item{background-color:transparent;margin:0 0 1rem}.gallery_image{margin:0 auto}.pager{display:flex;justify-content:space-between;align-items:center;padding-top:2rem;margin:2rem 0;max-width:100vw;overflow:hidden}.pager svg{filter:opacity(0.75);width:1.25rem;height:1rem;transform-origin:50% 50%}.pager_lean{justify-content:flex-end}.pager_label{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.pager_link{padding:0.5rem 1rem;border-radius:0.25rem;width:12.5rem;max-width:40vw;position:relative;display:flex;align-items:center;text-align:center;justify-content:center}.pager_link::before,.pager_link::after{background-image:var(--next-icon);height:0.8rem;width:0.8rem;background-size:100%;background-repeat:no-repeat;transform-origin:50% 50%}.pager_item{display:flex;flex-direction:column;flex:1;max-width:48%}.pager_item.prev{align-items:flex-start}.pager_item.next{align-items:flex-end}.pager_item.next::after{content:""}.pager_item.prev .pager_link::before{content:"";transform:rotate(180deg);margin-right:0.67rem}.pager_item.next .pager_link::after{content:"";margin-left:0.67rem}.pager_item.next .pager_link{grid-template-columns:1fr 1.5rem}.pager_meta{margin:0.5rem 0}.color_mode{margin-left:1rem}.color_choice{outline:none;border:none;-webkit-appearance:none;height:1rem;position:relative;width:1rem;border-radius:1rem;cursor:pointer;z-index:2;right:0;filter:contrast(0.8)}.color_choice::after{content:"";top:0.1rem;bottom:0;left:0;position:absolute;height:1.3rem;background:var(--accent);width:1.3rem;border-radius:0.4rem;z-index:3;background-image:var(--sun-icon);background-size:60%;background-repeat:no-repeat;background-position:center}.color_icon{height:1rem;width:1rem;margin:0;z-index:4;position:absolute;transform:translateY(-50%);transition:transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);right:3.5rem}.tip{padding:1.5rem 1rem 1.5rem 1.5rem;margin:1.5rem 0;border-left:0.2rem solid var(--theme);position:relative;background:var(--accent)}.tip blockquote{padding:0;margin:0;border:none}.tip blockquote::before{display:none}.tip p:first-child,.tip p~p{padding-top:0}.tip p:last-child{padding-bottom:0}.tip_warning{--theme: var(--inline-color)}.tip_warning::before{transform:rotate(180deg)}.tip::before{content:"";position:absolute;left:-0.85rem;top:1.5rem;z-index:3;padding:0.75rem;transform-origin:50% 50%;border-radius:50%;background-color:var(--theme);background-image:var(--info-icon);background-size:12%;background-position:50% 50%;background-repeat:no-repeat}.tabs{display:flex;flex-wrap:wrap;margin:2rem 0 2rem 0;position:relative}.tabs.tabs-left{justify-content:flex-start}.tabs.tabs-left label.tab-label{margin-right:0.5rem}.tabs.tabs-left .tab-content{border-radius:0px 6px 6px 6px}.tabs.tabs-right{justify-content:flex-end}.tabs.tabs-right label.tab-label{margin-left:0.5rem}.tabs.tabs-right .tab-content{border-radius:6px 6px 6px 6px}.tabs input.tab-input{display:none}.tabs label.tab-label{background-color:var(--accent) transparent;border-color:var(--theme);border-radius:6px 6px 0px 0px;border-style:solid;border-bottom-style:hidden;border-width:2px;cursor:pointer;display:inline-block;order:1;padding:0.3rem 0.6rem;position:relative;top:2px;user-select:none}.tabs input.tab-input:checked+label.tab-label{background-color:var(--accent);border-color:var(--theme)}.tabs .tab-content{background-color:var(--accent);border-color:var(--theme);border-style:solid;border-width:2px;display:none;order:2;padding:1rem;width:100%}html[data-mode="dark"] .mermaid{--theme: darkgoldenrod;background-color:transparent !important;margin-bottom:2.5rem}html[data-mode="dark"] .mermaid svg{margin:0 auto;display:block}.post{margin:0 auto;width:100%}.post p,.post h1,.post h2,.post h3,.post h4,.post h5,.post h6,.post blockquote,.post ol,.post ul,.post .highlight_wrap,.post hr{max-width:840px !important;margin-left:auto;margin-right:auto}@media screen and (min-width: 1025px){.post img:not(.icon){display:block;width:100vw;max-width:1024px;margin-left:auto;margin-right:auto}}.post h2,.post h3,.post h4{margin:0.5rem auto;text-align:left;padding:5px 0 0 0}.post p{padding-bottom:0.5rem;padding-top:0.5rem;font-size:1.05rem}.posts{display:flex;justify-content:space-between;flex-flow:row wrap;width:100%;align-items:stretch}.posts:not(.aside){padding:0 30px}.post ol{padding:1rem 1.25rem}.post_body img{width:100%;max-width:100%}.post_inner a{color:var(--theme);transition:all 0.3s}.post_inner a:hover{opacity:0.8;text-decoration:underline}.post_inner img:not(.icon){margin-bottom:2rem;box-shadow:0 1.5rem 1rem -1rem rgba(0,0,0,0.25)}.post_inner img:not(.icon)~h1,.post_inner img:not(.icon)~h2,.post_inner img:not(.icon)~h3,.post_inner img:not(.icon)~h4{margin-top:0;padding-top:0}.post .icon{margin-top:0;margin-bottom:0}.post_date{color:var(--theme)}.post_copy{opacity:0;transition:opacity 0.3s ease-out}.post_item{box-shadow:0 0 3rem rgba(0,0,0,0.17);margin:1.25rem 0;border-radius:10px;overflow:hidden;width:100%}.post_item:hover{box-shadow:0 0 5rem rgba(0,0,0,0.255)}@media screen and (min-width: 667px){.post_item{width:47%}}.post_item:hover .post_copy{opacity:1}.post_link{padding:2.5px 0;font-size:1.25em;margin:2.5px 0;text-align:left}.post_meta{overflow:hidden;opacity:0.8;font-size:0.84rem;font-weight:500;display:inline-grid;grid-template-columns:auto 1fr;background-color:var(--light);padding:0;align-items:center;border-radius:0.3rem;color:var(--dark);text-transform:capitalize}.post_meta a:hover{color:var(--theme);text-decoration:underline;opacity:0.9}.post_extra{display:flex;justify-content:flex-end}.post_tag{font-size:0.75rem !important;font-weight:500;background:var(--theme);color:var(--light);padding:0.25rem 0.67rem !important;text-transform:uppercase;display:inline-flex;border-radius:5px}.post_title{margin:1.75rem 0 1rem}.post_time{background:var(--theme);display:inline-grid;padding:0.2rem 0.75rem;color:var(--light)}.post_thumbnail{width:100%;margin:0}.post_nav{padding:3rem 1.5rem;display:grid;margin:2.25rem auto 1rem;text-align:center;color:var(--theme);text-transform:uppercase}.post_nav,.post_nav span{position:relative;z-index:3}.post_nav::before{content:"";position:absolute;background:var(--accent);top:0;left:0;bottom:0;right:0;z-index:1;border-radius:1rem}.post_next{display:inline-grid;margin:0 auto;width:10rem;grid-template-columns:1fr 1.33rem}.post_next::after{content:"";background-image:var(--next-icon-path);background-repeat:repeat no-repeat;background-size:0.8rem;background-position:center right}.excerpt{padding:0 10px 1.5rem 10px;position:relative;z-index:1}.excerpt_meta{display:flex;justify-content:space-between;align-items:center;transform:translateY(-2.5rem);position:relative;z-index:5}.archive_item{display:grid;padding:1.5rem 0}.archive_title{margin:0}.article{box-shadow:0 0.5rem 2rem rgba(0,0,0,0.12);overflow:hidden;border-radius:0.5rem}.article_title{margin:0}.article_excerpt{transition:height 0.5s, opacity 0.5s}.article_excerpt:not(.visible){height:0;opacity:0}.article_excerpt,.article_meta{transform-origin:bottom}.article_meta{padding:10px 1.25rem 1.25rem;color:var(--text);position:relative;z-index:2;transition:margin-top 0.5s;background:var(--bg)}.article_meta.center_y{transform-origin:center;transition:transform 0.5s;display:flex;flex-direction:column;justify-content:center}@media screen and (min-width: 42rem){.article_meta.center_y{left:-2rem}}.article_thumb{display:grid;position:relative;z-index:0;overflow:hidden;height:15rem;background-size:cover;background-position:50% 50%}@media screen and (min-width: 35rem){.article_thumb{height:22.5rem}}.article_thumb img{transition:transform 0.5s, opacity 0.5s}.article_thumb::after{content:'';position:absolute;top:0;left:0;width:100%;bottom:0;z-index:1;background:var(--bg);opacity:0;transition:opacity 0.1s ease-out}.article_showcase .article_thumb{height:15rem}.article_showcase .article_meta{padding-top:1.5rem}.article:hover .article_thumb img{transform:scale(1.1)}.article:hover .article_thumb::after{transition:opacity 0.1s ease-out;opacity:0.5}.article:hover .article_excerpt:not(.visible){height:75px;opacity:1}.article:hover .article_meta:not(.center_y){margin-top:-75px}@media screen and (min-width: 769px){.article:hover .article_meta.center_y{transform:translateX(-3rem)}}.article:hover{box-shadow:0 1.5rem 6rem rgba(0,0,0,0.17)}.article:hover a{color:initial !important}.article_hidden{display:none}.wrap{max-width:1240px}@media screen and (min-width: 1640px){.wrap{max-width:1600px}}.wrap,.wrap{width:100%;padding:0 25px;margin:0 auto}.pt-1{padding-top:1.5rem}.pb-1{padding-bottom:1.5rem}.mt-1{margin-top:1.5rem}.mb-1{margin-bottom:1.5rem}.pt-2{padding-top:3rem}.pb-2{padding-bottom:3rem}.mt-2{margin-top:3rem}.mb-2{margin-bottom:3rem}.pt-3{padding-top:4.5rem}.pb-3{padding-bottom:4.5rem}.mt-3{margin-top:4.5rem}.mb-3{margin-bottom:4.5rem}.pt-4{padding-top:6rem}.pb-4{padding-bottom:6rem}.mt-4{margin-top:6rem}.mb-4{margin-bottom:6rem}.pt-5{padding-top:7.5rem}.pb-5{padding-bottom:7.5rem}.mt-5{margin-top:7.5rem}.mb-5{margin-bottom:7.5rem}.pt-6{padding-top:9rem}.pb-6{padding-bottom:9rem}.mt-6{margin-top:9rem}.mb-6{margin-bottom:9rem}.pt-7{padding-top:10.5rem}.pb-7{padding-bottom:10.5rem}.mt-7{margin-top:10.5rem}.mb-7{margin-bottom:10.5rem}.pt-8{padding-top:12rem}.pb-8{padding-bottom:12rem}.mt-8{margin-top:12rem}.mb-8{margin-bottom:12rem}.grid-2,.grid-3,.grid-4,.grid-auto,.grid-reverse{display:grid;grid-template-columns:1fr}[class*='grid-']{grid-gap:2rem}@media screen and (min-width: 42rem){.grid-auto{grid-template-columns:2fr 5fr}.grid-reverse{grid-template-columns:3fr 1fr}.grid-2{grid-template-columns:repeat(2, 1fr)}.grid-3{grid-template-columns:repeat(auto-fit, minmax(15rem, 1fr))}.grid-4{grid-template-columns:repeat(auto-fit, minmax(12rem, 1fr))}}.active{color:var(--theme)}.is{background:var(--theme);color:var(--light)}.toggle svg{fill:var(--text);display:inline-block;transform-origin:50% 50%;transform:scale(1.2);cursor:pointer;margin:0}.scrollable{width:100%;overflow-x:hidden;max-width:calc(100vw - 48px)}@media screen and (min-width: 768px){.scrollable{max-width:100%}}.scrollable:hover{overflow-x:auto}.chart{display:grid;grid-gap:1.5rem;min-width:0;max-width:98vw !important;max-height:98vw !important}.link{display:inline-flex;align-items:center;width:2.5rem;margin:0 0.25rem 0 0;padding:0 0.25rem;opacity:0;transform:translate(-0.33rem, 0.33rem);transition:opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1)}.link svg,.link img{width:1.5rem;height:1.5rem;fill:var(--theme)}.link_owner:hover .link{opacity:1}.copy{cursor:pointer}.standardize-input{appearance:none;-webkit-appearance:none}@keyframes pulse{0%{opacity:1}75%{opacity:0.1}100%{opacity:1}}code{font-size:15px;font-weight:400;overflow-y:hidden;display:block;font-family:'Monaco', monospace;word-break:break-all}code.noClass{color:var(--inline-color);display:inline;line-break:anywhere}.windows .highlight{overflow-x:hidden}.windows .highlight:hover{overflow-x:auto}.highlight{display:grid;width:100%;border-radius:0 0.2rem 0.2rem 0;overflow-x:auto;position:relative}.highlight_wrap{display:grid;background:var(--code-bg) !important;border-radius:0.5rem;position:relative;padding:0 1rem;margin:1.5rem auto 1rem auto}.highlight_wrap .highlight_wrap{margin:0;padding:0}.highlight_wrap+.highlight_wrap{margin-top:2.25rem}.highlight_wrap:hover>div{opacity:1}.highlight_wrap .lang{position:absolute;top:0;right:0;text-align:right;width:7.5rem;padding:0.5rem 1rem;font-style:italic;text-transform:uppercase;font-size:67%;opacity:0.5;color:var(--text)}.highlight_wrap:hover .lang{opacity:0.1}.highlight .highlight{margin:0}.highlight pre{color:var(--text) !important;border-radius:4px;font-family:'Monaco', monospace;padding-top:1.5rem;padding-bottom:2rem}.highlight table{display:grid;max-width:100%;margin-bottom:0;background:transparent}.highlight td,.highlight th{padding:0}.highlight .lntd{width:100%;border:none}.highlight .lntd:first-child,.highlight .lntd:first-child pre{width:2.5rem !important;padding-left:0;padding-right:0;color:rgba(255,255,255,0.5);user-select:none}.highlight .lntd:first-child pre{width:100%;display:flex;min-width:0;align-items:center;flex-direction:column}.err{color:#a61717}.hl{width:100%;background:var(--inline-color)}.ln,.lnt{margin-right:0.75rem;padding:0;transition:opacity 0.3s var(--ease)}.ln,.ln span,.lnt,.lnt span{color:var(--text);opacity:0.5;user-select:none}.k,.kc,.kd,.kn,.kp,.kr,.kt,.nt{color:#6ab825;font-weight:500}.kn,.kp{font-weight:400}.nb,.no,.nv{color:#24909d}.nc,.nf,.nn{color:#447fcf}.s,.sa,.sb,.sc,.dl,.sd,.s2,.se,.sh,.si,.sx,.sr,.s1,.ss{color:#ed9d13}.m,.mb,.mf,.mh,.mi,.il,.mo{color:#3677a9}.ow{color:#6ab825;font-weight:500}.c,.ch,.cm,.c1{color:#999;font-style:italic}.cs{color:#e50808;background-color:#520000;font-weight:500}.cp,.cpf{color:#cd2828;font-weight:500}.gd,.gr{color:#d22323}.ge{font-style:italic}.gh,.gu,.nd,.na,.ne{color:#ffa500;font-weight:500}.gi{color:#589819}.go{color:#ccc}.gp{color:#aaa}.gs{font-weight:500}.gt{color:#d22323}.w{color:#666}.hljs-string{color:#6ab825}.hljs-attr{color:#ed9d13}.p .hljs-attr{color:var(--light)}.pre_wrap{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}.pre_nolines.ln{display:none}.panel_box{display:inline-flex;perspective:300px;grid-gap:1rem;transition:opacity 0.3s var(--easing);background:var(--code-bg);padding:0.5rem 1.5rem;border-radius:2rem;align-items:center;position:absolute;right:0rem;top:-2.1rem;opacity:0;min-width:0}.panel_icon{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0.1rem;transform-origin:50% 50%;margin:0;min-width:0}.panel_icon.active{animation:pulse 0.1s linear}.panel_icon svg{fill:var(--text);width:1.5rem;height:1.5rem}.panel_hide{display:none}.panel_from{position:absolute;color:var(--theme);bottom:0;font-size:1.5rem;font-weight:500;padding:0.5rem 0;cursor:pointer;letter-spacing:0.1px;z-index:19}.panel_expanded .panel_from{display:none}.shell{position:relative}.shell::before{content:"$";position:relative;margin-right:0.36rem}.line-flex{display:flex;min-width:0}@font-face{font-family:'Metropolis';font-style:normal;font-weight:400;src:local("Metropolis Regular"),local("Metropolis-Regular"),url("../fonts/Metropolis-Regular.woff2") format("woff2"),url("../fonts/Metropolis-Regular.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:normal;font-weight:300;src:local("Metropolis Light"),local("Metropolis-Light"),url("../fonts/Metropolis-Light.woff2") format("woff2"),url("../fonts/Metropolis-Light.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:italic;font-weight:300;src:local("Metropolis Light Italic"),local("Metropolis-LightItalic"),url("../fonts/Metropolis-LightItalic.woff2") format("woff2"),url("../fonts/Metropolis-LightItalic.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:normal;font-weight:500;src:local("Metropolis Medium"),local("Metropolis-Medium"),url("../fonts/Metropolis-Medium.woff2") format("woff2"),url("../fonts/Metropolis-Medium.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:italic;font-weight:500;src:local("Metropolis Medium Italic"),local("Metropolis-MediumItalic"),url("../fonts/Metropolis-MediumItalic.woff2") format("woff2"),url("../fonts/Metropolis-MediumItalic.woff") format("woff");font-display:swap}@font-face{font-family:'Cookie';font-style:normal;font-weight:400;src:local("Cookie-Regular"),url("../fonts/cookie-v10-latin-regular.woff2") format("woff2"),url("../fonts/cookie-v10-latin-regular.woff") format("woff");font-display:swap}@keyframes chartjs-render-animation{0%{opacity:.99}100%{opacity:1}}.chartjs-render-monitor{animation:chartjs-render-animation 1ms}.chartjs-size-monitor,.chartjs-size-monitor-expand,.chartjs-size-monitor-shrink{position:absolute;direction:ltr;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1}.chartjs-size-monitor-expand>div{position:absolute;width:1000000px;height:1000000px;left:0;top:0}.chartjs-size-monitor-shrink>div{position:absolute;width:200%;height:200%;left:0;top:0}html[data-mode="dark"] .mermaid{--theme: darkgoldenrod;background-color:transparent !important;margin-bottom:2.5rem}html[data-mode="dark"] .mermaid svg{margin:0 auto;display:block}
+
+/*# sourceMappingURL=styles.css.map */
\ No newline at end of file
diff --git a/exampleSite/resources/_gen/assets/sass/main.sass_ae9eb86df8175869edaecf50caadd93b.json b/exampleSite/resources/_gen/assets/sass/main.sass_ae9eb86df8175869edaecf50caadd93b.json
new file mode 100644
index 0000000..c0aa4c9
--- /dev/null
+++ b/exampleSite/resources/_gen/assets/sass/main.sass_ae9eb86df8175869edaecf50caadd93b.json
@@ -0,0 +1 @@
+{"Target":"css/styles.8d8085f7db497b3f3b3071490f89d4ce22990b40da7e429db3a4bfbf559eb93c93a40c627e51f10b618139145d468ecfdccb9425643cc38726adff2ceaf5ad10.css","MediaType":"text/css","Data":{"Integrity":"sha512-jYCF99tJez87MHFJD4nUziKZC0DafkKds6S/v1WeuTyTpAxiflHxC2GBORRdRo7P3MuUJWQ8w4cmrf8s6vWtEA=="}}
\ No newline at end of file
diff --git a/exampleSite/resources/_gen/assets/sass/sass/main.sass_ae9eb86df8175869edaecf50caadd93b.content b/exampleSite/resources/_gen/assets/sass/sass/main.sass_ae9eb86df8175869edaecf50caadd93b.content
new file mode 100644
index 0000000..82175bb
--- /dev/null
+++ b/exampleSite/resources/_gen/assets/sass/sass/main.sass_ae9eb86df8175869edaecf50caadd93b.content
@@ -0,0 +1,3 @@
+html{--info-icon: url('http://localhost:1313/icons/info.svg');--sun-icon: url('http://localhost:1313/icons/sun.svg');--moon-icon: url('http://localhost:1313/icons/moon.svg');--next-icon: url('http://localhost:1313/icons/next.svg')}html{--color-mode: "light";--light: #fff;--dark: rgb(28,28,30);--haze: #f2f5f7;--bubble: rgb(36,36,38);--accent: var(--haze);--bg: var(--light);--code-bg: var(--accent);--overlay: var(--light);--text: #141010;--font: 'Metropolis', sans-serif;--border-color: #eee;--inline-color: darkgoldenrod;--theme: rgb(52,199,89);--ease: ease;--scroll-thumb: rgba(0,0,0,.06);--search-border-color: transparent;--next-icon-path: url(../images/icons/double-arrow.svg);--never-icon-path: url(../images/sitting.svg)}html[data-mode="dark"]{--color-mode: "dark";--theme: rgb(48,209,88);--bg: var(--dark);--text: #eee;--text-light: #fff;--accent: var(--bubble);--overlay: var(--bubble);--border-color: transparent;--scroll-thumb: rgba(255,255,255,.06);--search-bg: var(--accent);--search-border-color: var(--accent)}html[data-mode="dark"] *{box-shadow:none !important}html[data-mode="dark"] .color_choice::after{background-image:var(--moon-icon)}@media (prefers-color-scheme: dark){html[data-mode="auto"]{--color-mode: "dark";--theme: rgb(48,209,88);--bg: var(--dark);--text: #eee;--text-light: #fff;--accent: var(--bubble);--overlay: var(--bubble);--border-color: transparent;--scroll-thumb: rgba(255,255,255,.06);--search-bg: var(--accent);--search-border-color: var(--accent)}html[data-mode="auto"] *{box-shadow:none !important}}blockquote+.highlight_wrap{margin-top:2.25rem}*{box-sizing:border-box;margin:0;padding:0;scrollbar-color:var(--scroll-thumb) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:.5rem}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:.25rem}body,html{scroll-behavior:smooth;scroll-padding-top:1rem;font-kerning:normal;-webkit-text-size-adjust:100%;font-size:18px}@keyframes flash{0%{opacity:0}75%{opacity:0}100%{opacity:1}}body{font-family:var(--font);background-color:var(--bg);color:var(--text);line-height:1.5;margin:0 auto;position:relative;font-kerning:normal;display:flex;min-width:0;flex-direction:column;justify-content:space-between;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-overflow-scrolling:touch;max-width:1440px;animation:0.67s flash ease-in}@media screen and (min-width: 1640px){body{max-width:1600px}}a{text-decoration:none;color:inherit}p{padding:0.75rem 0}p:empty{display:none}li,li p{padding:0.25rem 0}blockquote{opacity:0.8;padding:1rem;position:relative;quotes:"“" "”" "‘" "’";margin:0.75rem 0;display:flex;flex-flow:row wrap;background-repeat:no-repeat;background-size:5rem;background-position:50% 50%;position:relative;background-color:var(--accent);border-radius:0.25rem;overflow:hidden}blockquote::before{content:"";padding:2px;position:absolute;top:0;bottom:0;left:0;background:var(--theme)}blockquote p{padding-left:0.5rem !important;font-size:1.1rem !important;width:100%;font-style:italic}h1,h2,h3,h4,h5{font-family:inherit;font-weight:500;padding:0.33rem 0;color:inherit;line-height:1.35}h1{font-size:200%}h2{font-size:175%}h3{font-size:150%}h4{font-size:125%}h5{font-size:120%}h6{font-size:100%}img,svg,figure{max-width:100%;vertical-align:middle}img{height:auto;margin:1rem auto;padding:0}main{flex:1}@media screen and (min-width: 42rem){main{padding-bottom:45px}}ol,ul{list-style:none}b,strong{font-weight:500}hr{border:none;padding:1px;background:var(--border-color);margin:1rem 0}.aside{overflow-y:auto;background:var(--bg);border-radius:0.25rem;align-self:start;max-height:80vh;position:sticky;z-index:9999;top:0;padding:1rem 0}@media screen and (min-width: 42rem){.aside{padding:1rem 1.5rem;top:2.5rem;margin-top:1rem;padding-top:0}}.aside_inner{height:0;overflow:hidden}@media screen and (min-width: 42rem){.aside_inner{height:initial}}.aside.show .aside_inner{height:initial;overflow:visible}.aside_toggle{padding:0.5rem 1.5rem;border-radius:0.5rem;background:var(--accent);transform:translateY(-1rem);display:flex;justify-content:space-between}@media screen and (min-width: 42rem){.aside_toggle{display:none}}.aside h3{position:relative}.aside ul{padding:0;list-style:none}th,td{padding:0.5rem;font-weight:400 !important}th:not(:first-child),td:not(:first-child){padding-left:1.5rem}thead{background:var(--theme);color:var(--light);font-weight:400;text-align:left}tbody tr:nth-child(even){background-color:var(--accent) !important;box-shadow:0 1rem 0.75rem -0.75rem rgba(0,0,0,0.07)}table{margin:1.5rem 0;width:100%}.main{flex:1}@media screen and (max-width: 667px){.main>.grid-auto{grid-gap:0}}.page-home h1{font-weight:300}.content ul,.content ol{padding-left:1.1rem}.content ul{list-style:initial}.content ol{list-style:decimal}.content a:not(.button){color:var(--theme)}::placeholder{font-size:1rem}svg.icon_sort{fill:var(--light);height:0.7rem;width:0.7rem;display:inline-block;margin-left:auto;vertical-align:middle}canvas{margin:2.5rem auto 0 auto;max-width:450px !important;max-height:450px !important}footer{min-height:150px}del{opacity:0.5}#toTop{background:transparent;outline:0.5rem solid transparent;height:2rem;width:2rem;cursor:pointer;padding:0.5rem;display:flex;align-items:center;justify-content:center;position:fixed;right:0;bottom:2.25rem;transform:rotate(45deg) translate(5rem);opacity:0;transition:opacity 0.5s var(--ease),transform 0.25s var(--ease);z-index:5}#toTop.active{right:1.5rem;opacity:1;transform:rotate(45deg) translate(0)}#toTop::after,#toTop::before{position:absolute;display:block;width:1rem;height:1rem;content:"";border-left:1px solid var(--text);border-top:1px solid var(--text)}#toTop::after{width:0.67rem;height:0.67rem;transform:translate(0.1rem, 0.1rem)}#searchpage{padding-top:5rem}.nav{display:grid;grid-gap:1rem;padding:0 1.5rem !important;align-items:center;background-color:var(--bg)}@media screen and (min-width: 992px){.nav{grid-template-columns:10rem 1fr}}.nav_brand{position:relative}.nav_brand picture,.nav_brand img{max-width:10rem}.nav_header{position:absolute;top:0;left:0;width:100%;background-color:var(--bg);z-index:999999}.nav_toggle{position:absolute;top:0;bottom:0;width:3rem;display:flex;align-items:center;justify-content:flex-end;text-align:center;right:0;color:var(--text)}@media screen and (min-width: 992px){.nav_toggle{display:none}}.nav_body{display:flex;flex-direction:column;background:var(--accent);position:fixed;left:0;top:0;bottom:0;height:100vh;transition:transform 0.25s var(--ease);transform:translateX(-101vw)}@media screen and (min-width: 992px){.nav_body{transform:translateX(0);position:relative;height:initial;justify-content:flex-end;background:transparent;flex-direction:row}}.nav.show .nav_body{transform:translateX(0);box-shadow:0 1rem 4rem rgba(0,0,0,0.1);background:var(--bg);overflow-y:auto}.nav.show .nav_body li:first-child{margin:1.5rem 1rem 0.5rem 1rem}.nav-link{display:inline-flex;padding:0.5rem 1rem}.nav-item{display:grid;align-items:center}@media screen and (min-width: 992px){.nav-item .search{margin-right:1.5rem}}.nav_repo picture,.nav_repo img{max-width:1.25rem}.section_title{font-size:1.25rem}.section_link{font-size:1rem;font-weight:400}.sidebar-link{display:grid;padding:0.2rem 0}.toc{border-left:2px solid var(--theme);padding:0 1rem;height:0;overflow:hidden;filter:opacity(0.87)}.toc_item{font-size:0.9rem}.toc_active{height:initial}.search{flex:1;display:flex;justify-content:flex-end;position:relative}.search_field{padding:0.5rem 1.5rem 0.5rem 2.5rem;border-radius:1.5rem;width:13.5rem;outline:none;border:1px solid var(--search-border-color);background:transparent;color:var(--text);box-shadow:0 1rem 4rem rgba(0,0,0,0.17);font-size:1rem}.search_field:hover,.search_field:focus{background:var(--search-bg)}.search_label{width:1rem;height:1rem;position:absolute;left:0.33rem;top:0.25rem;opacity:0.33}.search_label svg{width:100%;height:100%;fill:var(--text)}.search_result{padding:0.5rem 1rem;display:block}.search_result:not(.passive):hover{background-color:var(--theme);color:var(--light)}.search_result.passive{display:grid}.search_results{width:13.5rem;background-color:var(--overlay);border-radius:0 0 0.25rem 0.25rem;box-shadow:0 1rem 4rem rgba(0,0,0,0.17);position:absolute;top:125%;display:grid;overflow:hidden;z-index:5}.search_results:empty{display:none}.search_title{padding:0.5rem 1rem 0.5rem 1rem;background:var(--theme);color:var(--light);font-size:0.9rem;opacity:0.87;text-transform:uppercase}.button{background-color:var(--theme);color:var(--light);border-radius:0.25rem;display:inline-block;padding:0.75rem 1.25rem;text-align:center}.button:hover{opacity:0.84}.button+.button{background-color:var(--haze);color:var(--dark)}.button_grid{display:grid;max-width:15rem;grid-gap:1rem;grid-template-columns:repeat(auto-fit, minmax(12rem, 1fr))}@media screen and (min-width: 557px){.button_grid{max-width:25rem}}.video{overflow:hidden;padding-bottom:56.25%;position:relative;height:0;margin:1.5rem 0;border-radius:0.6rem;background-color:var(--bg);box-shadow:0 1rem 2rem rgba(0,0,0,0.17)}.video iframe{left:0;top:0;height:100%;width:100%;border:none;position:absolute;transform:scale(1.02)}.icon{width:1.1rem;height:1.1rem;display:inline-flex;justify-content:center;align-items:center;margin:0 0.5rem}.link{opacity:0;position:relative}.link_owner:hover .link{opacity:1}.link_yank{opacity:1}.link_yanked{position:absolute;right:-2.2rem;top:-2rem;background-color:var(--theme);color:var(--light);width:7rem;padding:0.25rem 0.5rem;font-size:0.9rem;border-radius:1rem;text-align:center}.link_yanked::after{position:absolute;top:1rem;content:"";border-color:var(--theme) transparent;border-style:solid;border-width:1rem 1rem 0 1rem;height:0;width:0;transform-origin:50% 50%;transform:rotate(145deg);right:0.45rem}.gallery{width:100%;column-count:3;column-gap:1rem}@media screen and (max-width: 667px){.gallery{column-count:2}}.gallery_item{background-color:transparent;margin:0 0 1rem}.gallery_image{margin:0 auto}.pager{display:flex;justify-content:space-between;align-items:center;padding-top:2rem;margin:2rem 0;max-width:100vw;overflow:hidden}.pager svg{filter:opacity(0.75);width:1.25rem;height:1rem;transform-origin:50% 50%}.pager_lean{justify-content:flex-end}.pager_label{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.pager_link{padding:0.5rem 1rem;border-radius:0.25rem;width:12.5rem;max-width:40vw;position:relative;display:flex;align-items:center;text-align:center;justify-content:center}.pager_link::before,.pager_link::after{background-image:var(--next-icon);height:0.8rem;width:0.8rem;background-size:100%;background-repeat:no-repeat;transform-origin:50% 50%}.pager_item{display:flex;flex-direction:column;flex:1;max-width:48%}.pager_item.prev{align-items:flex-start}.pager_item.next{align-items:flex-end}.pager_item.next::after{content:""}.pager_item.prev .pager_link::before{content:"";transform:rotate(180deg);margin-right:0.67rem}.pager_item.next .pager_link::after{content:"";margin-left:0.67rem}.pager_item.next .pager_link{grid-template-columns:1fr 1.5rem}.pager_meta{margin:0.5rem 0}.color_mode{height:1rem;margin-left:1.5rem}.color_choice{outline:none;border:none;-webkit-appearance:none;height:1rem;position:relative;width:1rem;border-radius:1rem;cursor:pointer;z-index:2;right:0;filter:contrast(0.8)}.color_choice::after{content:"";top:0.1rem;bottom:0;left:0;position:absolute;height:0.8rem;background:var(--accent);width:0.8rem;border-radius:0.25rem;z-index:3;transform:scale(1.67);transform-origin:50% 50%;transition:transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);will-change:transform;background-image:var(--sun-icon);background-size:60%;background-repeat:no-repeat;background-position:center}.color_icon{height:1rem;width:1rem;margin:0;z-index:4;position:absolute;transform:translateY(-50%);transition:transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);right:3.5rem}.tip{padding:1.5rem 1rem 1.5rem 1.5rem;margin:1.5rem 0;border-left:0.2rem solid var(--theme);position:relative;background:var(--accent)}.tip blockquote{padding:0;margin:0;border:none}.tip blockquote::before{display:none}.tip p:first-child,.tip p~p{padding-top:0}.tip p:last-child{padding-bottom:0}.tip_warning{--theme: var(--inline-color)}.tip_warning::before{transform:rotate(180deg)}.tip::before{content:"";position:absolute;left:-0.85rem;top:1.5rem;z-index:3;padding:0.75rem;transform-origin:50% 50%;border-radius:50%;background-color:var(--theme);background-image:var(--info-icon);background-size:12%;background-position:50% 50%;background-repeat:no-repeat}.tabs{display:flex;flex-wrap:wrap;margin:2rem 0 2rem 0;position:relative}.tabs.tabs-left{justify-content:flex-start}.tabs.tabs-left label.tab-label{margin-right:0.5rem}.tabs.tabs-left .tab-content{border-radius:0px 6px 6px 6px}.tabs.tabs-right{justify-content:flex-end}.tabs.tabs-right label.tab-label{margin-left:0.5rem}.tabs.tabs-right .tab-content{border-radius:6px 6px 6px 6px}.tabs input.tab-input{display:none}.tabs label.tab-label{background-color:var(--accent) transparent;border-color:var(--theme);border-radius:6px 6px 0px 0px;border-style:solid;border-bottom-style:hidden;border-width:2px;cursor:pointer;display:inline-block;order:1;padding:0.3rem 0.6rem;position:relative;top:2px;user-select:none}.tabs input.tab-input:checked+label.tab-label{background-color:var(--accent);border-color:var(--theme)}.tabs .tab-content{background-color:var(--accent);border-color:var(--theme);border-style:solid;border-width:2px;display:none;order:2;padding:1rem;width:100%}html[data-mode="dark"] .mermaid{--theme: darkgoldenrod;background-color:transparent !important;margin-bottom:2.5rem}html[data-mode="dark"] .mermaid svg{margin:0 auto;display:block}.post{margin:0 auto;width:100%}.post p,.post h1,.post h2,.post h3,.post h4,.post h5,.post h6,.post blockquote,.post ol,.post ul,.post .highlight_wrap,.post hr{max-width:840px !important;margin-left:auto;margin-right:auto}@media screen and (min-width: 1025px){.post img:not(.icon){display:block;width:100vw;max-width:1024px;margin-left:auto;margin-right:auto}}.post h2,.post h3,.post h4{margin:0.5rem auto;text-align:left;padding:5px 0 0 0}.post p{padding-bottom:0.5rem;padding-top:0.5rem;font-size:1.05rem}.posts{display:flex;justify-content:space-between;flex-flow:row wrap;width:100%;align-items:stretch}.posts:not(.aside){padding:0 30px}.post ol{padding:1rem 1.25rem}.post_body img{width:100%;max-width:100%}.post_inner a{color:var(--theme);transition:all 0.3s}.post_inner a:hover{opacity:0.8;text-decoration:underline}.post_inner img:not(.icon){margin-bottom:2rem;box-shadow:0 1.5rem 1rem -1rem rgba(0,0,0,0.25)}.post_inner img:not(.icon)~h1,.post_inner img:not(.icon)~h2,.post_inner img:not(.icon)~h3,.post_inner img:not(.icon)~h4{margin-top:0;padding-top:0}.post .icon{margin-top:0;margin-bottom:0}.post_date{color:var(--theme)}.post_copy{opacity:0;transition:opacity 0.3s ease-out}.post_item{box-shadow:0 0 3rem rgba(0,0,0,0.17);margin:1.25rem 0;border-radius:10px;overflow:hidden;width:100%}.post_item:hover{box-shadow:0 0 5rem rgba(0,0,0,0.255)}@media screen and (min-width: 667px){.post_item{width:47%}}.post_item:hover .post_copy{opacity:1}.post_link{padding:2.5px 0;font-size:1.25em;margin:2.5px 0;text-align:left}.post_meta{overflow:hidden;opacity:0.8;font-size:0.84rem;font-weight:500;display:inline-grid;grid-template-columns:auto 1fr;background-color:var(--light);padding:0;align-items:center;border-radius:0.3rem;color:var(--dark);text-transform:capitalize}.post_meta a:hover{color:var(--theme);text-decoration:underline;opacity:0.9}.post_extra{display:flex;justify-content:flex-end}.post_tag{font-size:0.75rem !important;font-weight:500;background:var(--theme);color:var(--light);padding:0.25rem 0.67rem !important;text-transform:uppercase;display:inline-flex;border-radius:5px}.post_title{margin:1.75rem 0 1rem}.post_time{background:var(--theme);display:inline-grid;padding:0.2rem 0.75rem;color:var(--light)}.post_thumbnail{width:100%;margin:0}.post_nav{padding:3rem 1.5rem;display:grid;margin:2.25rem auto 1rem;text-align:center;color:var(--theme);text-transform:uppercase}.post_nav,.post_nav span{position:relative;z-index:3}.post_nav::before{content:"";position:absolute;background:var(--accent);top:0;left:0;bottom:0;right:0;z-index:1;border-radius:1rem}.post_next{display:inline-grid;margin:0 auto;width:10rem;grid-template-columns:1fr 1.33rem}.post_next::after{content:"";background-image:var(--next-icon-path);background-repeat:repeat no-repeat;background-size:0.8rem;background-position:center right}.excerpt{padding:0 10px 1.5rem 10px;position:relative;z-index:1}.excerpt_meta{display:flex;justify-content:space-between;align-items:center;transform:translateY(-2.5rem);position:relative;z-index:5}.archive_item{display:grid;padding:1.5rem 0}.archive_title{margin:0}.article{box-shadow:0 0.5rem 2rem rgba(0,0,0,0.12);overflow:hidden;border-radius:0.5rem}.article_title{margin:0}.article_excerpt{transition:height 0.5s, opacity 0.5s}.article_excerpt:not(.visible){height:0;opacity:0}.article_excerpt,.article_meta{transform-origin:bottom}.article_meta{padding:10px 1.25rem 1.25rem;color:var(--text);position:relative;z-index:2;transition:margin-top 0.5s;background:var(--bg)}.article_meta.center_y{transform-origin:center;transition:transform 0.5s;display:flex;flex-direction:column;justify-content:center}@media screen and (min-width: 42rem){.article_meta.center_y{left:-2rem}}.article_thumb{display:grid;position:relative;z-index:0;overflow:hidden;height:15rem;background-size:cover;background-position:50% 50%}@media screen and (min-width: 35rem){.article_thumb{height:22.5rem}}.article_thumb img{transition:transform 0.5s, opacity 0.5s}.article_thumb::after{content:'';position:absolute;top:0;left:0;width:100%;bottom:0;z-index:1;background:var(--bg);opacity:0;transition:opacity 0.1s ease-out}.article_showcase .article_thumb{height:15rem}.article_showcase .article_meta{padding-top:1.5rem}.article:hover .article_thumb img{transform:scale(1.1)}.article:hover .article_thumb::after{transition:opacity 0.1s ease-out;opacity:0.5}.article:hover .article_excerpt:not(.visible){height:75px;opacity:1}.article:hover .article_meta:not(.center_y){margin-top:-75px}@media screen and (min-width: 769px){.article:hover .article_meta.center_y{transform:translateX(-3rem)}}.article:hover{box-shadow:0 1.5rem 6rem rgba(0,0,0,0.17)}.article:hover a{color:initial !important}.article_hidden{display:none}.wrap{max-width:1240px}@media screen and (min-width: 1640px){.wrap{max-width:1600px}}.wrap,.wrap{width:100%;padding:0 25px;margin:0 auto}.pt-1{padding-top:1.5rem}.pb-1{padding-bottom:1.5rem}.mt-1{margin-top:1.5rem}.mb-1{margin-bottom:1.5rem}.pt-2{padding-top:3rem}.pb-2{padding-bottom:3rem}.mt-2{margin-top:3rem}.mb-2{margin-bottom:3rem}.pt-3{padding-top:4.5rem}.pb-3{padding-bottom:4.5rem}.mt-3{margin-top:4.5rem}.mb-3{margin-bottom:4.5rem}.pt-4{padding-top:6rem}.pb-4{padding-bottom:6rem}.mt-4{margin-top:6rem}.mb-4{margin-bottom:6rem}.pt-5{padding-top:7.5rem}.pb-5{padding-bottom:7.5rem}.mt-5{margin-top:7.5rem}.mb-5{margin-bottom:7.5rem}.pt-6{padding-top:9rem}.pb-6{padding-bottom:9rem}.mt-6{margin-top:9rem}.mb-6{margin-bottom:9rem}.pt-7{padding-top:10.5rem}.pb-7{padding-bottom:10.5rem}.mt-7{margin-top:10.5rem}.mb-7{margin-bottom:10.5rem}.pt-8{padding-top:12rem}.pb-8{padding-bottom:12rem}.mt-8{margin-top:12rem}.mb-8{margin-bottom:12rem}.grid-2,.grid-3,.grid-4,.grid-auto,.grid-reverse{display:grid;grid-template-columns:1fr}[class*='grid-']{grid-gap:2rem}@media screen and (min-width: 42rem){.grid-auto{grid-template-columns:2fr 5fr}.grid-reverse{grid-template-columns:3fr 1fr}.grid-2{grid-template-columns:repeat(2, 1fr)}.grid-3{grid-template-columns:repeat(auto-fit, minmax(15rem, 1fr))}.grid-4{grid-template-columns:repeat(auto-fit, minmax(12rem, 1fr))}}.active{color:var(--theme)}.is{background:var(--theme);color:var(--light)}.toggle svg{fill:var(--text);display:inline-block;transform-origin:50% 50%;transform:scale(1.2);cursor:pointer;margin:0}.scrollable{width:100%;overflow-x:hidden;max-width:calc(100vw - 48px)}@media screen and (min-width: 768px){.scrollable{max-width:100%}}.scrollable:hover{overflow-x:auto}.chart{display:grid;grid-gap:1.5rem;min-width:0;max-width:98vw !important;max-height:98vw !important}.link{display:inline-flex;align-items:center;width:2.5rem;margin:0 0.25rem;padding:0 0.25rem;opacity:0;transition:opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1)}.link svg,.link img{width:1.5rem;height:1.5rem;fill:var(--theme)}.link_owner:hover .link{opacity:0.9}.copy{cursor:pointer}.standardize-input{appearance:none;-webkit-appearance:none}@keyframes pulse{0%{opacity:1}75%{opacity:0.1}100%{opacity:1}}code{font-size:15px;font-weight:400;overflow-y:hidden;display:block;font-family:'Monaco', monospace;word-break:break-all}code.noClass{color:var(--inline-color);display:inline;line-break:anywhere}.windows .highlight{overflow-x:hidden}.windows .highlight:hover{overflow-x:auto}.highlight{display:grid;width:100%;border-radius:0 0.2rem 0.2rem 0;overflow-x:auto;position:relative}.highlight_wrap{display:grid;background:var(--code-bg) !important;border-radius:0.5rem;position:relative;padding:0 1rem;margin:1.5rem auto 1rem auto}.highlight_wrap .highlight_wrap{margin:0;padding:0}.highlight_wrap+.highlight_wrap{margin-top:2.25rem}.highlight_wrap:hover>div{opacity:1}.highlight_wrap .lang{position:absolute;top:0;right:0;text-align:right;width:7.5rem;padding:0.5rem 1rem;font-style:italic;text-transform:uppercase;font-size:67%;opacity:0.5;color:var(--text)}.highlight_wrap:hover .lang{opacity:0.1}.highlight .highlight{margin:0}.highlight pre{color:var(--text) !important;border-radius:4px;font-family:'Monaco', monospace;padding-top:1.5rem;padding-bottom:2rem}.highlight table{display:grid;max-width:100%;margin-bottom:0;background:transparent}.highlight td,.highlight th{padding:0}.highlight .lntd{width:100%;border:none}.highlight .lntd:first-child,.highlight .lntd:first-child pre{width:2.5rem !important;padding-left:0;padding-right:0;color:rgba(255,255,255,0.5);user-select:none}.highlight .lntd:first-child pre{width:100%;display:flex;min-width:0;align-items:center;flex-direction:column}.err{color:#a61717}.hl{width:100%;background:var(--inline-color)}.ln,.lnt{margin-right:0.75rem;padding:0;transition:opacity 0.3s var(--ease)}.ln,.ln span,.lnt,.lnt span{color:var(--text);opacity:0.5;user-select:none}.k,.kc,.kd,.kn,.kp,.kr,.kt,.nt{color:#6ab825;font-weight:500}.kn,.kp{font-weight:400}.nb,.no,.nv{color:#24909d}.nc,.nf,.nn{color:#447fcf}.s,.sa,.sb,.sc,.dl,.sd,.s2,.se,.sh,.si,.sx,.sr,.s1,.ss{color:#ed9d13}.m,.mb,.mf,.mh,.mi,.il,.mo{color:#3677a9}.ow{color:#6ab825;font-weight:500}.c,.ch,.cm,.c1{color:#999;font-style:italic}.cs{color:#e50808;background-color:#520000;font-weight:500}.cp,.cpf{color:#cd2828;font-weight:500}.gd,.gr{color:#d22323}.ge{font-style:italic}.gh,.gu,.nd,.na,.ne{color:#ffa500;font-weight:500}.gi{color:#589819}.go{color:#ccc}.gp{color:#aaa}.gs{font-weight:500}.gt{color:#d22323}.w{color:#666}.hljs-string{color:#6ab825}.hljs-attr{color:#ed9d13}.p .hljs-attr{color:var(--light)}.pre_wrap{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}.pre_nolines.ln{display:none}.panel_box{display:inline-flex;perspective:300px;grid-gap:1rem;transition:opacity 0.3s var(--easing);background:var(--code-bg);padding:0.5rem 1.5rem;border-radius:2rem;align-items:center;position:absolute;right:0rem;top:-2.1rem;opacity:0;min-width:0}.panel_icon{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0.1rem;transform-origin:50% 50%;margin:0;min-width:0}.panel_icon.active{animation:pulse 0.1s linear}.panel_icon svg{fill:var(--text);width:1.5rem;height:1.5rem}.panel_hide{display:none}.panel_from{position:absolute;color:var(--theme);bottom:0;font-size:1.5rem;font-weight:500;padding:0.5rem 0;cursor:pointer;letter-spacing:0.1px;z-index:19}.panel_expanded .panel_from{display:none}.shell{position:relative}.shell::before{content:"$";position:relative;margin-right:0.36rem}.line-flex{display:flex;min-width:0}@font-face{font-family:'Metropolis';font-style:normal;font-weight:400;src:local("Metropolis Regular"),local("Metropolis-Regular"),url("../fonts/Metropolis-Regular.woff2") format("woff2"),url("../fonts/Metropolis-Regular.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:normal;font-weight:300;src:local("Metropolis Light"),local("Metropolis-Light"),url("../fonts/Metropolis-Light.woff2") format("woff2"),url("../fonts/Metropolis-Light.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:italic;font-weight:300;src:local("Metropolis Light Italic"),local("Metropolis-LightItalic"),url("../fonts/Metropolis-LightItalic.woff2") format("woff2"),url("../fonts/Metropolis-LightItalic.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:normal;font-weight:500;src:local("Metropolis Medium"),local("Metropolis-Medium"),url("../fonts/Metropolis-Medium.woff2") format("woff2"),url("../fonts/Metropolis-Medium.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:italic;font-weight:500;src:local("Metropolis Medium Italic"),local("Metropolis-MediumItalic"),url("../fonts/Metropolis-MediumItalic.woff2") format("woff2"),url("../fonts/Metropolis-MediumItalic.woff") format("woff");font-display:swap}@font-face{font-family:'Cookie';font-style:normal;font-weight:400;src:local("Cookie-Regular"),url("../fonts/cookie-v10-latin-regular.woff2") format("woff2"),url("../fonts/cookie-v10-latin-regular.woff") format("woff");font-display:swap}@keyframes chartjs-render-animation{0%{opacity:.99}100%{opacity:1}}.chartjs-render-monitor{animation:chartjs-render-animation 1ms}.chartjs-size-monitor,.chartjs-size-monitor-expand,.chartjs-size-monitor-shrink{position:absolute;direction:ltr;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1}.chartjs-size-monitor-expand>div{position:absolute;width:1000000px;height:1000000px;left:0;top:0}.chartjs-size-monitor-shrink>div{position:absolute;width:200%;height:200%;left:0;top:0}html[data-mode="dark"] .mermaid{--theme: darkgoldenrod;background-color:transparent !important;margin-bottom:2.5rem}html[data-mode="dark"] .mermaid svg{margin:0 auto;display:block}
+
+/*# sourceMappingURL=styles.css.map */
\ No newline at end of file
diff --git a/exampleSite/resources/_gen/assets/sass/sass/main.sass_ae9eb86df8175869edaecf50caadd93b.json b/exampleSite/resources/_gen/assets/sass/sass/main.sass_ae9eb86df8175869edaecf50caadd93b.json
new file mode 100644
index 0000000..316fba8
--- /dev/null
+++ b/exampleSite/resources/_gen/assets/sass/sass/main.sass_ae9eb86df8175869edaecf50caadd93b.json
@@ -0,0 +1 @@
+{"Target":"css/styles.5403a82853549c7143980076de5a74b1acfa655a8f3f490771cdeb6b1bb85c19fc018d76c22b67654b39bb14a35e359f243b77c63d68aa963df466a37735b351.css","MediaType":"text/css","Data":{"Integrity":"sha512-VAOoKFNUnHFDmAB23lp0saz6ZVqPP0kHcc3raxu4XBn8AY12witnZUs5uxSjXjWfJDt3xj1oqpY99GajdzWzUQ=="}}
\ No newline at end of file
diff --git a/exampleSite/resources/_gen/assets/sass/sass/main.sass_ca26857cefa9076967ab300682271513.content b/exampleSite/resources/_gen/assets/sass/sass/main.sass_ca26857cefa9076967ab300682271513.content
new file mode 100644
index 0000000..a7944d4
--- /dev/null
+++ b/exampleSite/resources/_gen/assets/sass/sass/main.sass_ca26857cefa9076967ab300682271513.content
@@ -0,0 +1,3 @@
+html{--infoIcon: url('http://localhost:1313/icons/info.svg');--sunIcon: url('http://localhost:1313/icons/sun.svg');--moonIcon: url('http://localhost:1313/icons/moon.svg');--nextIcon: url('http://localhost:1313/icons/next.svg')}html{--color-mode: "light";--light: #fff;--dark: rgb(28,28,30);--haze: #f2f5f7;--bubble: rgb(36,36,38);--accent: var(--haze);--bg: var(--light);--code-bg: var(--accent);--overlay: var(--light);--text: #111;--font: 'Metropolis', sans-serif;--border-color: #eee;--inline-color: darkgoldenrod;--theme: rgb(52,199,89);--ease: ease;--search-border-color: transparent}html[data-mode="dark"]{--color-mode: "dark";--theme: rgb(48,209,88);--bg: var(--dark);--text: #eee;--accent: var(--bubble);--overlay: var(--bubble);--border-color: transparent;--search-bg: var(--accent);--search-border-color: var(--accent)}html[data-mode="dark"] *{box-shadow:none !important}html[data-mode="dark"] .color_choice::after{background-image:var(--moonIcon)}@media (prefers-color-scheme: dark){html.dark:not([data-mode="light"]){--color-mode: "dark";--theme: rgb(48,209,88);--bg: var(--dark);--text: #eee;--accent: var(--bubble);--overlay: var(--bubble);--border-color: transparent;--search-bg: var(--accent);--search-border-color: var(--accent)}html.dark:not([data-mode="light"]) *{box-shadow:none !important}}blockquote+.highlight_wrap{margin-top:2.25rem}*{box-sizing:border-box;-webkit-appearance:none;margin:0;padding:0}body,html{scroll-behavior:smooth;scroll-padding-top:1rem;font-kerning:normal;-webkit-text-size-adjust:100%;font-size:18px}body{font-family:var(--font);background-color:var(--bg);color:var(--text);line-height:1.5;margin:0 auto;position:relative;font-kerning:normal;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-overflow-scrolling:touch;max-width:1440px}@media screen and (min-width: 1640px){body{max-width:1600px}}a{text-decoration:none;color:inherit}p{padding:0.75rem 0}p:empty{display:none}li,li p{padding:0.25rem 0}blockquote{opacity:0.8;padding:1rem;position:relative;quotes:"“" "”" "‘" "’";margin:0.75rem 0;display:flex;flex-flow:row wrap;background-repeat:no-repeat;background-size:5rem;background-position:50% 50%;position:relative;background-color:var(--accent);border-radius:0.25rem;overflow:hidden}blockquote::before{content:"";padding:2px;position:absolute;top:0;bottom:0;left:0;background:var(--theme)}blockquote p{padding-left:0.5rem !important;font-size:1.1rem !important;width:100%;font-style:italic}h1,h2,h3,h4,h5{font-family:inherit;font-weight:500;padding:0.33rem 0;color:inherit;line-height:1.35}h1{font-size:200%}h2{font-size:175%}h3{font-size:150%}h4{font-size:125%}h5{font-size:120%}h6{font-size:100%}img,svg,figure{max-width:100%;vertical-align:middle}img{height:auto;margin:1rem auto;padding:0}main{flex:1}@media screen and (min-width: 42rem){main{padding-bottom:45px}}ol,ul{list-style:none}b,strong{font-weight:500}hr{border:none;padding:1px;background:var(--border-color);margin:1rem 0}.aside{overflow-y:auto;background:var(--bg);border-radius:0.25rem;align-self:start;max-height:80vh;position:sticky;z-index:9999;top:0;padding:1rem 0}@media screen and (min-width: 42rem){.aside{padding:1rem 1.5rem;top:2.5rem;margin-top:1rem;padding-top:0}}.aside_inner{height:0;overflow:hidden}@media screen and (min-width: 42rem){.aside_inner{height:initial}}.aside.show .aside_inner{height:initial;overflow:visible}.aside_toggle{padding:1.5rem 0;margin:-1.5rem 0;display:flex;justify-content:space-between}@media screen and (min-width: 42rem){.aside_toggle{display:none}}.aside h3{position:relative}.aside ul{padding:0;list-style:none}th,td{padding:0.5rem;font-weight:400 !important}th:not(:first-child),td:not(:first-child){padding-left:1.5rem}thead{background:var(--theme);color:var(--light);font-weight:400;text-align:left}tbody tr:nth-child(even){background-color:var(--accent) !important;box-shadow:0 1rem 0.75rem -0.75rem rgba(0,0,0,0.07)}table{margin:1.5rem 0;width:100%}.main{flex:1}.page-home h1{font-weight:300}.content ul,.content ol{padding-left:1.1rem}.content ul{list-style:initial}.content ol{list-style:decimal}.content a:not(.button){color:var(--theme)}::placeholder{font-size:1rem}svg.icon_sort{fill:var(--light);height:0.7rem;width:0.7rem;display:inline-block;margin-left:auto;vertical-align:middle}canvas{margin:2.5rem auto 0 auto;max-width:450px !important;max-height:450px !important}footer{min-height:150px}del{opacity:0.5}#toTop{background:transparent;outline:0.5rem solid transparent;height:2rem;width:2rem;cursor:pointer;padding:0.5rem;display:flex;align-items:center;justify-content:center;position:fixed;right:0;bottom:2.25rem;transform:rotate(45deg) translate(5rem);opacity:0;transition:opacity 0.5s var(--ease),transform 0.25s var(--ease);z-index:5}#toTop.active{right:1.5rem;opacity:1;transform:rotate(45deg) translate(0)}#toTop::after,#toTop::before{position:absolute;display:block;width:1rem;height:1rem;content:"";border-left:1px solid var(--text);border-top:1px solid var(--text)}#toTop::after{width:0.67rem;height:0.67rem;transform:translate(0.1rem, 0.1rem)}.nav{display:grid;grid-gap:1rem;padding:0 1.5rem !important;align-items:center;background-color:var(--bg)}@media screen and (min-width: 992px){.nav{grid-template-columns:10rem 1fr}}.nav_brand{position:relative}.nav_brand picture,.nav_brand img{max-width:10rem}.nav_header{position:absolute;top:0;left:0;width:100%;background-color:var(--bg);z-index:999999}.nav_toggle{position:absolute;top:0;bottom:0;width:3rem;display:flex;align-items:center;justify-content:flex-end;text-align:center;right:0;color:var(--text)}@media screen and (min-width: 992px){.nav_toggle{display:none}}.nav_body{display:flex;flex-direction:column;background:var(--accent);position:fixed;left:0;top:0;bottom:0;height:100vh;transition:transform 0.25s var(--ease);transform:translateX(-101vw)}@media screen and (min-width: 992px){.nav_body{transform:translateX(0);position:relative;height:initial;justify-content:flex-end;background:transparent;flex-direction:row}}.nav.show .nav_body{transform:translateX(0);box-shadow:0 1rem 4rem rgba(0,0,0,0.1);background:var(--bg)}.nav.show .nav_body li:first-child{margin:1.5rem 1rem 0.5rem 1rem}.nav-link{display:inline-flex;padding:0.5rem 1rem}.nav-item{display:grid;align-items:center}@media screen and (min-width: 992px){.nav-item .search{margin-right:1.5rem}}.nav_repo picture,.nav_repo img{max-width:1.25rem}.section_title{font-size:1.25rem}.section_link{font-size:1rem;font-weight:400}.sidebar-link{display:grid;padding:0.2rem 0}.toc{border-left:2px solid var(--theme);padding:0 1rem;height:0;overflow:hidden;filter:opacity(0.87)}.toc_item{font-size:0.9rem}.toc_active{height:initial}.search{flex:1;display:flex;justify-content:flex-end;position:relative}.search_field{padding:0.5rem 1.5rem 0.5rem 2.5rem;border-radius:1.5rem;width:13.5rem;outline:none;border:1px solid var(--search-border-color);background:transparent;color:var(--text);box-shadow:0 1rem 4rem rgba(0,0,0,0.17);font-size:1rem}.search_field:hover,.search_field:focus{background:var(--search-bg)}.search_label{width:1rem;height:1rem;position:absolute;left:0.33rem;top:0.25rem;opacity:0.33}.search_label svg{width:100%;height:100%;fill:var(--text)}.search_result{padding:0.5rem 1rem}.search_result:not(.passive):hover{background-color:var(--theme);color:var(--light)}.search_result.passive{display:grid}.search_results{width:13.5rem;background-color:var(--overlay);border-radius:0 0 0.25rem 0.25rem;box-shadow:0 1rem 4rem rgba(0,0,0,0.17);position:absolute;top:125%;display:grid;overflow:hidden;z-index:5}.search_results:empty{display:none}.search_title{padding:0.5rem 1rem 0.5rem 1rem;background:var(--theme);color:var(--light);font-size:0.9rem;opacity:0.87;text-transform:uppercase}.button{background-color:var(--theme);color:var(--light);border-radius:0.25rem;display:inline-block;padding:0.75rem 1.25rem;text-align:center}.button:hover{opacity:0.84}.button+.button{background-color:var(--haze);color:var(--dark)}.button_grid{display:grid;max-width:15rem;grid-gap:1rem;grid-template-columns:repeat(auto-fit, minmax(12rem, 1fr))}@media screen and (min-width: 557px){.button_grid{max-width:25rem}}.video{overflow:hidden;padding-bottom:56.25%;position:relative;height:0;margin:1.5rem 0;border-radius:0.6rem;background-color:var(--bg);box-shadow:0 1rem 2rem rgba(0,0,0,0.17)}.video iframe{left:0;top:0;height:100%;width:100%;border:none;position:absolute;transform:scale(1.02)}.icon{width:1.1rem;height:1.1rem;display:inline-flex;justify-content:center;align-items:center;margin:0 0.5rem}.link{opacity:0;position:relative}.link_owner:hover .link{opacity:1}.link_yank{opacity:1}.link_yanked{position:absolute;right:-2.2rem;top:-2rem;background-color:var(--theme);color:var(--light);width:7rem;padding:0.25rem 0.5rem;font-size:0.9rem;border-radius:1rem;text-align:center}.link_yanked::after{position:absolute;top:1rem;content:"";border-color:var(--theme) transparent;border-style:solid;border-width:1rem 1rem 0 1rem;height:0;width:0;transform-origin:50% 50%;transform:rotate(145deg);right:0.45rem}.gallery{width:100%;column-count:3;column-gap:1rem}@media screen and (max-width: 667px){.gallery{column-count:2}}.gallery_item{background-color:transparent;margin:0 0 1rem}.gallery_image{margin:0 auto}.pager{display:flex;justify-content:space-between;align-items:center;padding-top:2rem;margin:2rem 0;max-width:100vw;overflow:hidden}.pager svg{filter:opacity(0.75);width:1.25rem;height:1rem;transform-origin:50% 50%}.pager_lean{justify-content:flex-end}.pager_label{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.pager_link{padding:0.5rem 1rem;border-radius:0.25rem;width:12.5rem;max-width:40vw;position:relative;display:flex;align-items:center;text-align:center;justify-content:center}.pager_link::before,.pager_link::after{background-image:var(--nextIcon);height:0.8rem;width:0.8rem;background-size:100%;background-repeat:no-repeat;transform-origin:50% 50%}.pager_item{display:flex;flex-direction:column;flex:1;max-width:48%}.pager_item.prev{align-items:flex-start}.pager_item.next{align-items:flex-end}.pager_item.next::after{content:""}.pager_item.prev .pager_link::before{content:"";transform:rotate(180deg);margin-right:0.67rem}.pager_item.next .pager_link::after{content:"";margin-left:0.67rem}.pager_item.next .pager_link{grid-template-columns:1fr 1.5rem}.pager_meta{margin:0.5rem 0}.color_mode{height:1rem;margin-left:1.5rem}.color_choice{outline:none;border:none;-webkit-appearance:none;height:1rem;position:relative;width:1rem;border-radius:1rem;cursor:pointer;z-index:2;right:0;filter:contrast(0.8)}.color_choice::after{content:"";top:0.1rem;bottom:0;left:0;position:absolute;height:0.8rem;background:var(--accent);width:0.8rem;border-radius:0.25rem;z-index:3;transform:scale(1.67);transform-origin:50% 50%;transition:transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);will-change:transform;background-image:var(--sunIcon);background-size:60%;background-repeat:no-repeat;background-position:center}.color_icon{height:1rem;width:1rem;margin:0;z-index:4;position:absolute;transform:translateY(-50%);transition:transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);right:3.5rem}.tip{padding:1.5rem 1rem 1.5rem 1.5rem;margin:1.5rem 0;border-left:0.2rem solid var(--theme);position:relative;background:var(--accent)}.tip blockquote{padding:0;margin:0;border:none}.tip blockquote::before{display:none}.tip p:first-child,.tip p~p{padding-top:0}.tip p:last-child{padding-bottom:0}.tip_warning{--theme: var(--inline-color)}.tip_warning::before{transform:rotate(180deg)}.tip::before{content:"";position:absolute;left:-0.85rem;top:1.5rem;z-index:3;padding:0.75rem;transform-origin:50% 50%;border-radius:50%;background-color:var(--theme);background-image:var(--infoIcon);background-size:12%;background-position:50% 50%;background-repeat:no-repeat}.mermaid{--theme: darkgoldenrod;background-color:transparent !important;margin-bottom:2.5rem}.mermaid svg{margin:0 auto;display:block}.mermaid .actor,.mermaid .labelBox,.mermaid .classGroup rect{fill:var(--theme) !important;stroke:var(--theme) !important}.mermaid .messageText,.mermaid tspan,.mermaid text{fill:var(--text) !important;stroke:var(--text) !important}.mermaid .messageLine0,.mermaid .loopLine{stroke:var(--theme) !important;fill:var(--theme) !important}.post{margin:0 auto;width:100%}.post p,.post h1,.post h2,.post h3,.post h4,.post h5,.post h6,.post blockquote,.post ol,.post ul,.post .highlight_wrap,.post hr{max-width:840px !important;margin-left:auto;margin-right:auto}@media screen and (min-width: 1025px){.post img:not(.icon){display:block;width:100vw;max-width:1024px;margin-left:auto;margin-right:auto}}.post h2,.post h3,.post h4{margin:0.5rem auto;text-align:left;padding:5px 0 0 0}.post p{padding-bottom:0.5rem;padding-top:0.5rem;font-size:1.05rem}.posts{display:flex;justify-content:space-between;flex-flow:row wrap;width:100%;align-items:stretch}.posts:not(.aside){padding:0 30px}.post ol{padding:1rem 1.25rem}.post_body img{width:100%;max-width:100%}.post_inner a{color:var(--theme);transition:all 0.3s}.post_inner a:hover{opacity:0.8;text-decoration:underline}.post_inner img:not(.icon){margin-bottom:2rem;box-shadow:0 1.5rem 1rem -1rem rgba(0,0,0,0.25)}.post_inner img:not(.icon)~h1,.post_inner img:not(.icon)~h2,.post_inner img:not(.icon)~h3,.post_inner img:not(.icon)~h4{margin-top:0;padding-top:0}.post .icon{margin-top:0;margin-bottom:0}.post_date{color:var(--theme)}.post_copy{opacity:0;transition:opacity 0.3s ease-out}.post_item{box-shadow:0 0 3rem rgba(0,0,0,0.17);margin:1.25rem 0;border-radius:10px;overflow:hidden;width:100%}.post_item:hover{box-shadow:0 0 5rem rgba(0,0,0,0.255)}@media screen and (min-width: 667px){.post_item{width:47%}}.post_item:hover .post_copy{opacity:1}.post_link{padding:2.5px 0;font-size:1.25em;margin:2.5px 0;text-align:left}.post_meta{overflow:hidden;opacity:0.8;font-size:0.84rem;font-weight:500;display:inline-grid;grid-template-columns:auto 1fr;background-color:var(--light);padding:0;align-items:center;border-radius:0.3rem;color:var(--dark);text-transform:capitalize}.post_meta a:hover{color:var(--theme);text-decoration:underline;opacity:0.9}.post_extra{display:flex;justify-content:flex-end}.post_tag{font-size:0.75rem !important;font-weight:500;background:var(--theme);color:var(--light);padding:0.25rem 0.67rem !important;text-transform:uppercase;display:inline-flex;border-radius:5px}.post_title{margin:-1rem 0 1rem}.post_time{background:var(--theme);display:inline-grid;padding:0.2rem 0.75rem;color:var(--light)}.post_thumbnail{width:100%;margin:0}.post_nav{padding:3rem 1.5rem;display:grid;margin:2.25rem auto 1rem;text-align:center;color:var(--theme);text-transform:uppercase}.post_nav,.post_nav span{position:relative;z-index:3}.post_nav::before{content:"";position:absolute;background:var(--accent);top:0;left:0;bottom:0;right:0;z-index:1;border-radius:1rem}.post_next{display:inline-grid;margin:0 auto;width:10rem;grid-template-columns:1fr 1.33rem}.post_next::after{content:"";background-image:url("../images/icons/double-arrow.svg");background-repeat:repeat no-repeat;background-size:0.8rem;background-position:center right}.excerpt{padding:0 10px 1.5rem 10px;position:relative;z-index:1}.excerpt_meta{display:flex;justify-content:space-between;align-items:center;transform:translateY(-2.5rem);position:relative;z-index:5}.archive_item{display:grid;padding:1.5rem 0}.archive_title{margin:0}.article{box-shadow:0 0.5rem 2rem rgba(0,0,0,0.12);overflow:hidden;border-radius:0.5rem}.article_title{margin:0}.article_excerpt{transition:height 0.5s, opacity 0.5s}.article_excerpt:not(.visible){height:0;opacity:0}.article_excerpt,.article_meta{transform-origin:bottom}.article_meta{padding:10px 1.25rem 1.25rem;color:var(--text);position:relative;z-index:2;transition:margin-top 0.5s;background:var(--bg)}.article_meta.center_y{transform-origin:center;transition:transform 0.5s;display:flex;flex-direction:column;justify-content:center}@media screen and (min-width: 42rem){.article_meta.center_y{left:-2rem}}.article_thumb{display:grid;position:relative;z-index:0;overflow:hidden;height:15rem;background-size:cover;background-position:50% 50%}@media screen and (min-width: 35rem){.article_thumb{height:22.5rem}}.article_thumb img{transition:transform 0.5s, opacity 0.5s}.article_thumb::after{content:'';position:absolute;top:0;left:0;width:100%;bottom:0;z-index:1;background:var(--bg);opacity:0;transition:opacity 0.1s ease-out}.article_showcase .article_thumb{height:15rem}.article_showcase .article_meta{padding-top:1.5rem}.article:hover .article_thumb img{transform:scale(1.1)}.article:hover .article_thumb::after{transition:opacity 0.1s ease-out;opacity:0.5}.article:hover .article_excerpt:not(.visible){height:75px;opacity:1}.article:hover .article_meta:not(.center_y){margin-top:-75px}@media screen and (min-width: 769px){.article:hover .article_meta.center_y{transform:translateX(-3rem)}}.article:hover{box-shadow:0 1.5rem 6rem rgba(0,0,0,0.17)}.article:hover a{color:initial !important}.article_hidden{display:none}.wrap{max-width:1240px}@media screen and (min-width: 1640px){.wrap{max-width:1600px}}.wrap,.wrap{width:100%;padding:0 25px;margin:0 auto}.pt-1{padding-top:1.5rem}.pb-1{padding-bottom:1.5rem}.mt-1{margin-top:1.5rem}.mb-1{margin-bottom:1.5rem}.pt-2{padding-top:3rem}.pb-2{padding-bottom:3rem}.mt-2{margin-top:3rem}.mb-2{margin-bottom:3rem}.pt-3{padding-top:4.5rem}.pb-3{padding-bottom:4.5rem}.mt-3{margin-top:4.5rem}.mb-3{margin-bottom:4.5rem}.pt-4{padding-top:6rem}.pb-4{padding-bottom:6rem}.mt-4{margin-top:6rem}.mb-4{margin-bottom:6rem}.grid-2,.grid-3,.grid-4,.grid-auto,.grid-reverse{display:grid;grid-template-columns:1fr}[class*='grid-']{grid-gap:2rem}@media screen and (min-width: 42rem){.grid-auto{grid-template-columns:2fr 5fr}.grid-reverse{grid-template-columns:3fr 1fr}.grid-2{grid-template-columns:repeat(2, 1fr)}.grid-3{grid-template-columns:repeat(auto-fit, minmax(15rem, 1fr))}.grid-4{grid-template-columns:repeat(auto-fit, minmax(12rem, 1fr))}}.active{color:var(--theme)}.is{background:var(--theme);color:var(--light)}.toggle svg{fill:var(--text);display:inline-block;transform-origin:50% 50%;transform:scale(1.2);cursor:pointer;margin:0}.scrollable{width:100%;overflow-x:hidden;max-width:calc(100vw - 48px)}@media screen and (min-width: 768px){.scrollable{max-width:100%}}.scrollable:hover{overflow-x:auto}.chart{display:grid;grid-gap:1.5rem;max-width:98vw !important;max-height:98vw !important}.link{display:inline-flex;align-items:center;width:2.5rem;margin:0 0.25rem;padding:0 0.25rem;opacity:0;transition:opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1)}.link svg,.link img{width:1.5rem;height:1.5rem;fill:var(--theme)}.link_owner:hover .link{opacity:0.9}.copy{cursor:pointer}@keyframes pulse{0%{opacity:1}75%{opacity:0.1}100%{opacity:1}}code{font-size:15px;font-weight:400;overflow-y:hidden;display:block;font-family:'Monaco', monospace;word-break:break-all}code.noClass{color:var(--inline-color);display:inline;line-break:anywhere}.windows .highlight{overflow-x:hidden}.windows .highlight:hover{overflow-x:auto}.highlight{display:grid;width:100%;border-radius:0 0.2rem 0.2rem 0;overflow-x:auto;position:relative}.highlight_wrap{display:grid;background:var(--code-bg) !important;border-radius:0.5rem;position:relative;padding:0 1rem;margin:1.5rem auto 1rem auto}.highlight_wrap .highlight_wrap{margin:0;padding:0}.highlight_wrap+.highlight_wrap{margin-top:2.25rem}.highlight_wrap:hover>div{opacity:1}.highlight_wrap .lang{position:absolute;top:0;right:0;text-align:right;width:7.5rem;padding:0.5rem 1rem;font-style:italic;text-transform:uppercase;font-size:67%;opacity:0.5;color:var(--text)}.highlight_wrap:hover .lang{opacity:0.1}.highlight .highlight{margin:0}.highlight pre{color:var(--text) !important;border-radius:4px;font-family:'Monaco', monospace;padding-top:1.5rem;padding-bottom:2rem}.highlight table{display:grid;max-width:100%;margin-bottom:0;background:transparent}.highlight td,.highlight th{padding:0}.highlight .lntd{width:100%;border:none}.highlight .lntd:first-child,.highlight .lntd:first-child pre{width:2.5rem !important;padding-left:0;padding-right:0;color:rgba(255,255,255,0.5);user-select:none}.highlight .lntd:first-child pre{width:100%;display:flex;align-items:center;flex-direction:column}.err{color:#a61717}.hl{width:100%;background:var(--inline-color)}.ln,.lnt{margin-right:0.75rem;padding:0;transition:opacity 0.3s var(--ease)}.ln,.ln span,.lnt,.lnt span{color:var(--text);opacity:0.5;user-select:none}.k,.kc,.kd,.kn,.kp,.kr,.kt,.nt{color:#6ab825;font-weight:500}.kn,.kp{font-weight:400}.nb,.no,.nv{color:#24909d}.nc,.nf,.nn{color:#447fcf}.s,.sa,.sb,.sc,.dl,.sd,.s2,.se,.sh,.si,.sx,.sr,.s1,.ss{color:#ed9d13}.m,.mb,.mf,.mh,.mi,.il,.mo{color:#3677a9}.ow{color:#6ab825;font-weight:500}.c,.ch,.cm,.c1{color:#999;font-style:italic}.cs{color:#e50808;background-color:#520000;font-weight:500}.cp,.cpf{color:#cd2828;font-weight:500}.gd,.gr{color:#d22323}.ge{font-style:italic}.gh,.gu,.nd,.na,.ne{color:#ffa500;font-weight:500}.gi{color:#589819}.go{color:#ccc}.gp{color:#aaa}.gs{font-weight:500}.gt{color:#d22323}.w{color:#666}.hljs-string{color:#6ab825}.hljs-attr{color:#ed9d13}.p .hljs-attr{color:var(--light)}.pre_wrap{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}.pre_nolines.ln{display:none}.panel_box{display:inline-flex;perspective:300px;grid-gap:0.5rem;transition:opacity 0.3s var(--easing);background:var(--code-bg);padding:0.5rem 1.5rem;border-radius:2rem;align-items:center;position:absolute;right:0rem;top:-2.1rem;opacity:0}.panel_icon{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0.1rem;transform-origin:50% 50%}.panel_icon.active{animation:pulse 0.1s linear}.panel_icon svg{fill:var(--text);width:1.5rem;height:1.5rem}.panel_hide{display:none}.panel_from{position:absolute;color:var(--theme);bottom:0;font-size:1.5rem;font-weight:500;padding:0.5rem 0;cursor:pointer;letter-spacing:0.1px;z-index:19}.panel_expanded .panel_from{display:none}@font-face{font-family:'Metropolis';font-style:normal;font-weight:400;src:local("Metropolis Regular"),local("Metropolis-Regular"),url("../fonts/Metropolis-Regular.woff2") format("woff2"),url("../fonts/Metropolis-Regular.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:normal;font-weight:300;src:local("Metropolis Light"),local("Metropolis-Light"),url("../fonts/Metropolis-Light.woff2") format("woff2"),url("../fonts/Metropolis-Light.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:italic;font-weight:300;src:local("Metropolis Light Italic"),local("Metropolis-LightItalic"),url("../fonts/Metropolis-LightItalic.woff2") format("woff2"),url("../fonts/Metropolis-LightItalic.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:normal;font-weight:500;src:local("Metropolis Medium"),local("Metropolis-Medium"),url("../fonts/Metropolis-Medium.woff2") format("woff2"),url("../fonts/Metropolis-Medium.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:italic;font-weight:500;src:local("Metropolis Medium Italic"),local("Metropolis-MediumItalic"),url("../fonts/Metropolis-MediumItalic.woff2") format("woff2"),url("../fonts/Metropolis-MediumItalic.woff") format("woff");font-display:swap}@font-face{font-family:'Cookie';font-style:normal;font-weight:400;src:local("Cookie-Regular"),url("../fonts/cookie-v10-latin-regular.woff2") format("woff2"),url("../fonts/cookie-v10-latin-regular.woff") format("woff");font-display:swap}@keyframes chartjs-render-animation{0%{opacity:.99}100%{opacity:1}}.chartjs-render-monitor{animation:chartjs-render-animation 1ms}.chartjs-size-monitor,.chartjs-size-monitor-expand,.chartjs-size-monitor-shrink{position:absolute;direction:ltr;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1}.chartjs-size-monitor-expand>div{position:absolute;width:1000000px;height:1000000px;left:0;top:0}.chartjs-size-monitor-shrink>div{position:absolute;width:200%;height:200%;left:0;top:0}
+
+/*# sourceMappingURL=styles.css.map */
\ No newline at end of file
diff --git a/exampleSite/resources/_gen/assets/sass/sass/main.sass_ca26857cefa9076967ab300682271513.json b/exampleSite/resources/_gen/assets/sass/sass/main.sass_ca26857cefa9076967ab300682271513.json
new file mode 100644
index 0000000..2aa660e
--- /dev/null
+++ b/exampleSite/resources/_gen/assets/sass/sass/main.sass_ca26857cefa9076967ab300682271513.json
@@ -0,0 +1 @@
+{"Target":"css/styles.cd62b2f2422cc4a7954bb12c250bb5a506c534f9f0e02d12144999181257b8046df4a087b684fbe4fa2e60fc50b054922f83d5cb594351423c6425a8cb80434c.css","MediaType":"text/css","Data":{"Integrity":"sha512-zWKy8kIsxKeVS7EsJQu1pQbFNPnw4C0SFEmZGBJXuARt9KCHtoT75PouYPxQsFSSL4PVy1lDUUI8ZCWoy4BDTA=="}}
\ No newline at end of file
diff --git a/exampleSite/static/admin/.gitignore b/exampleSite/static/admin/.gitignore
new file mode 100644
index 0000000..c6a8f8f
--- /dev/null
+++ b/exampleSite/static/admin/.gitignore
@@ -0,0 +1,2 @@
+index.html
+assets/
\ No newline at end of file
diff --git a/exampleSite/static/images/GitHubMarkDark.svg b/exampleSite/static/images/GitHubMarkDark.svg
new file mode 100644
index 0000000..68a6943
--- /dev/null
+++ b/exampleSite/static/images/GitHubMarkDark.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/exampleSite/static/images/GitHubMarkLight.svg b/exampleSite/static/images/GitHubMarkLight.svg
new file mode 100644
index 0000000..93af7db
--- /dev/null
+++ b/exampleSite/static/images/GitHubMarkLight.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/exampleSite/static/images/artist.jpg b/exampleSite/static/images/artist.jpg
new file mode 100644
index 0000000..5d52ed3
Binary files /dev/null and b/exampleSite/static/images/artist.jpg differ
diff --git a/exampleSite/static/images/boy.jpg b/exampleSite/static/images/boy.jpg
new file mode 100644
index 0000000..955cdf9
Binary files /dev/null and b/exampleSite/static/images/boy.jpg differ
diff --git a/exampleSite/static/images/clarity/article-toc.png b/exampleSite/static/images/clarity/article-toc.png
new file mode 100644
index 0000000..a07f85e
Binary files /dev/null and b/exampleSite/static/images/clarity/article-toc.png differ
diff --git a/exampleSite/static/images/clarity/image-figure.png b/exampleSite/static/images/clarity/image-figure.png
new file mode 100644
index 0000000..67ff2ca
Binary files /dev/null and b/exampleSite/static/images/clarity/image-figure.png differ
diff --git a/exampleSite/static/images/clarity/image-inline.png b/exampleSite/static/images/clarity/image-inline.png
new file mode 100644
index 0000000..93d36f1
Binary files /dev/null and b/exampleSite/static/images/clarity/image-inline.png differ
diff --git a/exampleSite/static/images/clarity/screenshot-darkmode.png b/exampleSite/static/images/clarity/screenshot-darkmode.png
new file mode 100644
index 0000000..539ed63
Binary files /dev/null and b/exampleSite/static/images/clarity/screenshot-darkmode.png differ
diff --git a/exampleSite/static/images/clarity/screenshot-mobile-darkmode.png b/exampleSite/static/images/clarity/screenshot-mobile-darkmode.png
new file mode 100644
index 0000000..cf89290
Binary files /dev/null and b/exampleSite/static/images/clarity/screenshot-mobile-darkmode.png differ
diff --git a/exampleSite/static/images/clarity/screenshot-mobile.png b/exampleSite/static/images/clarity/screenshot-mobile.png
new file mode 100644
index 0000000..962f69e
Binary files /dev/null and b/exampleSite/static/images/clarity/screenshot-mobile.png differ
diff --git a/exampleSite/static/images/clarity/screenshot.png b/exampleSite/static/images/clarity/screenshot.png
new file mode 100644
index 0000000..f08264c
Binary files /dev/null and b/exampleSite/static/images/clarity/screenshot.png differ
diff --git a/exampleSite/static/images/clarity/syntax-block.gif b/exampleSite/static/images/clarity/syntax-block.gif
new file mode 100644
index 0000000..91de114
Binary files /dev/null and b/exampleSite/static/images/clarity/syntax-block.gif differ
diff --git a/exampleSite/static/images/clarity/tags.png b/exampleSite/static/images/clarity/tags.png
new file mode 100644
index 0000000..8da6c60
Binary files /dev/null and b/exampleSite/static/images/clarity/tags.png differ
diff --git a/exampleSite/static/images/clarity/tn-darkmode.png b/exampleSite/static/images/clarity/tn-darkmode.png
new file mode 100644
index 0000000..256b5ae
Binary files /dev/null and b/exampleSite/static/images/clarity/tn-darkmode.png differ
diff --git a/exampleSite/static/images/clarity/tn.png b/exampleSite/static/images/clarity/tn.png
new file mode 100644
index 0000000..2b2dcfe
Binary files /dev/null and b/exampleSite/static/images/clarity/tn.png differ
diff --git a/exampleSite/static/images/compose-light.svg b/exampleSite/static/images/compose-light.svg
new file mode 100644
index 0000000..cdfec1f
--- /dev/null
+++ b/exampleSite/static/images/compose-light.svg
@@ -0,0 +1,10 @@
+
diff --git a/exampleSite/static/images/compose.svg b/exampleSite/static/images/compose.svg
new file mode 100644
index 0000000..0f04070
--- /dev/null
+++ b/exampleSite/static/images/compose.svg
@@ -0,0 +1,10 @@
+
diff --git a/exampleSite/static/images/frustrated.jpg b/exampleSite/static/images/frustrated.jpg
new file mode 100644
index 0000000..fe04c0f
Binary files /dev/null and b/exampleSite/static/images/frustrated.jpg differ
diff --git a/exampleSite/static/images/painting.jpg b/exampleSite/static/images/painting.jpg
new file mode 100644
index 0000000..c3c0f74
Binary files /dev/null and b/exampleSite/static/images/painting.jpg differ
diff --git a/exampleSite/static/images/scribble.jpg b/exampleSite/static/images/scribble.jpg
new file mode 100644
index 0000000..baf8cc4
Binary files /dev/null and b/exampleSite/static/images/scribble.jpg differ
diff --git a/exampleSite/static/images/speakers.jpg b/exampleSite/static/images/speakers.jpg
new file mode 100644
index 0000000..efd9d95
Binary files /dev/null and b/exampleSite/static/images/speakers.jpg differ
diff --git a/exampleSite/static/images/street.jpg b/exampleSite/static/images/street.jpg
new file mode 100644
index 0000000..68c0887
Binary files /dev/null and b/exampleSite/static/images/street.jpg differ
diff --git a/exampleSite/static/images/stuck.jpg b/exampleSite/static/images/stuck.jpg
new file mode 100644
index 0000000..6c419c7
Binary files /dev/null and b/exampleSite/static/images/stuck.jpg differ
diff --git a/exampleSite/tina/config.js b/exampleSite/tina/config.js
new file mode 100644
index 0000000..ec7b059
--- /dev/null
+++ b/exampleSite/tina/config.js
@@ -0,0 +1,144 @@
+import { defineConfig } from "tinacms";
+
+// Your hosting provider likely exposes this as an environment variable
+const branch = process.env.HEAD || process.env.VERCEL_GIT_COMMIT_REF || "master";
+
+export default defineConfig({
+ branch,
+ clientId: "cf05fea4-4f23-47cf-be81-bf18b623b233", // Get this from tina.io
+ token: "bdce3e17adfa4a16da812d6c538a22cd61dd057b", // Get this from tina.io
+
+ build: {
+ outputFolder: "admin",
+ publicFolder: "static",
+ },
+ media: {
+ tina: {
+ mediaRoot: "images",
+ publicFolder: "static",
+ },
+ },
+ schema: {
+ collections: [
+ {
+ name: "docs",
+ label: "Docs",
+ path: "content/docs",
+ frontmatterFormat: "toml",
+ frontmatterDelimiters: "+++",
+ format: "md",
+ fields: [
+ {
+ type: "string",
+ name: "title",
+ label: "Title",
+ isTitle: true,
+ required: true,
+ },
+ {
+ type: "number",
+ name: "weight",
+ label: "Weight"
+ },
+ {
+ type: "string",
+ name: "description",
+ label: "Description"
+ },
+ {
+ type: "rich-text",
+ name: "body",
+ label: "Body",
+ isBody: true,
+ },
+ ],
+ },
+ {
+ name: "post",
+ label: "Posts",
+ path: "content/blog",
+ frontmatterFormat: "toml",
+ frontmatterDelimiters: "+++",
+ format: "md",
+ fields: [
+ {
+ type: "string",
+ name: "title",
+ label: "Title",
+ isTitle: true,
+ required: true,
+ },
+ {
+ type: "string",
+ name: "author",
+ label: "Author",
+ },
+ {
+ type: "string",
+ name: "categories",
+ label: "Categories",
+ list: true
+ },
+ {
+ type: "string",
+ name: "tags",
+ label: "Tags",
+ list: true
+ },
+ {
+ type: "datetime",
+ name: "date",
+ label: "Date",
+ },
+ {
+ type: "image",
+ name: "image",
+ label: "Image",
+ },
+ {
+ type: "rich-text",
+ name: "body",
+ label: "Body",
+ isBody: true,
+ },
+ ],
+ },
+ {
+ name: "tutorials",
+ label: "Tutorials",
+ path: "content/tutorials",
+ frontmatterFormat: "toml",
+ frontmatterDelimiters: "+++",
+ format: "md",
+ fields: [
+ {
+ type: "string",
+ name: "title",
+ label: "Title",
+ isTitle: true,
+ required: true,
+ },
+ {
+ type: "number",
+ name: "weight",
+ label: "Weight",
+ },
+ {
+ type: "rich-text",
+ name: "body",
+ label: "Body",
+ isBody: true,
+ },
+ ],
+ },
+ ],
+ },
+ search: {
+ tina: {
+ indexerToken: "876018600e28b19feaf033cc3364f588fe8a6248",
+ stopwordLanguages: ["deu", "eng", "fra", "ita", "spa", "nld"]
+ },
+ indexBatchSize: 100,
+ maxSearchIndexFieldLength: 100
+ }
+});
diff --git a/exampleSite/tina/tina-lock.json b/exampleSite/tina/tina-lock.json
new file mode 100644
index 0000000..ba006ed
--- /dev/null
+++ b/exampleSite/tina/tina-lock.json
@@ -0,0 +1 @@
+{"schema":{"version":{"fullVersion":"1.4.33","major":"1","minor":"4","patch":"33"},"meta":{"flags":["experimentalData"]},"collections":[{"name":"docs","label":"Docs","path":"content/docs","frontmatterFormat":"toml","frontmatterDelimiters":"+++","format":"md","fields":[{"type":"string","name":"title","label":"Title","isTitle":true,"required":true,"namespace":["docs","title"],"searchable":true,"uid":false},{"type":"number","name":"weight","label":"Weight","namespace":["docs","weight"],"searchable":true,"uid":false},{"type":"string","name":"description","label":"Description","namespace":["docs","description"],"searchable":true,"uid":false},{"type":"rich-text","name":"body","label":"Body","isBody":true,"namespace":["docs","body"],"searchable":true,"parser":{"type":"markdown"},"uid":false}],"namespace":["docs"]},{"name":"post","label":"Posts","path":"content/blog","frontmatterFormat":"toml","frontmatterDelimiters":"+++","format":"md","fields":[{"type":"string","name":"title","label":"Title","isTitle":true,"required":true,"namespace":["post","title"],"searchable":true,"uid":false},{"type":"string","name":"author","label":"Author","namespace":["post","author"],"searchable":true,"uid":false},{"type":"string","name":"categories","label":"Categories","list":true,"namespace":["post","categories"],"searchable":true,"uid":false},{"type":"string","name":"tags","label":"Tags","list":true,"namespace":["post","tags"],"searchable":true,"uid":false},{"type":"datetime","name":"date","label":"Date","namespace":["post","date"],"searchable":true,"uid":false},{"type":"image","name":"image","label":"Image","namespace":["post","image"],"searchable":false,"uid":false},{"type":"rich-text","name":"body","label":"Body","isBody":true,"namespace":["post","body"],"searchable":true,"parser":{"type":"markdown"},"uid":false}],"namespace":["post"]},{"name":"tutorials","label":"Tutorials","path":"content/tutorials","frontmatterFormat":"toml","frontmatterDelimiters":"+++","format":"md","fields":[{"type":"string","name":"title","label":"Title","isTitle":true,"required":true,"namespace":["tutorials","title"],"searchable":true,"uid":false},{"type":"number","name":"weight","label":"Weight","namespace":["tutorials","weight"],"searchable":true,"uid":false},{"type":"rich-text","name":"body","label":"Body","isBody":true,"namespace":["tutorials","body"],"searchable":true,"parser":{"type":"markdown"},"uid":false}],"namespace":["tutorials"]}],"config":{"media":{"tina":{"publicFolder":"static","mediaRoot":"images"}},"search":{"tina":{"indexerToken":"876018600e28b19feaf033cc3364f588fe8a6248","stopwordLanguages":["deu","eng","fra","ita","spa","nld"]},"indexBatchSize":100,"maxSearchIndexFieldLength":100}}},"lookup":{"DocumentConnection":{"type":"DocumentConnection","resolveType":"multiCollectionDocumentList","collections":["docs","post","tutorials"]},"Node":{"type":"Node","resolveType":"nodeDocument"},"DocumentNode":{"type":"DocumentNode","resolveType":"multiCollectionDocument","createDocument":"create","updateDocument":"update"},"Docs":{"type":"Docs","resolveType":"collectionDocument","collection":"docs","createDocs":"create","updateDocs":"update"},"DocsConnection":{"type":"DocsConnection","resolveType":"collectionDocumentList","collection":"docs"},"Post":{"type":"Post","resolveType":"collectionDocument","collection":"post","createPost":"create","updatePost":"update"},"PostConnection":{"type":"PostConnection","resolveType":"collectionDocumentList","collection":"post"},"Tutorials":{"type":"Tutorials","resolveType":"collectionDocument","collection":"tutorials","createTutorials":"create","updateTutorials":"update"},"TutorialsConnection":{"type":"TutorialsConnection","resolveType":"collectionDocumentList","collection":"tutorials"}},"graphql":{"kind":"Document","definitions":[{"kind":"ScalarTypeDefinition","name":{"kind":"Name","value":"Reference"},"description":{"kind":"StringValue","value":"References another document, used as a foreign key"},"directives":[]},{"kind":"ScalarTypeDefinition","name":{"kind":"Name","value":"JSON"},"description":{"kind":"StringValue","value":""},"directives":[]},{"kind":"ObjectTypeDefinition","interfaces":[],"directives":[],"name":{"kind":"Name","value":"SystemInfo"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"filename"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"title"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"basename"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"breadcrumbs"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"excludeExtension"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Boolean"}}}],"type":{"kind":"NonNullType","type":{"kind":"ListType","type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"path"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"relativePath"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"extension"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"template"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"collection"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Collection"}}}}]},{"kind":"ObjectTypeDefinition","interfaces":[],"directives":[],"name":{"kind":"Name","value":"Folder"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"name"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"path"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}]},{"kind":"ObjectTypeDefinition","interfaces":[],"directives":[],"name":{"kind":"Name","value":"PageInfo"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"hasPreviousPage"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Boolean"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"hasNextPage"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Boolean"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"startCursor"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"endCursor"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}]},{"kind":"InterfaceTypeDefinition","description":{"kind":"StringValue","value":""},"name":{"kind":"Name","value":"Node"},"interfaces":[],"directives":[],"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"id"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}}]},{"kind":"InterfaceTypeDefinition","description":{"kind":"StringValue","value":""},"name":{"kind":"Name","value":"Document"},"interfaces":[],"directives":[],"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"id"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"_sys"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"SystemInfo"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"_values"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"JSON"}}}}]},{"kind":"InterfaceTypeDefinition","description":{"kind":"StringValue","value":"A relay-compliant pagination connection"},"name":{"kind":"Name","value":"Connection"},"interfaces":[],"directives":[],"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"totalCount"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"pageInfo"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"PageInfo"}}}}]},{"kind":"ObjectTypeDefinition","interfaces":[],"directives":[],"name":{"kind":"Name","value":"Query"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"getOptimizedQuery"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"queryString"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"collection"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"collection"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Collection"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"collections"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"ListType","type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Collection"}}}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"node"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"id"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Node"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"document"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"collection"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"DocumentNode"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"docs"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Docs"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"docsConnection"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"before"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"after"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"first"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"last"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"sort"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"filter"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"DocsFilter"}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"DocsConnection"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"post"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Post"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"postConnection"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"before"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"after"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"first"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"last"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"sort"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"filter"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"PostFilter"}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"PostConnection"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"tutorials"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Tutorials"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"tutorialsConnection"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"before"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"after"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"first"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"last"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"sort"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"filter"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"TutorialsFilter"}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"TutorialsConnection"}}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"DocumentFilter"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"docs"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"DocsFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"post"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"PostFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"tutorials"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"TutorialsFilter"}}}]},{"kind":"ObjectTypeDefinition","interfaces":[],"directives":[],"name":{"kind":"Name","value":"DocumentConnectionEdges"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"cursor"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"node"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"DocumentNode"}}}]},{"kind":"ObjectTypeDefinition","interfaces":[{"kind":"NamedType","name":{"kind":"Name","value":"Connection"}}],"directives":[],"name":{"kind":"Name","value":"DocumentConnection"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"pageInfo"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"PageInfo"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"totalCount"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"edges"},"arguments":[],"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"DocumentConnectionEdges"}}}}]},{"kind":"ObjectTypeDefinition","interfaces":[],"directives":[],"name":{"kind":"Name","value":"Collection"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"name"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"slug"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"label"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"path"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"format"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"matches"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"templates"},"arguments":[],"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"JSON"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"fields"},"arguments":[],"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"JSON"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"documents"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"before"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"after"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"first"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"last"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"sort"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"filter"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"DocumentFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"folder"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"DocumentConnection"}}}}]},{"kind":"UnionTypeDefinition","name":{"kind":"Name","value":"DocumentNode"},"directives":[],"types":[{"kind":"NamedType","name":{"kind":"Name","value":"Docs"}},{"kind":"NamedType","name":{"kind":"Name","value":"Post"}},{"kind":"NamedType","name":{"kind":"Name","value":"Tutorials"}},{"kind":"NamedType","name":{"kind":"Name","value":"Folder"}}]},{"kind":"ObjectTypeDefinition","interfaces":[{"kind":"NamedType","name":{"kind":"Name","value":"Node"}},{"kind":"NamedType","name":{"kind":"Name","value":"Document"}}],"directives":[],"name":{"kind":"Name","value":"Docs"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"title"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"weight"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"description"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"body"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"JSON"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"id"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"_sys"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"SystemInfo"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"_values"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"JSON"}}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"StringFilter"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"startsWith"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"eq"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"exists"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Boolean"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"in"},"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"NumberFilter"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"lt"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"lte"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"gte"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"gt"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"eq"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"exists"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Boolean"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"in"},"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"RichTextFilter"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"startsWith"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"eq"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"exists"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Boolean"}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"DocsFilter"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"title"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"StringFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"weight"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"NumberFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"description"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"StringFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"body"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"RichTextFilter"}}}]},{"kind":"ObjectTypeDefinition","interfaces":[],"directives":[],"name":{"kind":"Name","value":"DocsConnectionEdges"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"cursor"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"node"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"Docs"}}}]},{"kind":"ObjectTypeDefinition","interfaces":[{"kind":"NamedType","name":{"kind":"Name","value":"Connection"}}],"directives":[],"name":{"kind":"Name","value":"DocsConnection"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"pageInfo"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"PageInfo"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"totalCount"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"edges"},"arguments":[],"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"DocsConnectionEdges"}}}}]},{"kind":"ObjectTypeDefinition","interfaces":[{"kind":"NamedType","name":{"kind":"Name","value":"Node"}},{"kind":"NamedType","name":{"kind":"Name","value":"Document"}}],"directives":[],"name":{"kind":"Name","value":"Post"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"title"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"author"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"categories"},"arguments":[],"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"tags"},"arguments":[],"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"date"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"image"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"body"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"JSON"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"id"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"_sys"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"SystemInfo"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"_values"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"JSON"}}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"DatetimeFilter"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"after"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"before"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"eq"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"exists"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Boolean"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"in"},"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"ImageFilter"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"startsWith"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"eq"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"exists"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Boolean"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"in"},"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"PostFilter"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"title"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"StringFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"author"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"StringFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"categories"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"StringFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"tags"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"StringFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"date"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"DatetimeFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"image"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"ImageFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"body"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"RichTextFilter"}}}]},{"kind":"ObjectTypeDefinition","interfaces":[],"directives":[],"name":{"kind":"Name","value":"PostConnectionEdges"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"cursor"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"node"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"Post"}}}]},{"kind":"ObjectTypeDefinition","interfaces":[{"kind":"NamedType","name":{"kind":"Name","value":"Connection"}}],"directives":[],"name":{"kind":"Name","value":"PostConnection"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"pageInfo"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"PageInfo"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"totalCount"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"edges"},"arguments":[],"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"PostConnectionEdges"}}}}]},{"kind":"ObjectTypeDefinition","interfaces":[{"kind":"NamedType","name":{"kind":"Name","value":"Node"}},{"kind":"NamedType","name":{"kind":"Name","value":"Document"}}],"directives":[],"name":{"kind":"Name","value":"Tutorials"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"title"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"weight"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"body"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"JSON"}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"id"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"_sys"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"SystemInfo"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"_values"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"JSON"}}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"TutorialsFilter"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"title"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"StringFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"weight"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"NumberFilter"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"body"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"RichTextFilter"}}}]},{"kind":"ObjectTypeDefinition","interfaces":[],"directives":[],"name":{"kind":"Name","value":"TutorialsConnectionEdges"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"cursor"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"node"},"arguments":[],"type":{"kind":"NamedType","name":{"kind":"Name","value":"Tutorials"}}}]},{"kind":"ObjectTypeDefinition","interfaces":[{"kind":"NamedType","name":{"kind":"Name","value":"Connection"}}],"directives":[],"name":{"kind":"Name","value":"TutorialsConnection"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"pageInfo"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"PageInfo"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"totalCount"},"arguments":[],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"edges"},"arguments":[],"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"TutorialsConnectionEdges"}}}}]},{"kind":"ObjectTypeDefinition","interfaces":[],"directives":[],"name":{"kind":"Name","value":"Mutation"},"fields":[{"kind":"FieldDefinition","name":{"kind":"Name","value":"addPendingDocument"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"collection"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"template"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"DocumentNode"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"updateDocument"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"collection"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"params"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"DocumentUpdateMutation"}}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"DocumentNode"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"deleteDocument"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"collection"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"DocumentNode"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"createDocument"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"collection"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"params"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"DocumentMutation"}}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"DocumentNode"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"updateDocs"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"params"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"DocsMutation"}}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Docs"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"createDocs"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"params"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"DocsMutation"}}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Docs"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"updatePost"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"params"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"PostMutation"}}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Post"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"createPost"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"params"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"PostMutation"}}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Post"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"updateTutorials"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"params"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"TutorialsMutation"}}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Tutorials"}}}},{"kind":"FieldDefinition","name":{"kind":"Name","value":"createTutorials"},"arguments":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"params"},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"TutorialsMutation"}}}}],"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Tutorials"}}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"DocumentUpdateMutation"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"docs"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"DocsMutation"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"post"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"PostMutation"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"tutorials"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"TutorialsMutation"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"relativePath"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"DocumentMutation"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"docs"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"DocsMutation"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"post"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"PostMutation"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"tutorials"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"TutorialsMutation"}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"DocsMutation"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"title"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"weight"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"description"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"body"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"JSON"}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"PostMutation"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"title"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"author"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"categories"},"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"tags"},"type":{"kind":"ListType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"date"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"image"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"body"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"JSON"}}}]},{"kind":"InputObjectTypeDefinition","name":{"kind":"Name","value":"TutorialsMutation"},"fields":[{"kind":"InputValueDefinition","name":{"kind":"Name","value":"title"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"weight"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"InputValueDefinition","name":{"kind":"Name","value":"body"},"type":{"kind":"NamedType","name":{"kind":"Name","value":"JSON"}}}]}]}}
\ No newline at end of file
diff --git a/go.mod b/go.mod
new file mode 100644
index 0000000..8c77ccd
--- /dev/null
+++ b/go.mod
@@ -0,0 +1,3 @@
+module code.lila.network/adoralaura/compose-theme
+
+go 1.22
diff --git a/i18n/de.toml b/i18n/de.toml
new file mode 100644
index 0000000..5ade38c
--- /dev/null
+++ b/i18n/de.toml
@@ -0,0 +1,32 @@
+[copy]
+ other = "Kopieren"
+[copied]
+ other = "Kopiert"
+[docs_menu]
+ other = "Dokumentationsmenü"
+[no_matches]
+ other = "Keine Übereinstimmung gefunden"
+[not_set]
+ other = "undefiniert"
+[resize_snippet]
+ other = "Höhe des Snippets ändern"
+[quick_links]
+ other = "Schnellzugriff"
+[search_field_placeholder]
+ other = "Suche"
+[search_results_label]
+ other = "Suchergebnisse"
+[short_search_query]
+ other = "Anfrage ist zu kurz"
+[site]
+ other = "Webseite"
+[site_menu]
+ other = "Menü der Webseite"
+[toggle_line_numbers]
+ other = "Zeilennummern ein- oder ausblenden"
+[toggle_line_wrap]
+ other = "Zeilenumbruch aktivieren oder deaktivieren"
+[to_top]
+ other = "Zurück zum Anfang"
+[type_to_search]
+ other = "Suchbegriff eingeben"
diff --git a/i18n/en.toml b/i18n/en.toml
new file mode 100644
index 0000000..a75f74b
--- /dev/null
+++ b/i18n/en.toml
@@ -0,0 +1,32 @@
+[copy]
+ other = "Copy"
+[copied]
+ other = "Copied"
+[docs_menu]
+ other = "Docs Menu"
+[no_matches]
+ other = "No matches found"
+[not_set]
+ other = "not set"
+[resize_snippet]
+ other = "Resize snippet height"
+[quick_links]
+ other = "Quick links"
+[search_field_placeholder]
+ other = "Search"
+[search_results_label]
+ other = "Search Results"
+[short_search_query]
+ other = "Query is too short"
+[site]
+ other = "site"
+[site_menu]
+ other = "Site Menu"
+[toggle_line_numbers]
+ other = "Toggle line numbers"
+[toggle_line_wrap]
+ other = "Toggle line wrap"
+[to_top]
+ other = "Back to top"
+[type_to_search]
+ other = "Type to search"
\ No newline at end of file
diff --git a/i18n/eo.toml b/i18n/eo.toml
new file mode 100644
index 0000000..feb4b97
--- /dev/null
+++ b/i18n/eo.toml
@@ -0,0 +1,32 @@
+[copy]
+ other = "Kopii"
+[copied]
+ other = "Kopiita"
+[docs_menu]
+ other = "Dokumentara menuo"
+[no_matches]
+ other = "Ne trovis kongrŭojn"
+[not_set]
+ other = "ne agordita"
+[resize_snippet]
+ other = "Ĝustigi kodaĵan alton"
+[quick_links]
+ other = "Rapidaj ligiloj"
+[search_field_placeholder]
+ other = "Serĉi"
+[search_results_label]
+ other = "Serĉi rezultojn"
+[short_search_query]
+ other = "La serĉoteksto estas tro mallonga"
+[site]
+ other = "retejon"
+[site_menu]
+ other = "Reteja menuo"
+[toggle_line_numbers]
+ other = "Baskuligi liniajn nombrojn"
+[toggle_line_wrap]
+ other = "Baskuligi linifaldon"
+[to_top]
+ other = "Reiri supren"
+[type_to_search]
+ other = "Tajpu por serĉi"
diff --git a/i18n/es.toml b/i18n/es.toml
new file mode 100644
index 0000000..fc2c643
--- /dev/null
+++ b/i18n/es.toml
@@ -0,0 +1,32 @@
+[copy]
+ other = "Copiar"
+[copied]
+ other = "Copiado"
+[docs_menu]
+ other = "Menú de documentos"
+[no_matches]
+ other = "No se encontraron coincidencias"
+[not_set]
+ other = "no asignado"
+[resize_snippet]
+ other = "Ajustar la altura del fragmento"
+[quick_links]
+ other = "Enlaces rápidos"
+[search_field_placeholder]
+ other = "Buscar"
+[search_results_label]
+ other = "Buscar resultados"
+[short_search_query]
+ other = "La consulta es demasiado corta"
+[site]
+ other = "sitio web"
+[site_menu]
+ other = "Menú del sitio web"
+[toggle_line_numbers]
+ other = "Alterna números de línea"
+[toggle_line_wrap]
+ other = "Alterna ajuste de línea"
+[to_top]
+ other = "Volver arriba"
+[type_to_search]
+ other = "Escribe para buscar"
diff --git a/i18n/tr.toml b/i18n/tr.toml
new file mode 100644
index 0000000..b05e68b
--- /dev/null
+++ b/i18n/tr.toml
@@ -0,0 +1,32 @@
+[copy]
+ other = "Kopyala"
+[copied]
+ other = "kopyalandı"
+[docs_menu]
+ other = "Belgeleme menüsü"
+[no_matches]
+ other = "Eşleşme bulunamadı"
+[not_set]
+ other = "ayarlanmadı"
+[resize_snippet]
+ other = "Snippet yüksekliğini yeniden boyutlandır"
+[quick_links]
+ other = "Hızlı bağlantılar"
+[search_field_placeholder]
+ other = "Belgelerde arayın"
+[search_results_label]
+ other = "Arama sonuçları"
+[short_search_query]
+ other = "Sorgu çok kısa"
+[site]
+ other = "site"
+[site_menu]
+ other = "Site menüsü"
+[toggle_line_numbers]
+ other = "Satır numaralarını değiştir"
+[toggle_line_wrap]
+ other = "Satır kaydırmayı değiştir"
+[to_top]
+ other = "Retour au sommet"
+[type_to_search]
+ other = "Aramak için yazın"
diff --git a/images/screenshot.png b/images/screenshot.png
new file mode 100644
index 0000000..aabbc69
Binary files /dev/null and b/images/screenshot.png differ
diff --git a/images/tn.png b/images/tn.png
new file mode 100644
index 0000000..4e576a0
Binary files /dev/null and b/images/tn.png differ
diff --git a/layouts/404.html b/layouts/404.html
new file mode 100644
index 0000000..07d0af9
--- /dev/null
+++ b/layouts/404.html
@@ -0,0 +1,6 @@
+{{- define "main"}}
+Not found
+
+ {{- partial "head/index" . }} + +
+