8
// ;note for myself and AIRI to later remove this article before publishing
9
blog on production. No one need to know how do we format our articles :D
10
11
This article is a live reference for writing PROJECT Þ ERXWOLD blog posts.
12
It shows headings, links, images, code blocks, quotes, comments, lists,
13
empty lines, and custom root-page color tokens.
14
## Basic inline Markdown
15
Use bold orange for important emphasis, italic grey for softer words, and
16
bold pink italic for dramatic emphasis.
17
Use inline code for commands, filenames, package names, and small technical
18
fragments.
19
Use strikethrough for deprecated ideas or dead branches.
20
Use #airi , #vocaloid , and #therxwold as inline tags.
21
## Root-page color tokens
22
Use custom tokens when normal Markdown is not specific enough.
23
- AIRI uses root-page blue emphasis
24
- online uses root-page green status text
25
- #vocaloid uses pink hashtag / special emphasis
26
- threshold uses orange bold emphasis
27
- þerxwold uses grey italic text
28
- cat uses command keyword red
29
- getting-started.md uses string blue
30
- // muted note uses comment grey
31
- archived uses muted grey
32
- — uses punctuation grey
33
- - uses dash grey
34
- deprecated uses strikethrough
35
- Þ uses thorn styling
36
## Links
37
Internal links work: back to the blog index .
38
External links work too: Naru K on GitHub .
39
Email links work: inquiries@narukoshin.me .
40
## Lists
41
Use bold text at the beginning of a list item when you want the same blue
42
label style as the root page.
43
- AIRI — architecture, memory, autonomy, conversation, presence
44
- Vocaloid production — techniques, experiments, workflow
45
- Security & AI — research notes from both sides of the lab
46
- Music — new ways to make sound with synthetic voices
47
Ordered lists work too.
48
1. Write the article in Markdown
49
2. Commit the change to Git
50
3. Push to GitHub
51
4. Cloudflare rebuilds the site automatically
52
## Quotes
53
A blog post should feel like a transmission from the lab, not a normal corporate announcement.
54
// comments also work as standalone terminal notes
55
~ signoff lines work for final messages
56
## Empty lines
57
Use this marker when you want a real numbered empty terminal row.
58
59
The empty row above is intentional.
60
## Horizontal rules
61
Use three dashes to create the responsive terminal divider.
62
63
The divider above is CSS-based, so it does not wrap on mobile.
64
## Images
65
Use normal Markdown image syntax. Local images should go inside
66
public/images/ .
67
68
You can add captions directly inside image syntax by adding quoted text
69
after the image path.
70
 71
You can also add a caption on the next line.
72
73
Caption text supports inline styling too.
74
75
## Code blocks
76
Use fenced code blocks with a language name. Shiki handles syntax
77
highlighting.
78
package mainimport "fmt"func main() { fmt.Println("hello world") return} 79
TypeScript works too.
80
type Transmission = { title: string status: "draft" | "published"}function publish(transmission: Transmission) { return `${transmission.title}: ${transmission.status}`} 81
Shell snippets work.
82
npm installnpm run devgit add . && git commit -m "Add blog article"git push 83
Plain text works for terminal output.
84
PROJECT ÞERXWOLDstatus: onlinearchive: /blog/ 85
## Showing raw Markdown syntax
86
Use a Markdown code block when you want to show the syntax instead of
87
rendering it.
88
This is **bold**.This is *italic*.This is `inline code`.This is [a link](/blog/).This is {{blue:custom blue text}}. 89
## Recommended article pattern
90
Start with a short transmission, add one image or code block if needed, then
91
finish with a comment or signoff.
92
cat new-transmission.md
93
We are not writing normal posts. We are documenting the threshold while
94
crossing it.
95
~ cross the threshold with us