pilcrow
pilcrowonpaper.com
pilcrow
@pilcrowonpaper.com
I like building stuff

https://pilcrowonpaper.com
I made sunchoke soup and it was heavenly
November 30, 2025 at 11:47 AM
Reposted by pilcrow
I'm looking for my next opportunity in the front-end space 🌐

I've worked at some great companies: Hugging Face, V7, Appwrite, and Significa.

I've built NPM packages with 400k downloads/week, and am an avid open-source contributor.

Let me know if you want to work together!
November 24, 2025 at 10:36 PM
People who don’t know anything about auth but have general programming experience
November 10, 2025 at 2:43 PM
Gonna do an auth workshop based on the Lucia docs at my school

Any advice on hosting these events?
November 10, 2025 at 2:30 PM
Wait the latest is v7???
November 6, 2025 at 12:04 PM
(I also met @danabra.mov but we had like zero things in common so it was an awkward handshake lol)
October 25, 2025 at 4:28 PM
Had wonderful conversations with @dominikg.dev, @danielroe.dev, @antfu.me, @evanyou.me, and so many more people at @vuefes.bsky.social today!
October 25, 2025 at 4:28 PM
けどやっぱり

serve(handler)



serve(options, handler)

になるのは好きじゃない
October 19, 2025 at 9:34 AM
昨日終わった後気づいた

serve(options, () => {
// めっちゃでかい関数
})

vs

serve(() => {
// めっちゃでかい関数
}, options)

上の方が綺麗
October 19, 2025 at 9:33 AM
ん、フォーマッター???
October 14, 2025 at 3:44 PM
個人的にResponse以外使えるのはどうかなーって感じ

標準ライブラリはやりすぎない方がいい気がする
October 14, 2025 at 3:44 PM
my email inbox is super tidy but I've given up on my github inbox

soooo many read notifications that I probably won't revisit
October 9, 2025 at 5:30 PM
The storage layer is much more simple now! You just need to provide a single KV storage to get started

github.com/faroedev/far...
Release v0.5.0 · faroedev/faroe
Overview Simplified storage. New storage interface Main storage, rate limit storage, and cache has been unified into a single storage. The mainStorage, rateLimitStorage, and cache parameters of N...
github.com
September 10, 2025 at 12:17 PM
I also think it's a nice bonus that it's self contained. It's super clear where the line is between your code and the library/package code
September 6, 2025 at 1:26 AM
- vs SaaS: This is obvious but your users are stored in your db + no predefined schema to follow
- vs better-auth: You can fully customize how you create/delete/get users and even use db transactions. (Personal preference but) I don't like a library doing migrations + handling connections directly
September 6, 2025 at 1:21 AM
Link: faroe.dev
September 5, 2025 at 1:02 PM
Excited to announce Faroe - a modular auth server distributed as a Go package

- Handles all the hard parts of auth
- Works with your existing user table (no direct db connections)
- Just bring a KV store + email server
- Runs anywhere
September 5, 2025 at 1:02 PM
2 hours... stay tuned :D
September 5, 2025 at 11:01 AM
Right now, I have the backend portion mostly done as well as the API client. You still have to make the UI and deal with some client state so it'd be nice to have packages for js frameworks, but that's not something I want to deal with right now
August 21, 2025 at 2:10 PM
I was using SQLite here but it'll work with anything. You get full control of the user table and you add additional columns and create relationships with other tables
August 21, 2025 at 2:10 PM
But essentially for the client side you just have to call createSignup(), verifyEmailAddressVerificationCode(), etc

The more interesting part is the backend, which I'm not going to share just yet
August 21, 2025 at 2:10 PM
Here's a quick demo for the auth thing I've been working on

I also recorded myself showing a bit of the code but it was so bad I had to cut it
August 21, 2025 at 2:10 PM
Why is errors(.)Is the recommended way to compare errors in Go anyway? You can't tell which function returned the error. If errors are supposed to be independent of the source function, why do we have generic errors like io.EOF?
August 8, 2025 at 9:21 AM
The exact error conveyed by an error variable/type depends on which function threw/returned it so why do we define them globally and share them between functions? Why don't languages scope error definitions to functions and function types?
August 8, 2025 at 9:13 AM
I'll be at @vuefes.bsky.social this year!
August 5, 2025 at 7:14 AM