<feed xmlns='http://www.w3.org/2005/Atom'>
<title>microblog/app/routes/api.posts.tsx, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.yyamashita.com/microblog/'/>
<entry>
<title>Separate API_TOKEN from REGISTER_TOKEN</title>
<updated>2026-06-19T14:31:30+00:00</updated>
<author>
<name>yyamashita</name>
<email>yyamashita@hetzner.yyamashita.com</email>
</author>
<published>2026-06-19T14:31:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.yyamashita.com/microblog/commit/?id=af1f23466c46bf4cebc42ab1687552b1a4baafd5'/>
<id>af1f23466c46bf4cebc42ab1687552b1a4baafd5</id>
<content type='text'>
REGISTER_TOKEN: passkey registration only
API_TOKEN: POST /api/posts authentication

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
REGISTER_TOKEN: passkey registration only
API_TOKEN: POST /api/posts authentication

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Require Bearer token auth on POST /api/posts</title>
<updated>2026-06-19T14:28:00+00:00</updated>
<author>
<name>yyamashita</name>
<email>yyamashita@hetzner.yyamashita.com</email>
</author>
<published>2026-06-19T14:28:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.yyamashita.com/microblog/commit/?id=b5a24a1dcf5cdce6da925bb30d57b9f2a124f1dd'/>
<id>b5a24a1dcf5cdce6da925bb30d57b9f2a124f1dd</id>
<content type='text'>
Reuses REGISTER_TOKEN so the same secret covers both
passkey registration and API posting.

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reuses REGISTER_TOKEN so the same secret covers both
passkey registration and API posting.

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Initial implementation of microblog</title>
<updated>2026-06-19T06:18:55+00:00</updated>
<author>
<name>yyamashita</name>
<email>yyamashita@hetzner.yyamashita.com</email>
</author>
<published>2026-06-19T06:18:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.yyamashita.com/microblog/commit/?id=30f24e137ee2d1acec11a0da61e134f512ee02dd'/>
<id>30f24e137ee2d1acec11a0da61e134f512ee02dd</id>
<content type='text'>
Markdown-based personal microblog with REST API.
XSS protection via sanitize-html on server-side markdown rendering.

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Markdown-based personal microblog with REST API.
XSS protection via sanitize-html on server-side markdown rendering.

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
