Show HN: Lightwave – Real-time notes app, 3.5 years of hand-rolled JavaScript

Hi HN!

I've been building this solo for about three and a half years. I kept trying every new project/notes tool (Notion, Asana, Trello, etc.) and always ended up back in a plain text file. I wanted something that felt like a text editor on first touch but could grow into real structure when you needed it.

https://lightwave.so (desktop only)

The tech stack is Laravel, MySQL, Redis, and hand-rolled JavaScript on the client. No frameworks like React/Vue/etc. ~270 lines of jQuery (out of 80k+ total LOC) for a few legacy DOM utilities, plus IndexedDB for local persistence. Real-time collaboration uses a hybrid approach: HTTP/2 POST for resilient ops + WebSockets via Laravel Reverb for live cursors, presence, and edits.

This is a pre-release stress test, not a launch. Lightwave will be a paid product. Right now I'm opening it up because no amount of solo testing replicates getting punched in the mouth by real traffic.

The link above has a button to create a test account in 1 click.

Known rough edges: the cursor and selection system are built from scratch (like VS Code, not a contenteditable wrapper), so there's a lot of surface area. Some keyboard shortcuts may be missing. Desktop only, accessibility not yet implemented. I'm shipping fixes in real time.

There's a "Submit Bug or Feedback" button inside the app if something breaks. Happy to answer any questions about the architecture, or anything else.

Some highlights:

- Paste markdown in, get native blocks. Copy blocks out, get markdown back.

- Hierarchical document, structure. Hierarchichal file manager.

- Live collab with shared cursors, selection, and presence.

- Code blocks with syntax highlighting. LaTeX math blocks.

- Full data export: markdown, JSON, and attachments. No lock-in.

- Full undo/redo with cursor restoration.

16 points | by jv22222 1 hour ago

11 comments

  • johnfn 1 hour ago
    This looks neat! I suppose I might ask the hard questions - how does this compare to Obsidian, which is my go-to "real time notes app that roughly feels like dealing with a plain text file but better"?

    I would also make a small suggestion, which is that there is really no need to emphasize the fact that it's hand-written or without React or etc. While I suppose a small segment of users do truly care that you didn't use React, I think the primary consideration for most users will be how the app works. I would suggest mentioning how your technical decisions affect the user experience: is the performance better - and if so, can you quantify that?

    • jv22222 1 hour ago
      Obsidian: We're mostly solving different problems. I wanted that text editor / IDE feel but with the ability to instantly share and collaborate. Bring in a full team, manage all your docs, give everyone different permissions etc.

      So the problems I was thinking about were collaboration and content management between teams. But I also wanted it to work really well as a private personal tool. So in a way it's two tools in one. You can enjoy it solo, and then the hope is you've found something you like and now you can bring a team into it

      Re the tech framing, I mostly mentioned it because I figured HN would find it interesting since it's the less taken path. Apologies if it came across as unrelated to the product.

      • johnfn 25 minutes ago
        Thanks for the response! My suggestion would be that if multiplayer aspects are really the key differentiator between Obsidian and your app, you should let the user see that straightaway. Maybe drop them into a shared workspace with other people or something? That could be cool.

        As for the tech framing - I imagine you'll get lots of responses on that, and I'm sure it works for some people. Speaking personally, I think it irks me in particular because I feel that "React is slow" isn't really true -- but hey, we can sidestep that whole argument if you just tell me that your app loads a 100GB text file in 0.1ms or whatever :)

        • jv22222 6 minutes ago
          Hmm. Yeah that shared workspace idea is good. Tbh I just wanted to force myself to put this out there and stop polishing the dang thing! So this was the fastest way out and now I can iterate on better journeys like the one you suggest.

          On the React thing, I never said React is slow! I think it's great for a lot of things. I just chose a different path because I wanted to understand every part of the main product stack. I didn't use OT or CDRT for the same reason... :|

  • binaryturtle 1 hour ago
    I'm so confused… when did NewTek switch Lightwave from a 3D renderer/ design application to a notes app? :-)

    (AKA: I'm not sure it's a good idea to use someone else's long-standing well-known brand in the digital space as name for your own digital space project)

    • jv22222 59 minutes ago
      Ha, fair point. Open to change. Will keep an eye on this.
      • gala8y 17 minutes ago
        Absolutely. This brings nostalgia and pushes for heads up at the same time.
  • treetalker 7 minutes ago
    Having trouble locating the button to produce TPS reports.

    ;-) love the Office Space references

  • sean_pedersen 16 minutes ago
    The test acc. UX flow is shit IMHO: I do not want to see the first user tips (just annoying flashes) and I can not directly edit the first doc I see.
    • jv22222 3 minutes ago
      Fair. The first doc you land on is in a read-only workspace (I used the app itself to write the onboarding docs, and display them in read only mode. dogfooding it). I can see how that's a bad first impression when you just want to start typing. I'll look at dropping new accounts into an editable doc instead. Thanks for checking it out.
  • artemavv 1 hour ago
    "Create Account" button leads to /undefined, both in Chrome and Firefox.
    • jv22222 1 hour ago
      Oops. I accidentally had a throttle on the signup request. That is removed now. Please try again. Sorry about that!
    • boyter 1 hour ago
      Seems to be a load issue, hopefully easily resolved

          Request URL https://lightwave.so/api/register/ephemeral
          Request Method POST 
          Status Code 429 Too Many Requests
  • purplecats 1 hour ago
    • jv22222 1 hour ago
      Fixed now! Apologies.
  • martini333 1 hour ago
    Can't triple click and drag to highlight words... I'm out.
    • jv22222 57 minutes ago
      Thanks for the feedback. Triple-click selects the full line atm. Triple-click-drag to select multiple lines isn't in yet. On the list!
  • Traubenfuchs 44 minutes ago
    https://imgur.com/a/g37lLv2

    - flickering

    - keyboard appears on readonly document

    - can select info text that should not be user selectable

    - menu items melt into each other

    - can‘t summon keyboard on editable content

    - grabbing elements in a document and pulling them up leads to page refresh

    - I saw a styling menu pop up once: No idea how I got that.

    I am sorry but this is unusable and an awful experience on my iPhone.

    https://imgur.com/a/GeErjTa

    - manage subscription page broken?

    Absolutely nothing here works, besides the anonymous login.

    • jv22222 38 minutes ago
      Yeah, this is desktop only right now. It's mentioned in the post and on the landing page.

      Mobile isn't supported yet. Sorry about the bad experience though, I should probably add a more visible warning for mobile visitors.

  • egedev 1 hour ago
    [dead]
  • junglistguy 12 minutes ago
    [dead]
  • NiggOnMyBalls 54 minutes ago
    [flagged]