Sidecar πΈ A Classy, Multi-Identity NIP-07 Signer
I got my first browser extension accepted by the Chrome Web Store this week! π
What started as a personal challenge to rethink the onboarding, login, and remote-signing user experience turned into a fully functional, open-source NIP-07 extension designed for Nostr novices and power users alike, who need a signing tool that lets them use the web client of their choice without interruptions, and feels like a native part of the experience rather than something grafted onto it.
The goal wasn't to build a massive, multi-feature platform, but rather a stable utility that focuses strictly on identity and signature handling. When a signer acts up, it breaks your experience across every client you use. Sidecar keeps things simple to minimize those points of failure.
Instead of an overwhelming interface, it provides a straightforward layout that handles key generation and extension pinning with zero friction. It makes multi-key management easy, allowing you to quickly switch between personal accounts or brand profiles and adjust client permissions on the fly. It's just a clean, reliable tool built for daily use.
Why We Build on Open Protocols#
For the past three years, I relied almost exclusively on Alby to handle my client authentications and wallet permissions. Itβs a crucial piece of infrastructure for our ecosystem, but a recent deployment hiccup one morning briefly left me staring at a blank window instead of the familiar account panel. It was a short-lived bug that they quickly fixed, but hitting that roadblock directly in my daily workflow was the push I needed.
In the interim, I switched back to nos2x, Fiatjafβs barebones signer (I call it the "Craigslist of Nostr" because it has never been updated from the original unstyled interface), and I used it to post a note asking if anyone else was facing extension issues. The answers were mixed.
This experience was a solid reminder of why we build on open protocols: no single app should be a permanent bottleneck. As someone who uses Nostr daily and has spent the last 18 months actively designing and developing for the network, I realized there was room for another signer built from the perspective of an active user's specific workflow. One that leans on better local reliability and a simple, intuitive design.
The Evolution of the "Sidecar" Brand#
The name and visual design were actually staring me right in the face. Last summer, I designed the branding for an entirely different app concept called Sidecar.
The original idea was a light, endlessly scrolling sidebar client that overlayed normal websites, allowing users to comment on news articles, blogs, and product pages in a shadow layer invisible to the legacy web. It felt like an exclusive, classy speakeasy lounge, which naturally led to the name, inspired by one of my favorite mixed drinks (usually made with cognac, orange liqueur, and lemon juice, and garnished with an orange slice).
That early iteration ran into major technical friction, including unreliable feed sourcing, encrypted payload size limits, and the inability of browser extensions to talk to each other, causing me to put the initial client on the rocks. However, tackling those early hurdles directly inspired other standalone tools I still use today, like Plebs vs. Zombies and Mutable (built to handle follow/mute-list pruning and cleaning inactive keys from the social graph).
A year later, with a fresh perspective and a week of vibing with Claude, I repurposed the Sidecar identity into a modern extension. I paid $5 for the privilege of becoming a Chrome developer, and braced myself for what I was told would be a two-week review process, and was surprised to see it approved and live in under 48 hours.
Built for Reliability and My Daily Workflow#
I built Sidecar to be functionally exactly what I wanted out of my signing extension. And, of course, it had to be classy.
1. Persistent Panel over Clunky Popups#
By designing around a persistent sidebar panel that you can keep open while you browse, Sidecar completely changes how you interact with NIP-07 requests. Traditional extension signers love to throw separate popup windows at you for every single signature. These popups easily get lost behind your main browser window, or worse, stack multiple windows directly on top of each other until it's completely impossible to track what you're approving, and causing your signing requests to go missing. Keeping Sidecar anchored in your view pane eliminates the window hunt entirely.
2. Intuitive Architecture & Onboarding#
No backends or data collection. Your keys are encrypted with a master password and stored encrypted in your local browser storage. If you're onboarding someone new or spinning up a clean alt, you can generate a new keypair directly inside the view panel with zero friction.
3. Seamless Multi-Identity Support#
This is the core feature I needed for my daily workflows. Sidecar lets you hot-swap between multiple identities seamlessly. If you balance a personal identity and a brand profile, you can manage specific client permissions for each key independent of one another.
4. Integrated Nostr Wallet Connect (NWC)#
The extension includes a NWC Lightning integration to zap directly through the signer, without needing to connect your wallet to each client. You can even back up your encrypted NWC string to your own relays, so you can restore it if you sign into Sidecar on another browser.
Try it, Break it#
Because this handles keys, you shouldn't have to trust me, just the code. The repo is completely open-source. Clone it, audit the storage calls, or ask your favorite LLM to verify exactly how key isolation is managed.
π Sidecar πΈ on Chrome Web Store
If you're looking for a clean upgrade to your desktop signing workflow, give it a spin. I'd love to hear your feedback, feature requests, or bug reports. And if you love it, maybe I can even convince you to write a Google review, so people just learning about Nostr can find their way to it.
Thanks for reading!
Dr. The Daniel π
I make stuff for Nostr and Lightning. πβ‘οΈπ Powered by Spite-as-a-Service. #NostrForever Sidecar mixologist. πΈπ https://sidecar.top Ghost in the machine π»βοΈ https://ghostr.org Spacewalker at nostr:npub1fmunwy3lljfyzlgyuyman79lxwm4efz6pzlgqjwc400pr9l708qquvje8w β¨π©βπ https://resolvr.io Short order vibecook π¨π»βπ³π³ https://zap.cooking 2025 nostr:npub1jugar2agq6369p0l86razavs9shj2p6pscxecevs8j94ap37hkqsjlfc28 </time2build> winner π Sats Factory worker β‘οΈπ https://satsfactory.com Nodestrich runner πββοΈβ‘οΈπβΎοΈ https://nodestrich.com Zombie hunter πΉπ§ββοΈ https://plebsvszombies.cc Mute list maximalist π€«π https://mutable.top Meetup disorganizer π½π§‘ https://harlembitcoin.com Chief band namer π€πΈ nostr:npub12cqtmej8mutnwu0yzfmshznaxltetmn7nkzranps7v4dsxuc6mnqdf5pmv Crash test dummy wallet tester in residence π₯β οΈ Created 2008.jpeg, the first NFT on Nostr (sort of) Are you a Dan? Ask about membership in #OnlyDans π« Follow the best dog ever πΆπ nostr:npub1cudap5kkjdvnv78v08m3748afshj0u3zh9h34svrf4nhn07gn4lscflujc I helped invent the Blocktron π§ π‘ https://blocktron.io Someone once called me a Nostr βfake-fluencerβ because I said their app didnβt work (it didnβt) Muted by the guy who thinks sats arenβt the standard #SatsAreTheStandard β¨ Reported for βspamβ by nostr:npub1lh273a4wpkup00stw8dzqjvvrqrfdrv2v3v4t8pynuezlfe5vjnsnaa9nk for saying βBLV is DOAβ π€‘ The ex-head engineer at Truth Social called me a slop coder but nostr:npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6 said I saved Nostr forever π«Ά Unapologetic globetard πππ I was #1 on the #NostrRichList for 4 hours π° Iβm not a real doctor, but I play one on Nostr. π Used to work at a bar, but then I grew up π» GM βοΈ PV π since: 767700 No DMs, please. βοΈ
daniel@sidecar.top
I make stuff for Nostr and Lightning. πβ‘οΈπ Powered by Spite-as-a-Service. #NostrForever Sidecar mixologist. πΈπ https://sidecar.top Ghost in the machine π»βοΈ https://ghostr.org Spacewalker at nostr:npub1fmunwy3lljfyzlgyuyman79lxwm4efz6pzlgqjwc400pr9l708qquvje8w β¨π©βπ https://resolvr.io Short order vibecook π¨π»βπ³π³ https://zap.cooking 2025 nostr:npub1jugar2agq6369p0l86razavs9shj2p6pscxecevs8j94ap37hkqsjlfc28 </time2build> winner π Sats Factory worker β‘οΈπ https://satsfactory.com Nodestrich runner πββοΈβ‘οΈπβΎοΈ https://nodestrich.com Zombie hunter πΉπ§ββοΈ https://plebsvszombies.cc Mute list maximalist π€«π https://mutable.top Meetup disorganizer π½π§‘ https://harlembitcoin.com Chief band namer π€πΈ nostr:npub12cqtmej8mutnwu0yzfmshznaxltetmn7nkzranps7v4dsxuc6mnqdf5pmv Crash test dummy wallet tester in residence π₯β οΈ Created 2008.jpeg, the first NFT on Nostr (sort of) Are you a Dan? Ask about membership in #OnlyDans π« Follow the best dog ever πΆπ nostr:npub1cudap5kkjdvnv78v08m3748afshj0u3zh9h34svrf4nhn07gn4lscflujc I helped invent the Blocktron π§ π‘ https://blocktron.io Someone once called me a Nostr βfake-fluencerβ because I said their app didnβt work (it didnβt) Muted by the guy who thinks sats arenβt the standard #SatsAreTheStandard β¨ Reported for βspamβ by nostr:npub1lh273a4wpkup00stw8dzqjvvrqrfdrv2v3v4t8pynuezlfe5vjnsnaa9nk for saying βBLV is DOAβ π€‘ The ex-head engineer at Truth Social called me a slop coder but nostr:npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6 said I saved Nostr forever π«Ά Unapologetic globetard πππ I was #1 on the #NostrRichList for 4 hours π° Iβm not a real doctor, but I play one on Nostr. π Used to work at a bar, but then I grew up π» GM βοΈ PV π since: 767700 No DMs, please. βοΈ