Search articles

Esc to close
All articles

Building this site with Next.js and Gin

This site uses Next.js for its public pages and Go with Gin for content management.

One content library

Documents live in Markdown files. Each document has a stable ID, and its Simplified Chinese, Traditional Chinese, and English versions share that ID.

henryweb.site             → Public blog
api.henryweb.site         → Public read-only API
knowledge.henryweb.site   → Private workspace

Drafts and publishing

Blog visibility and graph visibility are independent. A document can appear in either place, both, or neither.

Saving changes updates the working draft. The public blog only changes after the current language version is previewed and published. Withdrawing an article removes its public version while keeping the private document.

Writing and translation

The workspace editor manages titles, summaries, slugs, languages, and visibility. Markdown is still the editable source, and the workspace can export it for backup.

Translations belong to the same document. When the source changes, the workspace marks linked translations as potentially outdated. It never silently replaces an author’s translation.

What comes next

Keep writing about real problems and the evidence that helped solve them. Add features when the need is clear.

More articles →