panphora
banner
panphora.bsky.social
panphora
@panphora.bsky.social
Web app in a single, portable, self-updating, vanilla HTML file: https://hyperclay.com

Work log: https://panphora.com/
I feel so lucky to be living in the age of AI.

I just produced a script in 10 min that helps me automatically release NPM packages, using a local Claude Code to write the changelog entries.

Mind blown 🤯
November 22, 2025 at 7:04 AM
Want a fully custom date picker and the native calendar popup?

Build your own UI, then call input.showPicker() to summon the browser’s date picker on demand.
November 15, 2025 at 6:58 AM
Letting AI work while I go to sleep
November 12, 2025 at 4:44 AM
I love my app's 471-bite blog template
November 8, 2025 at 7:57 PM
I love my app's personal admin dashboard <3
November 8, 2025 at 7:04 AM
Hate when Claude adds itself as co-author to your Git commits?

source: vikrampawar.github.io/2025/06/21/...
November 3, 2025 at 8:02 PM
Long time dream achieved:

✅ Become an Apple/MacOS Developer
November 1, 2025 at 5:57 AM
4 customers in and already crushing the fastest growing internet startup in early user retention 😂
October 23, 2025 at 1:50 PM
🔥 Build a lightweight, elegant Kanban board in pure HTML. Sortable columns, draggable cards, zero React — just a single HTML file, and ~20 lines of jQuery. #hyperclay
October 21, 2025 at 2:52 PM
You can import shadcn or spend 56 hours designing the perfect tab component, or you can simply accept that this minimal tab layout is superior and ship it in 6 min.
October 20, 2025 at 4:01 PM
Your move Mickey Mouse
September 18, 2025 at 8:17 PM
Email is universal.

Of course I want to email people who don't have the same domain name as me!

This is the stupidest warning in Google Workspace — it should be OFF by default (if you want to turn it off: Admin console > Apps > Google Workspace > Gmail > End User Access)
September 16, 2025 at 3:56 PM
Turns out when you decide to personally respond to all 105 people who responded to your welcome email with a custom-build HTML email (that includes an ASCII maze), you run into limits you've never run into before.
September 15, 2025 at 4:01 PM
After years fighting ContentEditable, I had a dumb idea:

What if we just... put a transparent textarea on top of a rendered preview?

If they're perfectly aligned, you'd be typing plain text but *seeing* formatted text.

🧵 3/9
August 17, 2025 at 5:52 PM
feel great being at the top of a session with Claude Code and about to get fresh tokens
August 15, 2025 at 3:58 PM
I made a monospace revenue dashboard for my product, hyperclay.

I will get out of the $0/mo club soon, mom!

#buildinpublic
August 14, 2025 at 3:58 PM
Took me 2 weeks to plan out a major refactor. I organized the plans into sub-plans, until I had a 3-part refactor.

Then, one night two weeks ago, I handed it all over to Claude Code at 4am.

The result was truly beautiful 🤩

But... I've spent the last two weeks fixing bugs 😂
August 11, 2025 at 3:57 PM
Why do we have economic cycles?

Because during ZIRP, founders have little to 0 incentive to actually talk to users...

Which means you get a lot of visionary ideas and a lot of hype, but also a lot of vaporware.

Recessions are the culling: founders must provide ROI or die.
August 6, 2025 at 3:56 PM
Sometimes you ditch Express middleware for a declarative routing table to improve DX (putting off UX).

Takes 2+ weeks, you doubt its ROI, but power through.

And somehow... it ends up BEING WORTH IT!!! 🙌

What a feeling 😊 #buildinpublic
August 5, 2025 at 4:04 PM
I solemnly swear to never be embarrassed to ship a product fast.

Dracula Pro 🧛‍♂️, a super successful/professional product marketed at devs, ships a zip that's half filled with a useless .git folder weighing in at...

❗️ 792.9 MiB 😳 @zenorocha
August 4, 2025 at 4:03 PM
August 3, 2025 at 1:50 AM
Without a doubt, the single best change I've made to my app's architecture.

OLD:
Middleware chains everywhere. Easy to forget one. Security holes waiting to happen.

NEW:
User permissions ARE the route:
'dev:site:edit' ✅
'no_auth:site:edit' ❌
July 30, 2025 at 4:03 PM
So, I've got something big coming soon...
July 28, 2025 at 4:00 PM
This is evil.

Never put this character in your HTML.
July 25, 2025 at 3:59 PM
A really beautiful Express.js middleware that automatically detects and converts IDs (personId, nodeId, noteId, etc.) into numbers for the backend #buildinpublic
July 23, 2025 at 4:00 PM