diff --git a/.github/workflows/CleanPreview.yml b/.github/workflows/CleanPreview.yml
new file mode 100644
index 00000000..25946efc
--- /dev/null
+++ b/.github/workflows/CleanPreview.yml
@@ -0,0 +1,27 @@
+# from https://github.com/CliMA/ClimaTimeSteppers.jl
+name: Doc Preview Cleanup
+
+on:
+ pull_request:
+ types: [closed]
+
+jobs:
+ doc-preview-cleanup:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout gh-pages branch
+ uses: actions/checkout@v2
+ with:
+ ref: gh-pages
+ - name: Delete preview and history + push changes
+ run: |
+ if [ -d "previews/PR$PRNUM" ]; then
+ git config user.name "Documenter.jl"
+ git config user.email "documenter@juliadocs.github.io"
+ git rm -rf "previews/PR$PRNUM"
+ git commit -m "delete preview"
+ git branch gh-pages-new $(echo "delete history" | git commit-tree HEAD^{tree})
+ git push --force origin gh-pages-new:gh-pages
+ fi
+ env:
+ PRNUM: ${{ github.event.number }}
diff --git a/.github/workflows/Comment.yml b/.github/workflows/Comment.yml
new file mode 100644
index 00000000..79127a32
--- /dev/null
+++ b/.github/workflows/Comment.yml
@@ -0,0 +1,14 @@
+name: PR Comment # Write a comment in the PR with a link to the preview of the given website
+on:
+ pull_request:
+ types: [opened, reopened]
+jobs:
+ pr_comment:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Create PR comment
+ if: github.event_name == 'pull_request' && github.repository == github.event.pull_request.head.repo.full_name # if this is a pull request build AND the pull request is NOT made from a fork
+ uses: thollander/actions-comment-pull-request@71efef56b184328c7ef1f213577c3a90edaa4aff
+ with:
+ message: 'Once the build has completed, you can preview your PR at this URL: https://fluxml.ai/previews/PR${{ github.event.number }}/'
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.github/workflows/Deploy.yml b/.github/workflows/Deploy.yml
new file mode 100644
index 00000000..11703eab
--- /dev/null
+++ b/.github/workflows/Deploy.yml
@@ -0,0 +1,62 @@
+name: Build and Deploy
+on:
+ push:
+ branches:
+ - master
+ - main
+ pull_request:
+
+jobs:
+ build-and-deploy:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v2
+ with:
+ persist-credentials: false
+ # NOTE: Python is necessary for the pre-rendering (minification) step
+ - name: Install python
+ uses: actions/setup-python@v4
+ with:
+ python-version: '3.8'
+ # NOTE: Here you can install dependencies such as matplotlib if you use
+ # packages such as PyPlot.
+ # - run: pip install matplotlib
+ - name: Install Julia
+ uses: julia-actions/setup-julia@v1
+ # NOTE
+ # The steps below ensure that NodeJS and Franklin are loaded then it
+ # installs highlight.js which is needed for the prerendering step
+ # (code highlighting + katex prerendering).
+ # Then the environment is activated and instantiated to install all
+ # Julia packages which may be required to successfully build your site.
+ # The last line should be `optimize()` though you may want to give it
+ # specific arguments, see the documentation or ?optimize in the REPL.
+ - run: julia -e '
+ using Pkg; Pkg.add(["NodeJS", "Franklin"]);
+ using NodeJS; run(`$(npm_cmd()) install highlight.js`);
+ using Franklin;
+ Pkg.activate("."); Pkg.instantiate();
+ optimize()'
+ - name: Fix URLs for PR preview deployment (pull request previews)
+ if: github.event_name == 'pull_request'
+ run: |
+ echo "PREVIEW_FRANKLIN_WEBSITE_URL=https://fluxml.ai/previews/PR${{ github.event.number }}/" >> $GITHUB_ENV
+ echo "PREVIEW_FRANKLIN_PREPATH=previews/PR${{ github.event.number }}" >> $GITHUB_ENV
+ - name: Deploy (preview)
+ if: github.event_name == 'pull_request' && github.repository == github.event.pull_request.head.repo.full_name # if this build is a PR build and the PR is NOT from a fork
+ uses: JamesIves/github-pages-deploy-action@releases/v4
+ with:
+ branch: gh-pages # The branch where the PRs previews are stored
+ folder: __site
+ token: ${{ secrets.GITHUB_TOKEN }}
+ target-folder: "previews/PR${{ github.event.number }}" # The website preview is going to be stored in a subfolder
+ - name: Deploy (main)
+ if: github.event_name == 'push' && github.ref == 'refs/heads/main'
+ uses: JamesIves/github-pages-deploy-action@releases/v4
+ with:
+ token: ${{ secrets.GITHUB_TOKEN }}
+ branch: gh-pages # Replace here the branch where your website is deployed
+ folder: __site
+ clean-exclude: |
+ previews/*
diff --git a/.gitignore b/.gitignore
index 03a95f60..7447087c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,6 @@
-_site
-.sass-cache
-.jekyll-metadata
-Gemfile.lock
-
-vendor
-bin
+__site/
+.DS_Store
+franklin
+franklin.pub
+node_modules/
+Manifest.toml
diff --git a/404.md b/404.md
index 7d7867a2..eb94d60f 100644
--- a/404.md
+++ b/404.md
@@ -1,7 +1,4 @@
----
-layout: page
----
-
+~~~
+~~~
-# 404
+~~~
+
404
+~~~
**Page not found :(**
diff --git a/CNAME b/CNAME
deleted file mode 100644
index 538732d3..00000000
--- a/CNAME
+++ /dev/null
@@ -1 +0,0 @@
-fluxml.ai
diff --git a/Gemfile b/Gemfile
deleted file mode 100644
index 1fbea86f..00000000
--- a/Gemfile
+++ /dev/null
@@ -1,33 +0,0 @@
-source "https://rubygems.org"
-
-# Hello! This is where you manage which Jekyll version is used to run.
-# When you want to use a different version, change it below, save the
-# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
-#
-# bundle exec jekyll serve
-#
-# This will help ensure the proper Jekyll version is running.
-# Happy Jekylling!
-# gem "jekyll", "~> 4.2.1"
-# Commented out since I was getting errors otherwsie.
-
-# This is the default theme for new Jekyll sites. You may change this to anything you like.
-gem "minima", "~> 2.0"
-
-# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
-# uncomment the line below. To upgrade, run `bundle update github-pages`.
-# gem "github-pages", group: :jekyll_plugins
-
-# If you have any plugins, put them here!
-group :jekyll_plugins do
- gem "jekyll-feed", "~> 0.6"
- gem "jekyll-octicons"
-end
-
-# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
-gem "tzinfo-data", platforms: [:mingw, :mswin, :x64_mingw, :jruby]
-
-# Performance-booster for watching directories on Windows
-gem "wdm", "~> 0.1.0" if Gem.win_platform?
-
-gem "webrick", "~> 1.7"
diff --git a/Project.toml b/Project.toml
new file mode 100644
index 00000000..8f357c56
--- /dev/null
+++ b/Project.toml
@@ -0,0 +1,3 @@
+[deps]
+Franklin = "713c75ef-9fc9-4b05-94a9-213340da978e"
+NodeJS = "2bd173c7-0d6d-553b-b6af-13a54713934c"
\ No newline at end of file
diff --git a/SomeFile.jl b/SomeFile.jl
deleted file mode 100644
index 7bff6aa5..00000000
--- a/SomeFile.jl
+++ /dev/null
@@ -1,1268 +0,0 @@
-print("This file is here to make this a Julia repo so it shows up on the Julia Hacktoberfest issue tracker")
-print("This file is here to make this a Julia repo so it shows up on the Julia Hacktoberfest issue tracker")
-print("This file is here to make this a Julia repo so it shows up on the Julia Hacktoberfest issue tracker")
-print("This file is here to make this a Julia repo so it shows up on the Julia Hacktoberfest issue tracker")
-print("This file is here to make this a Julia repo so it shows up on the Julia Hacktoberfest issue tracker")
-print("This file is here to make this a Julia repo so it shows up on the Julia Hacktoberfest issue tracker")
-print("This file is here to make this a Julia repo so it shows up on the Julia Hacktoberfest issue tracker")
-print("This file is here to make this a Julia repo so it shows up on the Julia Hacktoberfest issue tracker")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
-print("test")
diff --git a/assets/images/FluxGitHubPreview.png b/_assets/FluxGitHubPreview.png
similarity index 100%
rename from assets/images/FluxGitHubPreview.png
rename to _assets/FluxGitHubPreview.png
diff --git a/_assets/favicon_io/android-chrome-192x192.png b/_assets/favicon_io/android-chrome-192x192.png
new file mode 100644
index 00000000..7aafc3b7
Binary files /dev/null and b/_assets/favicon_io/android-chrome-192x192.png differ
diff --git a/_assets/favicon_io/android-chrome-512x512.png b/_assets/favicon_io/android-chrome-512x512.png
new file mode 100644
index 00000000..349452ad
Binary files /dev/null and b/_assets/favicon_io/android-chrome-512x512.png differ
diff --git a/_assets/favicon_io/apple-touch-icon.png b/_assets/favicon_io/apple-touch-icon.png
new file mode 100644
index 00000000..0600206d
Binary files /dev/null and b/_assets/favicon_io/apple-touch-icon.png differ
diff --git a/_assets/favicon_io/favicon-16x16.png b/_assets/favicon_io/favicon-16x16.png
new file mode 100644
index 00000000..d1f35ba6
Binary files /dev/null and b/_assets/favicon_io/favicon-16x16.png differ
diff --git a/_assets/favicon_io/favicon-32x32.png b/_assets/favicon_io/favicon-32x32.png
new file mode 100644
index 00000000..f6c1630b
Binary files /dev/null and b/_assets/favicon_io/favicon-32x32.png differ
diff --git a/_assets/favicon_io/favicon.ico b/_assets/favicon_io/favicon.ico
new file mode 100644
index 00000000..5fa3624d
Binary files /dev/null and b/_assets/favicon_io/favicon.ico differ
diff --git a/_assets/favicon_io/site.webmanifest b/_assets/favicon_io/site.webmanifest
new file mode 100644
index 00000000..45dc8a20
--- /dev/null
+++ b/_assets/favicon_io/site.webmanifest
@@ -0,0 +1 @@
+{"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"}
\ No newline at end of file
diff --git a/_assets/friends/FluxGitHubPreview.png b/_assets/friends/FluxGitHubPreview.png
new file mode 100644
index 00000000..a0e643a9
Binary files /dev/null and b/_assets/friends/FluxGitHubPreview.png differ
diff --git a/assets/images/alan-turing.jpg b/_assets/friends/alan-turing.jpg
similarity index 100%
rename from assets/images/alan-turing.jpg
rename to _assets/friends/alan-turing.jpg
diff --git a/assets/images/beacon_biosignals.jpg b/_assets/friends/beacon_biosignals.jpg
similarity index 100%
rename from assets/images/beacon_biosignals.jpg
rename to _assets/friends/beacon_biosignals.jpg
diff --git a/assets/images/cambridge.jpg b/_assets/friends/cambridge.jpg
similarity index 100%
rename from assets/images/cambridge.jpg
rename to _assets/friends/cambridge.jpg
diff --git a/assets/images/cmu-logo.png b/_assets/friends/cmu-logo.png
similarity index 100%
rename from assets/images/cmu-logo.png
rename to _assets/friends/cmu-logo.png
diff --git a/assets/images/edinburgh.png b/_assets/friends/edinburgh.png
similarity index 100%
rename from assets/images/edinburgh.png
rename to _assets/friends/edinburgh.png
diff --git a/assets/images/invenia-logo.png b/_assets/friends/invenia-logo.png
similarity index 100%
rename from assets/images/invenia-logo.png
rename to _assets/friends/invenia-logo.png
diff --git a/assets/images/juliac-logo.png b/_assets/friends/juliac-logo.png
similarity index 100%
rename from assets/images/juliac-logo.png
rename to _assets/friends/juliac-logo.png
diff --git a/assets/images/mit-logo.png b/_assets/friends/mit-logo.png
similarity index 100%
rename from assets/images/mit-logo.png
rename to _assets/friends/mit-logo.png
diff --git a/assets/images/rai-logo.png b/_assets/friends/rai-logo.png
similarity index 100%
rename from assets/images/rai-logo.png
rename to _assets/friends/rai-logo.png
diff --git a/assets/images/ucl-logo.png b/_assets/friends/ucl-logo.png
similarity index 100%
rename from assets/images/ucl-logo.png
rename to _assets/friends/ucl-logo.png
diff --git a/assets/images/uoft_logo.png b/_assets/friends/uoft_logo.png
similarity index 100%
rename from assets/images/uoft_logo.png
rename to _assets/friends/uoft_logo.png
diff --git a/assets/images/washington.jpg b/_assets/friends/washington.jpg
similarity index 100%
rename from assets/images/washington.jpg
rename to _assets/friends/washington.jpg
diff --git a/assets/2021-12-1-flux-numfocus/flux.png b/_assets/logo.png
similarity index 100%
rename from assets/2021-12-1-flux-numfocus/flux.png
rename to _assets/logo.png
diff --git a/_config.yml b/_config.yml
deleted file mode 100644
index 9fa83e74..00000000
--- a/_config.yml
+++ /dev/null
@@ -1,44 +0,0 @@
-# Welcome to Jekyll!
-#
-# This config file is meant for settings that affect your whole blog, values
-# which you are expected to set up once and rarely edit after that. If you find
-# yourself editing this file very often, consider using Jekyll's data files
-# feature for the data you need to update frequently.
-#
-# For technical reasons, this file is *NOT* reloaded automatically when you use
-# 'bundle exec jekyll serve'. If you change this file, please restart the server process.
-
-# Site settings
-# These are used to personalize your new site. If you look in the HTML files,
-# you will see them accessed via {{ site.title }}, {{ site.email }}, and so on.
-# You can create any custom variable you would like, and they will be accessible
-# in the templates via {{ site.myvariable }}.
-title: Flux
-email: mike.j.innes@gmail.com
-description: >- # this means to ignore newlines until "baseurl:"
- The Flux machine learning library for Julia
-baseurl: "" # the subpath of your site, e.g. /blog
-url: "https://fluxml.github.io" # the base hostname & protocol for your site, e.g. http://example.com
-twitter_username: FluxML
-github_username: FluxML
-
-# Build settings
-markdown: kramdown
-kramdown:
- input: GFM #Github Flavored Markdown
-theme: minima
-plugins:
- - jekyll-feed
- - jekyll-octicons
-
-# Exclude from processing.
-# The following items will not be processed, by default. Create a custom list
-# to override the default setting.
-# exclude:
-# - Gemfile
-# - Gemfile.lock
-# - node_modules
-# - vendor/bundle/
-# - vendor/cache/
-# - vendor/gems/
-# - vendor/ruby/
diff --git a/script/default.css b/_css/script_default.css
similarity index 100%
rename from script/default.css
rename to _css/script_default.css
diff --git a/_css/site.css b/_css/site.css
new file mode 100644
index 00000000..9ac950a2
--- /dev/null
+++ b/_css/site.css
@@ -0,0 +1,274 @@
+@import url("https://fonts.googleapis.com/css?family=Lato:400,400i");
+
+.octicon {
+ display: inline-block;
+ vertical-align: text-bottom;
+ fill: currentColor
+}
+
+body {
+ background: #143c3c;
+ font-family: Lato, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
+ line-height: 1.7
+}
+
+.logo {
+ font-style: italic
+}
+
+.navbar .logo {
+ text-shadow: 2px 2px 5px rgba(0,0,0,0.1)
+}
+
+.content {
+ background: #f0fafa
+}
+
+.content .container {
+ background: white;
+ padding-top: 2em;
+ padding-bottom: 2em
+}
+
+.content h1 {
+ font-size: 20pt;
+ padding-bottom: 0.2em;
+ border-bottom: 3px solid #ebf5eb;
+ text-align: center;
+ font-weight: bold;
+ margin-bottom: 1em
+}
+
+.content h2 {
+ font-size: 18pt;
+ text-align: right;
+ margin-top: 2em
+}
+
+.content h3 {
+ font-size: 14pt;
+ font-weight: bold;
+ margin-top: 2em
+}
+
+.content h4 {
+ font-size: 13pt;
+ margin-top: 2em
+}
+
+.content h5 {
+ font-size: 13pt;
+ font-style: italic;
+ margin-top: 2em
+}
+
+.content blockquote {
+ font-style: italic;
+ border-left: 5px solid #ebf5eb;
+ padding-left: 1em;
+ margin-left: 1em
+}
+
+.content .author {
+ text-align: right;
+ font-style: italic;
+ color: #009696
+}
+
+.content .attrib {
+ font-style: italic;
+ color: #003232
+}
+
+.container img {
+ max-width: 100%;
+}
+.container h1, .container h2, .container h3, .container h4, .container h5, .container p, .container blockquote, .container .hljs, .container ul :not(.navbar-nav) {
+ max-width: 650px;
+ margin-left: auto;
+ margin-right: auto;
+}
+.container p {
+ text-align:justify;
+}
+.container p.p-image {
+ max-width: 100%;
+ text-align: center;
+}
+
+.lighter {
+ font-weight: 300;
+ letter-spacing: 1px
+}
+
+p a:hover, p a:visited:hover {
+ color: #006464;
+ text-decoration: none
+}
+
+p a, p a:visited {
+ color: #006464;
+ border-bottom: 2px solid #b4dcdc
+}
+
+p a:hover {
+ border-bottom: 2px solid #0aa
+}
+
+.feature a:hover, .feature a:visited:hover {
+ color: #006464;
+ text-decoration: none
+}
+
+.feature a, .feature a:visited {
+ color: #006464;
+ border-bottom: 2px solid #b4dcdc
+}
+
+.feature a:hover {
+ border-bottom: 2px solid #0aa
+}
+
+.call {
+ padding-top: 2em;
+ padding-bottom: 2em;
+ text-align: center
+}
+
+.call p:last-child {
+ margin: 0
+}
+
+.footer {
+ margin-top: 1.5rem;
+ margin-bottom: 3rem;
+ color: white
+}
+
+pre {
+ margin: 0
+}
+
+pre code.hljs {
+ background: #f5ffff;
+ border: 2px solid #c8f0f0;
+ border-radius: 5px;
+ padding-left: 1em;
+ padding-right: 1em;
+ margin-bottom: 1em;
+}
+
+.navbar-collapse.collapse.in {
+ display: block !important
+}
+
+.jumbotron {
+ margin-bottom: 0;
+ position: relative;
+ border-bottom: 1px thick;
+}
+
+.jumbotron .container {
+ max-width: 750px;
+ box-shadow: 2px;
+ position: relative;
+ padding: none;
+ text-align: center;
+}
+
+.jumbotron .buttons {
+ padding: 10px;
+}
+
+@media (min-width: 576px){
+ .jumbotron .container{
+ padding: calc(1rem + 30px) 15px;
+ }
+}
+
+.jumbotron hr {
+ border-top: 1px solid rgb(100, 150, 150);
+}
+
+.jumbotron h1 {
+ font-family: lato;
+ font-style: italic;
+}
+
+/* Description */
+.jumbotron {
+ padding: 0;
+}
+
+.jumbotron p {
+ font-size: 1.1em;
+ margin-bottom: 1.5rem;
+}
+
+.btn-primary {
+ color: rgb(30, 50, 50);
+ border-color: rgb(150, 200, 200);
+ background: none;
+ border-width: 2px;
+}
+
+.jumbotron .btn-primary:hover {
+ color: rgb(0, 0, 0);
+ border-color: rgb(30, 80, 80);
+ background: none;
+ border-width: 2px;
+}
+
+/*Features*/
+.features {
+ background:white;
+ padding-top:2em;
+}
+
+.feature {
+ padding-top: 1em;
+ padding-bottom: 2rem;
+ letter-spacing: 0.1px;
+}
+
+.feature-title {
+ text-align:center;
+ color:rgb(100,130,130)
+}
+
+.paper {
+ padding: 1em;
+}
+
+.feature h5, .paper h5 {
+ font-style: italic;
+ padding-bottom: 0.5em;
+}
+
+.friends{
+ background: #fff;
+}
+.friends *{
+ text-align: center;
+ padding:10px;
+}
+.friends h3{
+ margin-top: 50px;
+}
+.friends ul{
+ display: flex;
+ -webkit-justify-content: space-evenly;
+ justify-content: space-evenly;
+ flex-wrap: wrap;
+ list-style: none;
+ align-items: center;
+}
+.friends ul li img{
+ max-width: 200px;
+ max-height: 100px;
+ height: auto;
+}
+
+.tight-list p {
+ margin-bottom: 0;
+}
diff --git a/_data/experiments.yml b/_data/experiments.yml
deleted file mode 100644
index 889dead0..00000000
--- a/_data/experiments.yml
+++ /dev/null
@@ -1,38 +0,0 @@
-go :
- name: Go
- pass_option: true
- start_screen: false
- game_over_message: Click to play again
- instructions_page: experiments/game/instructions/go.html
- code_link: "https://github.com/tejank10/AlphaGo.jl"
- canvas: false
- no_options: false
-chess:
- name: Chess
- pass_option: false
- start_screen: false
- game_over_message: Click to play again
- instructions_page: experiments/game/instructions/chess.html
- code_link: "#"
- canvas: false
- no_options: false
-breakout:
- name: Breakout
- pass_option: false
- start_screen: true
- start_message: Press [Enter] to start
- game_over_message: Press [Left Arrow] or [Right Arrow] keys to play again
- instructions_page: experiments/game/instructions/breakout.html
- code_link: "#"
- canvas: true
- no_options: false
-pong:
- name: Pong
- pass_option: false
- start_screen: true
- start_message: Press [Enter] to start
- game_over_message: Press [Up arrow key] or [Down arrow key] to play again
- instructions_page: experiments/game/instructions/pong.html
- code_link: "#"
- canvas: false
- no_options: true
\ No newline at end of file
diff --git a/_includes/experiments/game/content.html b/_includes/experiments/game/content.html
deleted file mode 100644
index 96ca7c1e..00000000
--- a/_includes/experiments/game/content.html
+++ /dev/null
@@ -1,44 +0,0 @@
-
-
-
Flux Experiment: {{ include.game.name }} Game
-
-
-
-
{{ include.game.name }}
- {% if include.game.no_options == false %}
-
- {% if include.game.pass_option %}
-
Pass
- {% endif %}
-
-
-
- {% endif %}
-
-
- {% if include.game.canvas %}
-
- {% else %}
-
- {% endif %}
-
- {% if include.game.start_screen %}
-
-
{{ include.game.start_message }}
-
- {% endif %}
-
-
Game Over
-
{{ include.game.game_over_message }}
-
-
-
-
-
-
Instructions
- {% include {{ include.game.instructions_page }} %}
-
See code
-
-
-
-
diff --git a/_includes/experiments/game/footer.html b/_includes/experiments/game/footer.html
deleted file mode 100644
index e1121ea6..00000000
--- a/_includes/experiments/game/footer.html
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/_includes/experiments/game/headers.html b/_includes/experiments/game/headers.html
deleted file mode 100644
index 7ac5a263..00000000
--- a/_includes/experiments/game/headers.html
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/_includes/experiments/game/instructions/breakout.html b/_includes/experiments/game/instructions/breakout.html
deleted file mode 100644
index 8a574892..00000000
--- a/_includes/experiments/game/instructions/breakout.html
+++ /dev/null
@@ -1 +0,0 @@
- Use arrow keys to move the paddle
\ No newline at end of file
diff --git a/_includes/experiments/game/instructions/chess.html b/_includes/experiments/game/instructions/chess.html
deleted file mode 100644
index 4f40057b..00000000
--- a/_includes/experiments/game/instructions/chess.html
+++ /dev/null
@@ -1,11 +0,0 @@
- Human plays white, computer plays black. Drag and drop to move pieces. Standard rules apply
-Moves
-
- The king moves exactly one square horizontally, vertically, or diagonally. A special move with the king known as castling is allowed only once per player, per game (see below).
- A rook moves any number of vacant squares in a horizontal or vertical direction. It also is moved when castling.
- A bishop moves any number of vacant squares in any diagonal direction.
- The queen moves any number of vacant squares in a horizontal, vertical, or diagonal direction.
- A knight moves to the nearest square not on the same rank, file, or diagonal. (This can be thought of as moving two squares horizontally then one square vertically, or moving one square horizontally then two squares vertically—i.e. in an "L" pattern.) The knight is not blocked by other pieces: it jumps to the new location.
- A pawn moves straight forward one square, if that square is vacant. If it has not yet moved, a pawn also has the option of moving two squares straight forward, provided both squares are vacant. Pawns cannot move backwards.
- Pawns are the only pieces that capture differently from how they move. A pawn can capture an enemy piece on either of the two squares diagonally in front of the pawn (but cannot move to those squares if they are vacant).
-
\ No newline at end of file
diff --git a/_includes/experiments/game/instructions/go.html b/_includes/experiments/game/instructions/go.html
deleted file mode 100644
index b61f216b..00000000
--- a/_includes/experiments/game/instructions/go.html
+++ /dev/null
@@ -1,13 +0,0 @@
-Human plays black, computer plays white. Two consecutive passes result in a game over. The best 3 moves found are circled in green. Illegal moves are shown in red
-
-Rules
-
- The board is empty at the onset of the game.
- Black makes the first move, after which White and Black alternate.
- A move consists of placing one stone of one's own color on an empty intersection on the board.
- A player may pass their turn at any time.
- A stone or solidly connected group of stones of one color is captured and removed from the board when all the intersections directly adjacent to it are occupied by the enemy. (Capture of the enemy takes precedence over self-capture.)
- Two consecutive passes end the game.
- A player's area consists of all the points the player has either occupied or surrounded.
- The player with more area wins.
-
\ No newline at end of file
diff --git a/_includes/experiments/game/instructions/pong.html b/_includes/experiments/game/instructions/pong.html
deleted file mode 100644
index 8a574892..00000000
--- a/_includes/experiments/game/instructions/pong.html
+++ /dev/null
@@ -1 +0,0 @@
- Use arrow keys to move the paddle
\ No newline at end of file
diff --git a/_layout/foot.html b/_layout/foot.html
new file mode 100644
index 00000000..e01cb41c
--- /dev/null
+++ b/_layout/foot.html
@@ -0,0 +1,24 @@
+
+
+ {{isnotpage index}}
+
+
+ {{end}}
+
+
+
+
+
+
+
+
+
+
+
+
+