[HN Gopher] Show HN: CodeCafe - A real-time collaborative code e...
       ___________________________________________________________________
        
       Show HN: CodeCafe - A real-time collaborative code editor in the
       browser
        
       Hey guys!  I've been working on a web app called CodeCafe--a
       collaborative, browser-based code editor inspired by VS Code and
       Replit, but with no downloads, no sign-up, and zero setup. You just
       open the link and start coding--together.  The frontend is built
       with React and TypeScript, and the backend runs on Java with Spring
       Boot, which handles real-time editing via WebSockets. For syncing
       changes, I'm using Redis along with a custom Operational
       Transformation system (no third-party libraries!!!).  The idea came
       after I found out a local summer school was teaching coding using
       Google Docs (yes, really). Google Docs is simple and free, but I
       wanted something that could actually be used for writing and
       running real code--without the need for any sign-ups or complex
       setups. That's how CodeCafe came to life.  Right now, the app
       doesn't store files anywhere, and you can't export your work.
       That's one of the key features I'm working on currently.  If you
       like what you see, feel free to star the repo to support the
       project!!  Check it out and let me know what you think!  GitHub:
       github.com/mrktsm/codecafe  Web App: codecafe.app
        
       Author : mrktsm__
       Score  : 69 points
       Date   : 2025-05-05 08:08 UTC (14 hours ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | omneity wrote:
       | Great job, congrats for the release! A little feedback, it could
       | be nice to auto-generate a unique url on page load (the one you
       | generate after clicking on "share"). Bonus is that it gives the
       | user a certain confidence to reload the page for example.
       | 
       | Side note, I am wondering if this could be used as a better way
       | to collaborate with coding agents. "Pair with me" instead of the
       | typical "Code for me".
        
         | mrktsm__ wrote:
         | Thanks for the feedback! I clear the session URL after joining
         | because I thought it looked cleaner, but I might start leaving
         | it in if it helps with reload confidence.
        
       | tpae wrote:
       | Question for you, how come you didn't use CDRT like yjs? It could
       | simplify the codebase
        
         | mrktsm__ wrote:
         | Good question -- before diving into the project, I did have the
         | chance to choose. I looked into both OT and CRDTs and found
         | that OT is widely used in collaborative editors like Google
         | Docs, so I leaned that way. I wouldn't say it was a deeply
         | informed decision -- I just had more reference points for OT at
         | the time. I think with more hands-on experience with CRDTs, I'd
         | be better equipped to weigh the trade-offs more clearly
        
           | ggap wrote:
           | Well done on this! I will keep an eye on the project
        
       | nanna wrote:
       | I would love this for Emacs!
        
       | jasonjmcghee wrote:
       | Great project!
       | 
       | As you mentioned vscode- I don't believe the sharee needs an
       | account unless that's changed. (And you can do it all in
       | browser).
       | 
       | https://learn.microsoft.com/en-us/visualstudio/liveshare/qui...
       | 
       | But executing code is a different story. Replit works better
       | there but it's heavily resource constrained in free tier.
        
       ___________________________________________________________________
       (page generated 2025-05-05 23:01 UTC)