Show HN: Minimalist editor that lives in browser, stores everything in the URL (github.com)
I wanted to see how far I could go building a notes app using only what modern browsers already provide – no frameworks, no storage APIs, no build step.
What it does:
Single HTML file, no deps, 111 loc
Notes live in the URL hash (shareable links!)
Auto-compressed with CompressionStream
Plain-text editor (contenteditable)
History support
Page title from first # heading
Respects light/dark mode
No storage, cookies, or tracking
The entire app is the page source.
88 comments
[ 2.6 ms ] story [ 157 ms ] threadhttps://gist.github.com/smcllns/8b727361ce4cf55cbc017faaefbb...
> It is RECOMMENDED that all senders and recipients support, at a minimum, URIs with lengths of 8000 octets in protocol elements. Note that this implies some structures and on-wire representations (for example, the request line in HTTP/1.1) will necessarily be larger in some cases.
Mainstream browsers support at least 64,000 characters [1], and Chrome supports up to 2MB [2].
[0]: https://www.rfc-editor.org/rfc/rfc9110#section-4.1-5
[1]: https://stackoverflow.com/a/417184/
[2]: https://chromium.googlesource.com/chromium/src/+/HEAD/docs/s...
https://flems.io/
- https://textarea.my/#TYuxDcIwEEWpmeKUCiSIJQoKU0KFRBUWOGwnWDi...
I also have no way to confirm that URLs aren't logged server side, so I'd never trust the claim about "no tracking". That's why these projects also end up self-hosted.
Half a megabyte for a URL. That certainly is a thing.
Now if you bootstrap the app code into the url too then you can have a minimal kernel to run any machine in url.
Then you can also make a Quine somehow.
The Crime and Punishment one consistently crashes Brave mobile for me. I assume it's the length of the URL - and seen another commentator say the same for chrome mobile (sure they both use the same codebase so likely an upstream issue).
I built Ponder in the same vein. It, however, has 10 files. I did not use the URL, did not have double the fun, and now I’m sad.
https://github.com/codazoda/ponder
The sharing works just like here, by encoding the tab itself in the url.
https://github.com/planbnet/guitartabs
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...