Back to templates

Template details

Print

A minimal, TUI-inspired Astro blog theme with Mermaid diagrams, Expressive Code, and built-in English/Chinese i18n.

About this template

Print is a minimal, terminal-UI-inspired blog theme built on Astro v7, distributed under the MIT license and available as an open-source repository that users clone directly into their own project directory.

What is Print?

Print is an Astro v7 blog theme styled after a text user interface: blinking cursors, bracketed navigation items, monospace metadata, hairline rules, and matching light and dark themes. It takes MDX content files as input and produces a static site with post and note indexes, detail pages, and category pages. The theme is maintained by riceball-tw and ships with a demo site hosted on GitHub Pages.

Key features

  • TUI aesthetic — blinking cursor, [bracketed] nav items, monospace metadata, hairline rules, and light and dark theme variants.
  • Mermaid diagrams — over 30 diagram types (flowchart, sequence, C4, Wardley map, Gantt, git graph and more) rendered to static SVG at build time via Pele, themed with the site's CSS variables and requiring zero client-side JavaScript.
  • Expressive Code — syntax highlighting with editor and terminal frames, line markers, word highlighting, and a copy button on every code block, following the site's light/dark toggle.
  • Built-in i18n — English, Simplified Chinese, and Traditional Chinese out of the box, with translations editable in a single file.
  • Two content types — long-form posts and feed-style notes, each with its own index, detail page, and category pages.
  • Deploy anywhere — a single GitHub Actions workflow with parallel jobs for GitHub Pages and Cloudflare Pages.
  • Astro-based stack — content authored as MDX under src/content/, site config in JSON, styles in a global CSS file, and test tooling via Vitest and Playwright.

Who should use Print?

  • Developer bloggers who want a terminal look: publish long-form posts and short notes while keeping a monospace, bracketed aesthetic without building the layout from scratch.
  • Technical writers documenting diagrams: embed Mermaid flowcharts, sequence diagrams, or C4 models that compile to static SVG with no client-side JavaScript.
  • Multilingual authors: serve English, Simplified Chinese, and Traditional Chinese readers from one repository with the bundled i18n setup.
  • Static-site deployers: push a prebuilt site to GitHub Pages or Cloudflare Pages through the included workflow.

What can you do with Print?

  • Write dual-format content: authors create posts and notes by adding an index.mdx file under src/content/post or src/content/note with frontmatter for headline, excerpt, category, and publish date.
  • Stage drafts safely: setting isDraft: true (the default) keeps a post visible in development but excludes it from production builds.
  • Customize branding and navigation: site config, navigation links, and social links are edited in src/data/config.json, while color tokens live in src/styles/global.css.

How does Print work?

The theme is cloned into a project directory, dependencies are installed with pnpm, and pnpm run dev starts a local dev server on port 4321. pnpm build outputs the production site to ./dist/; a GitHub Actions workflow then deploys that build to GitHub Pages and/or Cloudflare Pages in parallel jobs after the build step.

Pricing

Print is free and open source under the MIT license.

Screenshot of Print