Writing Posts
Baan gives you two workflows for writing — a browser-based editor built into the admin panel, and full support for writing in any external Markdown editor (Obsidian, VSCode, Typora) with sync via the CLI. Both workflows result in the same Markdown files stored in your chosen storage backend.
Workflow 1: Built-in Editor
Section titled “Workflow 1: Built-in Editor”The built-in editor is a Markdown editor that lives entirely in your browser. No external tools or setup required.
Creating a Post
Section titled “Creating a Post”- Go to Admin → Posts
- Click New Post
- Enter a title — Baan auto-generates a URL slug from it (you can customize it)
- Write your content in Markdown
Editor Modes
Section titled “Editor Modes”Drawer mode — the editor opens as a side panel over the post list. Good for quick edits, checking frontmatter, and toggling publish status without leaving the list view.
Full-screen mode — the editor expands to fill the whole screen. Distraction-free writing with:
- Live Markdown preview
- AI assistant sidebar (if an AI provider is configured)
- Media library access for inserting images
AI Writing Assistant
Section titled “AI Writing Assistant”In full-screen mode, the AI sidebar lets you:
- Generate a draft — describe what you want to write and get a starting point
- Improve selected text — rewrite a paragraph for clarity, conciseness, or tone
- Translate the article — draft a version in another locale with one click
- Generate a description — create a
descriptionfield for SEO from the article body
The assistant uses whichever AI provider you’ve configured in Admin → Settings → AI.
Publishing
Section titled “Publishing”Set the post status to Published to make it visible on the public site. Draft posts are saved but not publicly accessible. You can toggle status from the post list (drawer mode) or from within the editor.
Workflow 2: External Editor + CLI
Section titled “Workflow 2: External Editor + CLI”Write in any Markdown editor you prefer — Obsidian, VSCode, Typora, iA Writer — and sync to Baan using the Baan CLI.
This workflow is ideal if you:
- Already have a writing workflow in Obsidian or another tool
- Want to use Git to version-control your articles
- Prefer writing locally without a browser
See External Editors & Baan CLI for full setup instructions.
Post Structure
Section titled “Post Structure”Each post is a folder in storage. The folder name becomes the URL slug and the article ID.
Single-Language Mode
Section titled “Single-Language Mode”my-article/├── index.en.md # always index.{locale}.md — never index.md└── images/ └── hero.jpgURL: https://your-blog.com/posts/my-article
Multi-Language Mode
Section titled “Multi-Language Mode”my-article/├── index.ja.md├── index.en.md└── images/ └── hero.jpg ← shared across all localesURLs:
https://your-blog.com/ja/posts/my-articlehttps://your-blog.com/en/posts/my-article
Managing Posts
Section titled “Managing Posts”Post List
Section titled “Post List”Admin → Posts shows all posts with:
- Status (published / draft)
- Category and tags
- Last modified date
- Quick publish/unpublish toggle
Posts synced from an external editor via the Baan CLI appear in a separate Vault section. You can publish/unpublish them from the admin panel, but the canonical source of truth is the external editor.
Changing a Post’s ID/Slug
Section titled “Changing a Post’s ID/Slug”Go to the post settings and edit the ID field. This changes the URL — set up a redirect if the post is already published and indexed.
Deleting a Post
Section titled “Deleting a Post”Delete from the post list. This removes both the admin record and the Markdown files from storage. This action is irreversible.
Static Pages
Section titled “Static Pages”Static pages (About, Terms of Service, Contact, etc.) are separate from posts and managed at Admin → Pages. Pages support 4 templates:
| Template | Use Case |
|---|---|
| Default | Standard content page with sidebar |
| Full Width | Content spans full width, no sidebar |
| Blank | No layout wrapper — full control over HTML |
| Posts List | Shows a filtered list of posts |
Any page can be set as the site homepage.