From 0cafd7545d4692068a7366a382285b6dfbba10f6 Mon Sep 17 00:00:00 2001 From: Leonora Tindall Date: Wed, 21 Sep 2022 14:00:19 -0500 Subject: [PATCH] inclue all content for ease of editing --- README.md | 11 ++++++-- content/author.md | 9 +++++++ content/images/diagram.html | 11 ++++++++ content/images/diagram.jpg | Bin 0 -> 62329 bytes content/index.md | 51 ++++++++++++++++++++++++++++++++++++ 5 files changed, 80 insertions(+), 2 deletions(-) create mode 100644 content/author.md create mode 100644 content/images/diagram.html create mode 100644 content/images/diagram.jpg create mode 100644 content/index.md diff --git a/README.md b/README.md index ae4b20d..dc9e22a 100644 --- a/README.md +++ b/README.md @@ -3,8 +3,15 @@ A Markdown renderer on the Compute@Edge platform from Fastly. The main source file, `src/main.rs`, contains all the code for the renderer. -The header and footer files I use are included at `content/_header.md` and -`content/_footer.md` for easy inspection. +The content on the server is stored in `content/` for convenience. + +## Deploying Content + +Simply use `scp` to copy the files to the server: + +``` +scp -r ./content/* example.com:/var/www-html/edgeblog/ +``` ## Nginx Configuration diff --git a/content/author.md b/content/author.md new file mode 100644 index 0000000..cc894b8 --- /dev/null +++ b/content/author.md @@ -0,0 +1,9 @@ +# About the Author + +This very silly application was written by Leonora Tindall. +You can find her other work at [nora.codes](https://nora.codes), +or find her on [Twitter](https://twitter.com/NoraDotCodes) +and on the Fediverse at [Weirder Earth](https://weirder.earth/@noracodes). + + +Thanks for visiting! diff --git a/content/images/diagram.html b/content/images/diagram.html new file mode 100644 index 0000000..0b9cb1d --- /dev/null +++ b/content/images/diagram.html @@ -0,0 +1,11 @@ + + + + +with_cache + + +
+ + + \ No newline at end of file diff --git a/content/images/diagram.jpg b/content/images/diagram.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b832107535dafe59fcf830ca2d57cb94fca0dd02 GIT binary patch literal 62329 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 literal 0 HcmV?d00001 diff --git a/content/index.md b/content/index.md new file mode 100644 index 0000000..24bb1e9 --- /dev/null +++ b/content/index.md @@ -0,0 +1,51 @@ +### What? + +This page is written in Markdown (actually in three Markdown files). + +These Markdown files are requested by Fastly's Compute@Edge engine and rendered into +HTML at the edge, on every request. + +You can check out the source code [here](https://git.nora.codes/nora/edgeblog). + +The only dependency of the service, other than the Fastly SDK, +is Raph Levien's [`pulldown-cmark`][pulldown_cmark]. +It's not an optimal choice, as it only supports one-shot rendering and requires buffering +the Markdown (though not the resulting HTML) in memory, but it's the best option available +at the moment. + +[pulldown_cmark]: https://github.com/raphlinus/pulldown-cmark + +[![A diagram showing the difference in pipeline between normal websites with a CDN and this monstrosity](images/diagram.jpg)](images/diagram.html) + +The renderer takes advantage of the fact that Markdown allows embedding raw HTML by embedding +anything with a "text" MIME type in the Markdown source, while passing through anything +without a "text" MIME type - images, binary data, and so forth - unchanged. + +That allows the above JPG image to embed properly, while also allowing the linked SVG image page +to be rendered as a component of a Markdown document. + + +### Why? + +I work on the Compute@Edge platform and wanted to get some hands on experience with it. +This is not a good use of the platform for various reasons; among other things, +it buffers all page content in memory for every request, which is ridiculous. + +A static site generator like [Hugo][hugo] or [Zola][zola] is an objectively better choice +for bulk rendering, while the C@E layer is better for filtering, editing, and dynamic content. + +[hugo]: https://gohugo.io/ +[zola]: https://www.getzola.org/ + +That said, this does demonstrate some interesting properties of the C@E platform. +For instance, the source files are hosted in [a subdirectory][source] of my webserver; +in theory, you could directory-traverse your way into my blog source, but in fact, +you can't. + +[source]: https://nora.codes/edgeblog/ + +I also have a [Clacks Overhead][clacks] set for my webserver, and the C@E platform +is set up to make passing through existing headers trivial even with entirely +synthetic responses like these, so that header is preserved. + +[clacks]: https://xclacksoverhead.org/home/about