diff --git a/docs/imgs/serene.png b/docs/imgs/serene.png new file mode 100644 index 0000000..a0d160c Binary files /dev/null and b/docs/imgs/serene.png differ diff --git a/docs/index.md b/docs/index.md index 000ea34..f21dc44 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,17 +1,30 @@ -# Welcome to MkDocs +--- +hide: + - navigation + - toc +title: Home +--- -For full documentation visit [mkdocs.org](https://www.mkdocs.org). +# “What I cannot create, I do not understand” +-- Richard Feynman -## Commands +## Serene is ... +A modern lisp, and it is to be born. It started out of the curiosity of the author and his journey +through computer science and mathematics. We are at the early stages of the development process +and there is a long way to go. If you're interested, contact us by joining our mailing list and +checkout the git repository. Furthermore, we document our progress in development via some video +tutorials and code walkthrough that can be a good guide for the developers who are eager to join +the team. You can find the videos on [my :fontawesome-brands-youtube:{ .youtube } YouTube channel](https://www.youtube.com/c/lxsameer). -* `mkdocs new [dir-name]` - Create a new project. -* `mkdocs serve` - Start the live-reloading docs server. -* `mkdocs build` - Build the documentation site. -* `mkdocs -h` - Print help message and exit. -## Project layout +## Announcements: - mkdocs.yml # The configuration file. - docs/ - index.md # The documentation homepage. - ... # Other markdown pages, images and other files. +### * How to build a compiler with LLVM and MLIR +I have decided to make a video series as a guide and walk through the Serene’s code base. This +way, anyone who is interested in Serene but never done language development will have an easier +time getting started with Serene. It will also serve as a historical documentary for some +decisions and implementations that we made throughout the development process. The video series +in accessible via my YouTube channel and How to build a compiler with LLVM and MLIR playlist. +Looking forward to your feedback. :smile: + +Date: `2021-08-15` diff --git a/docs/javascripts/mathjax.js b/docs/javascripts/mathjax.js new file mode 100644 index 0000000..396f03b --- /dev/null +++ b/docs/javascripts/mathjax.js @@ -0,0 +1,18 @@ +window.MathJax = { + tex: { + inlineMath: [["\\(", "\\)"]], + displayMath: [["\\[", "\\]"]], + processEscapes: true, + processEnvironments: true + }, + options: { + ignoreHtmlClass: ".*|", + processHtmlClass: "arithmatex" + } +}; + +document$.subscribe(() => { + + + MathJax.typesetPromise() +}) diff --git a/docs/requirements.txt b/docs/requirements.txt index 233599b..08de461 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,3 +1,4 @@ mkdocs-material mike mkdocs-git-revision-date-localized-plugin +mkdocs-glightbox diff --git a/docs/resources.md b/docs/resources.md new file mode 100644 index 0000000..6bf09b5 --- /dev/null +++ b/docs/resources.md @@ -0,0 +1,5 @@ +--- +title: Resources +--- + +# Development Resources diff --git a/docs/stylesheets/extra.css b/docs/stylesheets/extra.css new file mode 100644 index 0000000..2affd52 --- /dev/null +++ b/docs/stylesheets/extra.css @@ -0,0 +1,12 @@ +#what-i-cannot-create-i-do-not-understand { + color: white; + font-weight: 700; + margin-bottom: -20px; +} + +.md-typeset .md-annotation__index > ::before { + content: attr(data-md-annotation-id); +} +.md-typeset :focus-within > .md-annotation__index > ::before { + transform: none; +} diff --git a/mkdocs.yml b/mkdocs.yml index 81827ed..3a6c07c 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,13 +1,17 @@ site_name: Serene Programming Language +site_description: A modern, typed lisp +site_author: lxsameer repo_url: https://devheroes.codes/serene/serene repo_name: Serene copyright: Copyright © 2019 - 2023 Sameer Rahmani edit_uri: edit/master/docs/ +site_dir: ./build/docs + theme: name: material - logo: /img/logo.png - favicon: images/favicon.png + logo: /imgs/serene.png + favicon: /imgs/serene.png icon: repo: fontawesome/brands/git-alt edit: material/pencil @@ -30,9 +34,16 @@ theme: - search.share - header.autohide - navigation.footer + - content.code.copy + - content.code.annotate palette: - + - scheme: slate + toggle: + icon: material/brightness-4 + name: Switch to light mode + primary: deep purple + accent: amber # Palette toggle for light mode - scheme: default @@ -42,12 +53,6 @@ theme: primary: deep purple accent: amber # Palette toggle for dark mode - - scheme: slate - toggle: - icon: material/brightness-4 - name: Switch to light mode - primary: deep purple - accent: amber @@ -56,9 +61,12 @@ plugins: - git-revision-date-localized: enable_creation_date: true - search + # - social: # concurrency: 16 - tags + #tags_file: tags.md + - mike: # These fields are all optional; the defaults are as below... alias_type: symlink @@ -75,4 +83,47 @@ extra: social: - icon: fontawesome/brands/mastodon link: https://social.lxsameer.com/@lxsameer + - icon: fontawesome/brands/twitter + link: https://twitter.com/@lxsameer + - icon: fontawesome/brands/youtube + link: https://www.youtube.com/c/lxsameer + generator: false + +extra_css: + - stylesheets/extra.css + +markdown_extensions: + - attr_list + - md_in_html + - def_list + - footnotes + - tables + - md_in_html + - pymdownx.superfences + - admonition + - pymdownx.details + - pymdownx.highlight: + anchor_linenums: true + line_spans: __span + pygments_lang_class: true + - pymdownx.inlinehilite + - pymdownx.snippets + - pymdownx.superfences + - pymdownx.superfences: + custom_fences: + - name: mermaid + class: mermaid + format: !!python/name:pymdownx.superfences.fence_code_format + - pymdownx.tasklist: + custom_checkbox: true + - pymdownx.emoji: + emoji_index: !!python/name:materialx.emoji.twemoji + emoji_generator: !!python/name:materialx.emoji.to_svg + - pymdownx.arithmatex: + generic: true + +extra_javascript: + - javascripts/mathjax.js + - https://polyfill.io/v3/polyfill.min.js?features=es6 + - https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js