lumen

A constantly evolving and thoughtful architecture for creating static blogs, built with Astro.
Features
Minimal runtime
- Four direct dependencies (Astro and Sentry).
- Zero hydration and 0 KB of client JS by default.
- Every page is rendered to plain HTML at build time (SSG).
Built for RAG and LLM indexing
- Support for
llms.txt and llms-full.txt. Generation of a text index and a condensed site summary in the root directory for quick discovery and aggregation by AI systems.
- Direct access to Markdown sources. Every post serves clean raw Markdown (no HTML noise, layout, or scripts) at a stable URL for efficient loading into RAG context.
Grounded structured data (JSON-LD)
- A single connected graph.
WebSite, Blog, BlogPosting, WebPage, and Person nodes are explicitly linked into one knowledge network.
- 100% consistency between the markup in the JSON-LD graph and the content actually visible on the page.
- Stable node IDs. Canonical URLs with hash fragments (
#web, #blog, #article, #person) for end-to-end data merging across pages.
Semantic tree
- Hierarchical HTML structure with
<article> for self-contained publications and <section> for logical subdivisions.
- Logical grouping of metadata using
<header> and <footer> tags within <article> and <section> to separate it from the main content.
- Heading tags (
<h2>-<h6>) are chosen in strict accordance with section nesting depth to form a clear table of contents.
- A correct accessibility tree.
- Standardized time markup.
Crawl efficiency and SEO
- Explicit canonicalization on every page.
- Hierarchical URL structure with hyphens separating words.
- Automatically generated
sitemap.xml and robots.txt at build time.
User experience optimization
- Zero cumulative layout shift (CLS).
- Asynchronous loading of visual assets (
decoding="async" and loading="lazy").
- Images are converted to the modern WebP format at build time.
- Automatic Atom feed generation for subscribers and aggregators.
Quick Start
$ bun install
$ bun run start
Special thanks to our sponsors and partners for supporting the project.
Contributors
Thanks go to these wonderful people!
License
The MIT License (MIT)
Copyright © 2016-2026 Alex Shelepenok
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the “Software”), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
评论