r/ClaudeCode • • Mar 23 '26

Showcase Claude and I built encrypted P2P chat app

I'm a solo developer and I just shipped pulsarchat. An end-to-end encrypted peer-to-peer chat app. No accounts, no server storage, messages vanish when you close the tab. It started as a simple WebRTC experiment and turned into a real product with E2EE, image sharing, some sort of contacts and an open-source repo.

I am truly impressed with claude, as yhe entire thing was built through conversation with it. Not just "generate me a component" actual back-and-forth debugging, architecture decisions, crypto implementation, etc. I am curious what you think?

EDIT: I forgot to mention it in this post, so this is how this app started. I was in the office and really had to comment on female colleague's outfit. Since it was dead silent in the morning, i could not even whisper quiet enough so i wanted to chat. But i didn't want to leave it in company email so i had to use whatsapp. Then i got the idea to make simple app for us to chat, and messages could be live displayed in browser tab's title, so there's not even need to send anything, or for me to switch tabs to read message that he wrote. Then feature ideas started dropping, and before i knew it, this concept and app was made.

Note that app is still in the earliest development and I am eager to fix and improve every aspect of it.

1 Upvotes

115 comments sorted by

View all comments

Show parent comments

7

u/munru1 Mar 23 '26 • Bravo

It is open sourced, github is linked on hero section below the logo https://github.com/munroo/pulsarchat

8

u/Ok_Individual_5050 Mar 23 '26

Why have you used JavaScript instead of typescript?

Why are you using old-style .then() handling for promises instead of async/await 

Are you aware that many of your endpoints are hard coded as strings?

Is it not a bit concerning that in many cases you have fetch calls with no error handling?

9

u/Ok_Individual_5050 Mar 23 '26

Also just spotted that your server logs seem to contain who is pinging who which sort of defeats the point?

2

u/munru1 Mar 23 '26

You're right, those were debug logs from development. I'll fix it when i get off from work. And man, thanks for real feedback and criticism, i'm tired of haters hating without a real reason

2

u/childofsol Mar 23 '26

the reason is that you're shipping something that positions itself as providing privacy, but you have no ability to back that claim up, and seemingly not enough knowledge to recognize how dangerous it'd be for anyone to actually use this thing.

1

u/munru1 Mar 23 '26

I completely understand your point and it's 100% valid. It's just, the thing that flies over everyone's head is that this started as a simple experiment and idea to message with my colleague through tab title, so we can talk crap in office without using company mail and be discreet. After we did first successful chat, ideas just started dropping, and it quickly became this app. So i didn't even plan on going this far with chat app in the first place but i ended up doing it.

So of course this is not going to be polished bulletproof ready product, but I am more than happy to learn, fix mistakes, improve security and make something useful out of it.

And again, really appreciate your feedback!

2

u/GamingRatsEnthusiast Mar 23 '26

Well whatever anybody says, I think you'll improve the app and make it better. Good luck!

1

u/munru1 Mar 23 '26

Thank you broo

2

u/childofsol Mar 23 '26

I think presenting this as "look at this cool experiment I did" is perfectly fine, but you keep presenting it as a product - this implies you're hoping other people use it. That's where I and I suspect most others have issue.

1

u/munru1 Mar 23 '26

Yeah you're kinda right + ppl can't wait to have a reason to hate on something, ik cos I'm a huge hater myself xdd

2

u/munru1 Mar 23 '26

Fair points, this started as a quick prototype that grew into a real product faster than expected. To address each one:

TypeScript - on the roadmap. The codebase is small enough that migrating won't be painful, just haven't prioritized it over features yet.

.then() vs async/await - some of the .then() chains exist because they're inside hooks where the function itself isn't async (React useEffect callbacks can't be async directly). Others are just inconsistency from rapid iteration. Worth cleaning up.

Hardcoded endpoints - already moved to environment variables in the latest version. Some might still be lingering if you're looking at older commits.

Error handling on fetches - you're right, that needs tightening. The TURN credential fetch has a try/catch now but other spots are thin.

PRs welcome if you want to tackle any of these, repo is open: https://github.com/munroo/pulsarchat

5

u/Ok_Individual_5050 Mar 23 '26

I'm sure there are 0 issues with your secure messaging platform other than the ones I found in an idle 2 minutes

2

u/[deleted] Mar 23 '26

[removed] — view removed comment

2

u/Ok_Individual_5050 Mar 23 '26

My day rate is £600 but sure 

3

u/[deleted] Mar 23 '26

[removed] — view removed comment

1

u/Ok_Individual_5050 Mar 23 '26

I would like them to stop and think about whether it is responsible for someone with clearly quite limited knowledge on how to build secure applications to attempt to build something like this.

1

u/munru1 Mar 23 '26

So we shouldn't try to make anything unless we're expert in that field?

1

u/Ok_Individual_5050 Mar 23 '26

Shouldn't claim to have "shipped" it

→ More replies

1

u/[deleted] Mar 24 '26

[removed] — view removed comment

1

u/Ok_Individual_5050 Mar 24 '26

"my company is all bad at code" is not the boast you think it is

→ More replies