Entropic is a retro textmode blog theme for purists, built with Astro, that renders articles as fixed-width text with ANSI colors, ASCII frames, and volume-based organization.
What is Entropic?
Entropic is an open-source blog theme for Astro that presents content through a textmode interface: fixed-width text, ASCII frames, ANSI colors, bitmap CJK glyphs, and plain .phile documents. It accepts articles written as .phile files with YAML frontmatter (title, date, author, optional order, subtitle, redacted) and plain-text bodies, and produces a static site with volume indexes and per-article routes. The repository also includes SEO helpers for RSS, sitemap, and robots.txt, and is configured to deploy on platforms such as Vercel.
Key Features
- Textmode rendering — Renders article bodies as fixed-width text that preserves layout, wraps to a configured article width, supports ANSI escape sequences, and displays images.
- Volume organization — Articles are grouped into numbered volumes via directories like volume-0, volume-1, volume-2, mapped to public routes such as /volume/n/ and /volume/n/phile-name/.
- Redaction support — Setting redacted: true in a phile renders a redacted screen, and a pre-commit hook unstages redacted files so the worktree stays untouched.
- Ink block syntax — Extends plain text with an ink syntax for colorized annotations, demonstrated in the ANSI ink reference linked in the README.
- Configurable appearance — Centralized config files control site text (site.ts), volume titles and sorting (volumes.ts), colors/fonts/cell sizing (appearance.ts), and glitch/particle effects (effects.ts).
- Bitmap CJK glyphs — Renders Chinese/Japanese/Korean characters via a bitmap atlas generated from WenQuanYi fonts, with font subsets committed to the repo.
- Font asset pipeline — Regenerate font subsets and CJK atlases with pnpm assets:fonts, which uses fonttools and optionally resolves it via uv.
Who is it for?
Entropic is for bloggers and developers who want a deliberately retro textmode aesthetic for personal or technical writing. It is well-suited to security researchers publishing binary exploitation or vulnerability research write-ups, since the project topics include cybersecurity and vulnerability-research. It also appeals to retrocomputing enthusiasts who want terminal-like presentation while keeping a modern static-site build.
What can you do with Entropic?
- Security researchers: Publish binary exploitation write-ups with ANSI color annotations for memory addresses, permissions, and offsets.
- Retrocomputing enthusiasts: Create a blog that mimics terminal output, with volume indexes and ASCII frames, without abandoning static-site tooling.
- Technical writers: Organize long-form articles into volumes and use the ink block syntax to add colorized callouts or annotations.
How does Entropic work?
Content is authored as .phile files under src/content/philes/volume-/**/.phile, each with YAML frontmatter followed by plain text. The build processes these files into static pages, rendering the body through the textmode layout engine. Development commands include pnpm dev for local preview, pnpm check for diagnostics and Biome checks, and pnpm build for the static site.
Repository workflow
The repository separates stable and integration branches: master is stable, dev is integration, and feature/fix work should branch from dev. Pull requests are squash-merged, commits must be signed, and commit messages should follow Conventional Commits. Hooks are enabled by running git config core.hooksPath scripts/hooks.








