History
2024
Changes
We shall see.
@@ -17,7 +17,7 @@ This website serves as a portfolio of my projects, and a place to post content I
It was generated using a custom [static site generator](https://en.wikipedia.org/wiki/Static_site_generator),
is currently hosted on GitHub pages, and built via GitHub actions.
I can be reached via email at `contact [at] wasteofcyberspace [dot] net`wasteofcyberspace.net` or on GitHub at <https://github.com/ZX-80>.
:::
Commit: ed165e2a80f44a15e57e8e850324e4ab98c5eff5
A new changelog page is now generated for every page.
@@ -11,7 +11,7 @@
:::
I'm a software developer from Belfast, currently living in the US of A :statue_of_liberty:.:statue_of_liberty:.
This website serves as a portfolio of my projects, and a place to post content I find interesting or useful.
It was generated using a custom [static site generator](https://en.wikipedia.org/wiki/Static_site_generator),
Commit: 7bdd1d5fb57afe78776f78c99b282376faa3fc11
@@ -17,7 +17,7 @@ This website serves as a portfolio of my projects, and a place to post content I
It was generated using a custom [static site generator](https://en.wikipedia.org/wiki/Static_site_generator),
is currently hosted on GitHub pages, and built via GitHub actions.
I can be reached via email at <contact@wasteofcyberspace.net>`contact [at] wasteofcyberspace [dot] net` or on GitHub at <https://github.com/ZX-80>.
:::
Commit: 3711b3bf7ee642d20c9fbe8df9c73c397b425146
@@ -22,7 +22,7 @@ I can be reached via email at <contact@wasteofcyberspace.net> or on GitHub at <h
:::
{style="width: 20rem;"}
![USA Flag](/images/Flag_of_the_United_States.png){style="aspect-ratio:Flag](/images/flag-of-the-united-states.png){style="aspect-ratio: 40 / 21;"}
::::
Commit: 833a2a07b9a9fccfde4d74cf40ef5f9c4ae36670
@@ -0,0 +1,88 @@
:{#metadata
title="home"
banner="hawaii.jpg"
}
## About
---
:::: side-by-side
:::
I'm a software developer from Belfast, currently living in the US of A :statue_of_liberty:.
This website serves as a portfolio of my projects, and a place to post content I find interesting or useful.
It was generated using a custom [static site generator](https://en.wikipedia.org/wiki/Static_site_generator),
is currently hosted on GitHub pages, and built via GitHub actions.
I can be reached via email at <contact@wasteofcyberspace.net> or on GitHub at <https://github.com/ZX-80>.
:::
{style="width: 20rem;"}
![USA Flag](/images/Flag_of_the_United_States.png){style="aspect-ratio: 40 / 21;"}
::::
## Site Info
---
My first website was written in 2017 with raw HTML/CSS and has unfortunately been abandoned for many years (writing each page like that is
no fun). This project started around 2023, as a spin-off from a [djot](https://djot.net/) parser I was writing for [Python](https://www.python.org/). I figured
if I could turn simple documents like djot into HTML I might as well fix up my old website.
### Features
- Easily extensible via filters
- [Mermaid JS](https://mermaid.js.org/) charts
- GitHub style [alerts](https://github.com/orgs/community/discussions/16925)
- Syntax highlighting (580+ languages)
- Tabs
- Table of contents (TOC)
- [MathML](https://developer.mozilla.org/en-US/docs/Web/MathML) support
- Uses git to manage created / edited dates
- Page metadata
- Automatic anchors for page elements
- Generated navigation bar with TOC
- Supports 60+ document types as input
To speed up development, I've made use of some other libraries:
- [Pygments](https://pygments.org/): Syntax highlighting for nearly 580+ languages.
- [Pandoc](https://pandoc.org/): Document to HTML conversion
- [Panflute](https://github.com/sergiocorreia/panflute): Easy editing of pandoc documents
- [dominate](https://github.com/Knio/dominate/tree/master): HTML templating in Python
### Building
Building is as simple as `git push`, after which a GitHub action will install and run the build script at <https://github.com/ZX-80/Cyberspace>,
publishing to GitHub pages.
The build script itself will scan for css files, top-level source files (for the navigation bar), and filters. Then it will run each
source file in the source directory through the following stages:
1. Convert the document to a panflute document
2. Apply filters one by one
3. Convert the panflute document into the article HTML
4. Wrap the article HTML to get the page HTML
```mermaid
flowchart LR
%% Convert to panflute document
Document -- pandoc --> panflute_doc[Panflute Document]
%% Apply filters
panflute_doc --> Filters --> panflute_doc
%% Convert to article HTML
panflute_doc -- pandoc --> article_html[Article HTML]
%% Wrap article HTML in page HTML
article_html --> full_html[Full HTML]
```
---
Unless stated otherwise, all content on this site is published under [CC-BY-SA](https://creativecommons.org/licenses/by-sa/4.0/).
All code on this site is available under the [MPL](https://www.mozilla.org/en-US/MPL/2.0/).
Commit: bcfb811d63c789b26a615ca063bb69b8a58ab03d