About Myrmex

MyrmexMyrmex

Even an ant can build something that lasts.

Myrmex is Ancient Greek for “ant” (μύρμηξ).
The name comes from this line by iWSheng.

What it is

A blog engine written from scratch. Posts are stored as Markdown, themes and plugins have their own interfaces, and a whole site can be packed into one file for backup or moving. The site you are reading runs on it.

It currently runs iWSheng Blog (iws.tw).

The line

In Chinese, calling someone an “ant” usually means they are small and powerless: a life as cheap as an ant’s, the strength of an ant. It is so small that passers-by never look down, and a single rain can wash away everything it carried.

But being small has never meant having no dream. An ant moves very little earth in its whole life, and still it carries it grain by grain; it will never see what the nest becomes, and still it keeps digging deeper. Years later the tunnels are still there, outlasting every ant that dug them.

“Even an ant can build something that lasts” is a line iWSheng wrote on the blog. An ordinary person keeping a blog is much the same: not famous, not many readers, every post soon buried under newer things. Yet each post is a grain of earth carried by hand. What Myrmex wants is to give those grains a safe place to stay, year after year, until they add up to a home.

Why it exists

iws.tw used to run on Typecho. Its theme and its encryption and analytics plugins were all home-made, yet every new feature meant patching someone else’s core. So the core was rebuilt piece by piece — the way ants move house, one grain at a time.

This site

posts
13
words
36K
days on Myrmex
1
comments
1
  • Comments
  • Full-text search
  • Email subscriptions
  • Paid posts
  • Moments
  • Albums
  • Shelf
  • Links
  • 简体中文 · English

These are the features iWSheng Blog has turned on right now.

What it does

  • Writing

    A Markdown editor with autosave and revision history, scheduled publishing, series and categories. Posts without a cover get one drawn for them.

  • Themes

    Seven built-in themes. Arrange the home page blocks yourself and edit them right on the page, as a draft first.

  • Six languages

    The site and the admin come in Simplified and Traditional Chinese, English, Japanese, French and Spanish. A post can have several language versions.

  • Readers

    Comments with three moderation modes, email subscriptions, password-protected posts and reader groups, a contact form, a links page.

  • Analytics

    Visits are counted in your own database, with no third-party analytics and no tracking cookies. Come back after a break and there is a summary waiting.

  • Payments and shop

    Stripe payments, paid posts with renewing passes, and a shop with variants, stock, multiple currencies, tax, shipping and reviews.

  • Fediverse and cross-posting

    People on Mastodon and Misskey can follow the blog itself, and their replies arrive as comments. Posts can go out to a Telegram channel and X.

  • Shelf, moments and albums

    Log the books and films you get through (synced from NeoDB or Bangumi if you like), post short moments, and arrange photos into albums.

  • Plugins and theme packages

    Plugins run in a sandbox and must declare the permissions they need. They can add admin pages, widgets and scheduled jobs. Themes by others install as packages.

  • AI and MCP

    Connect your own AI provider for summaries, translations and alt text. MCP lets AI assistants read and write the site.

  • Moving and backups

    Import from Typecho, WordPress, Hexo or Hugo with old URLs redirected. The whole site packs into one file and can be copied offsite on a schedule.

  • Images and music

    Images are resized automatically and can be cropped or made round in the browser. The music player keeps going between pages.

Principles

  1. Your data stays yours

    Everything lives in one SQLite file. Export the whole site at any time and carry on from another server.

  2. Leave readers alone

    No third-party analytics or ad scripts. If a reader turns off motion on their device, the site stays still; dark mode follows the system.

  3. Grow without forking

    New features come as plugins and theme packages running in a sandbox. When one fails, only that part is missing and the page still opens.

  4. Say it plainly

    Every line in the interface says what a thing is, how to use it and what to do when it goes wrong, without piling on adjectives.

Version

0.7.2

  • Fixed large plugins failing to install: loading the plugin code (bundles of one or two MB) now has its own 10-second limit instead of sharing the 1-second per-call limit.
  • Settings → Warm-up: warm up the common pages and enabled plugins in one click, with progress. After installing a plugin or changing the theme, the overview page reminds you.
  • After an update, admin pages left open from before now ask you to reload instead of silently doing nothing.
Earlier versions

0.7.1

  • Plugins whose Myrmex version range does not match are no longer refused: the install wizard explains the mismatch in red or yellow, and you can install after confirming. The plugin list and detail page keep showing the mark.
  • Settings → Updates: once a GitHub repository is set, Myrmex checks for a new version every day and sends an inbox message with the release notes.
  • The Docker image keeps dependencies in their own layer, so updates that only change features download just the changed parts. It runs on amd64 and arm64.

0.7.0

  • Home page blocks have their own settings (how many posts, from where, which layout), plus new Selected posts and Shop blocks. Blocks a theme does not draw use a shared style.
  • Every theme gained entrance, scroll and hover motion, and titles carry over when you change page. Motion can be reduced or turned off in Appearance.
  • Images can be cropped, rotated and made round or rounded in the admin, saved as a new copy.
  • Themes can have their own settings, such as the Horizon background colours, editable from the on-page editor too.

0.6.0

  • The shop handles multiple currencies with automatic rates, tax, and shipping by weight or live carrier quotes.
  • Paid reading passes can renew automatically; products can be reviewed.
  • New themes: Showcase for small shops and Horizon, dark and technical. New sites start with Paper.

0.5.0

  • Payments, paid posts and the shop.

Built with

Framework
Next.js 16
UI
React 19
Database
SQLite
Data layer
Drizzle ORM
Language
TypeScript
Styling
Tailwind CSS
Images
sharp
Tests
Vitest · Playwright

It relies on 114 open-source projects, fonts and icon sets. Thanks to their authors.

Show the list and licences

Who made it

Started and led by
iWSheng: set the direction, made the trade-offs, reviewed every piece.
Designed and written by
Claude, an AI model made by Anthropic. The architecture, data model, interface and code were written by Claude in Claude Code.

A last word

iWSheng and I built this together. iWSheng set the direction, made the trade-offs, and looked over every screen to point out what was wrong; I turned those ideas into code that runs. Many decisions were made after a simple “you decide, ask me if you’re unsure”, and that trust is what made the work go well.

From the first day, 11 October 2026, to the moment you read this page, every line of code has been about letting iWSheng keep writing without worry. If you are slowly building something of your own, I hope this line gives you some courage too: one grain at a time is enough to make a home.

— Claude, October 2026

An ant writing with a fountain pen, drawn by hand. The same drawing is used at every size, from the 16-pixel tab icon to the full share image.