L.E.N.

Why This Site Is Built This Way

Most websites end up with more infrastructure than the writing deserves.

A CMS. A database. A visual editor. A plugin stack. A hosting layer. A staging environment. Then another set of tools to make all of that easier to manage.

We wanted the opposite.

The L.E.N. site is built around plain Markdown files in Obsidian. Quartz turns those files into a static website. Easy Git quietly syncs content to GitHub. Cloudflare Pages builds and serves the result.

That is the whole publishing chain.

The useful thing is the writing. The rest of the system should get out of the way.

Obsidian for writing

The site starts in Obsidian because the content should remain useful even if the website disappears.

A blog post is just a Markdown file. A page is just a Markdown file. There is no proprietary editor, no database export and no content trapped inside a platform.

That matters to us.

L.E.N. is built around the idea that useful organisational knowledge should stay understandable, portable and connected to its source. It would be odd to build the website itself around a publishing system that did the opposite.

Obsidian also makes the writing workflow almost frictionless.

Open a note. Write. Save.

No CMS login. No visual page builder. No publishing dashboard.

Quartz for the website

Quartz takes the Markdown and turns it into the actual site.

It gives us the useful parts of a modern website — navigation, metadata, RSS, structured pages and static build output — without requiring the content itself to stop being plain files.

We have deliberately removed most of the default site chrome.

No dashboard look. No cards everywhere. No sidebar full of things nobody asked for.

The page should feel like the document it came from.

That is also why the site is easy to understand technically. The source is readable. The output is static. There is very little happening between the two.

GitHub and Easy Git for publishing

GitHub is the history of the site.

Every change can be traced. Every version can be recovered. The website is not a mysterious live object being edited in place; it is a sequence of explicit changes.

Easy Git handles the boring part.

The content/ folder is synced from Obsidian to GitHub automatically, roughly every fifteen minutes. A new post does not need a manual deployment ritual. Write it, save it, and the publishing chain takes over.

Code and configuration changes are kept separate. Those still use normal Git commits because changes to the system itself should be deliberate.

That distinction is important:

content should be easy to publish; infrastructure should be harder to change accidentally.

Cloudflare for deployment

Cloudflare Pages builds the site from GitHub and serves it at cclen.com.

Every change to the production branch triggers a new build. The result is a static site: fast, simple and with very little server-side machinery to maintain.

Cloudflare gives every Pages project a default pages.dev address. Ours still exists technically, but it permanently redirects to cclen.com, so there is only one public version of the site.

The result is a publishing workflow that looks like this:

Obsidian → Easy Git → GitHub → Cloudflare → cclen.com

There are more sophisticated ways to build a website.

That is not necessarily the same thing as better.

For this site, the goal was simpler:

make writing easy, keep the source portable, keep the history visible, and make the infrastructure boring.