Writing in the journal
08 September 2026 · A style guide for journal posts, showing every Markdown feature the Soonex pipeline renders.
- Journal
- Guides
Journal posts are Markdown files in _posts/ with layout: Soonex.PostLayout in the front matter. Generate a new one with:
mix soonex.gen.post My first update This post doubles as a reference for everything the Markdown pipeline supports.
Front matter
--- layout: Soonex.PostLayout title: My first update date: 2026-09-08 09:00:00 +0000 permalink: /blog/my-first-update/ description: One sentence for cards and search results. image: /images/covers/dusk.jpg image_alt: Describe the image for screen readers tags: - Launch --- Text
Use bold, italic, both, inline code, and strikethrough. Links work as Markdown links and bare URLs autolink: https://hexdocs.pm/mdex.
Lists
- Write the post
- Preview it with
mix server - Commit and push
- Cover image chosen
- Description under 160 characters
- Shared with the waitlist
Quotes and alerts
Ship the page you would want to land on.
Note
Notes call out useful context.
Tip
Tips suggest a better way to do something.
Warning
Warnings flag something that could go wrong.
Tables
| Command | Purpose |
|---|---|
mix server | Dev server with live reload |
mix assets.build | Rebuild CSS and JavaScript |
MIX_ENV=prod mix build | Production build into _site/ |
Code
defmodule Soonex.Launch do @target ~U[2026-12-01 00:00:00Z] def countdown_ms do max(DateTime.diff(@target, DateTime.utc_now(), :millisecond), 0) end end Images
Footnotes
The launch date lives in one module1.
Raw HTML
Keyboard shortcuts
Use Tab to move between controls and Enter to activate them.
Soonex.Launchfeeds both the hero badge and the countdown timer. ↩