frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Clojure Async Flow Guide

https://clojure.github.io/core.async/flow-guide.html
48•simonpure•2h ago•22 comments

Claudia – Desktop companion for Claude code

https://claudiacode.com/
338•zerealshadowban•10h ago•170 comments

NUMA Is the New Network: Reshaping Per-Socket Microservice Placement

https://codemia.io/blog/path/NUMA-Is-the-New-Network-How-Per-Socket-Memory-Models-Are-Reshaping-Microservice-Placement
12•signa11•1h ago•5 comments

The Enterprise Experience

https://churchofturing.github.io/the-enterprise-experience.html
265•Improvement•10h ago•75 comments

Modifying other people's software

https://natkr.com/2025-08-14-modifying-other-peoples-software/
29•todsacerdoti•4d ago•6 comments

Google admits anti-competitive conduct involving Google Search in Australia

https://www.accc.gov.au/media-release/google-admits-anti-competitive-conduct-involving-google-search-in-australia
21•Improvement•43m ago•4 comments

Show HN: Doxx – Terminal .docx viewer inspired by Glow

https://github.com/bgreenwell/doxx
103•w108bmg•7h ago•24 comments

Mangle – a language for deductive database programming

https://github.com/google/mangle
10•simonpure•2h ago•0 comments

Derivatives, Gradients, Jacobians and Hessians

https://blog.demofox.org/2025/08/16/derivatives-gradients-jacobians-and-hessians-oh-my/
203•ibobev•13h ago•48 comments

Show HN: OverType – A Markdown WYSIWYG editor that's just a textarea

215•panphora•11h ago•63 comments

Llama-Scan: Convert PDFs to Text W Local LLMs

https://github.com/ngafar/llama-scan
73•nawazgafar•5h ago•48 comments

AI vs. Professional Authors Results

http://mark---lawrence.blogspot.com/2025/08/the-ai-vs-authors-results-part-2.html
66•biffles•5h ago•40 comments

ArchiveTeam has finished archiving all goo.gl short links

https://tracker.archiveteam.org/goo-gl/
307•pentagrama•9h ago•66 comments

Show HN: NextDNS Adds "Bypass Age Verification"

275•nextdns•13h ago•76 comments

Node.js is able to execute TypeScript files without additional configuration

https://nodejs.org/en/blog/release/v22.18.0
359•steren•21h ago•206 comments

The Microscopic Forces That Break Hearts

https://thewaitlist.substack.com/p/the-microscopic-forces-that-break
9•surprisetalk•2d ago•3 comments

I Prefer RST to Markdown (2024)

https://buttondown.com/hillelwayne/archive/why-i-prefer-rst-to-markdown/
41•shlomo_z•7h ago•20 comments

Fun with Finite State Transducers

https://blog.yossarian.net/2025/08/14/Fun-with-finite-state-transducers
13•woodruffw•3d ago•0 comments

BBC Micro, ancestor to ARM

https://retrogamecoders.com/bbc-micro-the-ancestor-to-a-device-you-are-guaranteed-to-own/
103•ingve•14h ago•87 comments

MS-DOS development resources

https://github.com/SuperIlu/DOSDevelResources/blob/main/README.md
62•mariuz•11h ago•9 comments

Here be dragons: Preventing static damage, latchup, and metastability in the 386

http://www.righto.com/2025/08/static-latchup-metastability-386.html
68•todsacerdoti•12h ago•37 comments

Show HN: Fallinorg - Offline Mac app that organizes files by meaning

https://fallinorg.com/#
66•bobnarizes•11h ago•34 comments

Why Nim?

https://undefined.pyfy.ch/why-nim
123•TheWiggles•14h ago•129 comments

A Visual Exploration of Gaussian Processes (2019)

https://distill.pub/2019/visual-exploration-gaussian-processes/
37•vinhnx•2d ago•0 comments

LL3M: Large Language 3D Modelers

https://threedle.github.io/ll3m/
381•simonpure•16h ago•163 comments

Carved stone mask – Pre-pottery, Neolithic B period

https://www.imj.org.il/en/collections/334459-0
44•webmaven•2d ago•22 comments

Faster Index I/O with NVMe SSDs

https://www.marginalia.nu/log/a_123_index_io/
139•ingve•14h ago•21 comments

HN Search isn't ingesting new data since Friday

https://github.com/algolia/hn-search/issues/248
176•busymom0•7h ago•30 comments

Primitive Streaming Gods

https://tedium.co/2018/01/30/legal-music-streaming-history/
10•_vaporwave_•2d ago•1 comments

Teaching GPT-5 to Use a Computer

https://prava.co/archon/
48•Areibman•2d ago•10 comments
Open in hackernews

Show HN: OverType – A Markdown WYSIWYG editor that's just a textarea

215•panphora•11h ago
Hi HN! I got so frustrated with modern WYSIWYG editors that I started to play around with building my own.

The problem I had was simple: I wanted a low-tech way to type styled text, but I didn't want to load a complex 500KB library, especially if I was going to initialize it dozens of times on the same page.

Markdown in a plain <textarea> was the best alternative to a full WYSIWYG, but its main drawback is how ugly it looks without any formatting. I can handle it, but my clients certainly can't.

I went down the ContentEditable rabbit hole for a few years, but always came to realize others had solved it better than I ever could.

I kept coming back to this problem: why can't I have a simple, performant, beautiful markdown editor? The best solution I ever saw was Ghost's split-screen editor: markdown on the left, preview on the right, with synchronized scrolling.

Then, about a year ago, an idea popped into my head: what if we layered a preview pane behind a <textarea>? If we aligned them perfectly, then even though you were only editing plain text, it would look and feel like you were editing rich text!

Of course, there would be downsides: you'd have to use a monospace font, all content would have to have the same font size, and all the markdown markup would have to be displayed in the final preview.

But those were tradeoffs I could live with.

Anyways, version 1 didn't go so well... it turns out it's harder to keep a textarea and a rendered preview in alignment than I thought. Here's what I discovered:

- Lists were hard to align - bullet points threw off character alignment. Solved with HTML entities (• for bullets) that maintain monospace width

- Not all monospace fonts are truly monospace - bold and italic text can have different widths even in "monospace" fonts, breaking the perfect overlay

- Embedding was a nightmare - any inherited CSS from parent pages (margin, padding, line-height) would shift alignment. Even a 1px shift completely broke the illusion

The solution was obsessive normalization:

    // The entire trick: a transparent textarea over a preview div
    layerElements(textarea, preview)
    applyIdenticalSpacing(textarea, preview)

    // Make textarea invisible but keep the cursor
    textarea.style.background = 'transparent'
    textarea.style.color = 'transparent'
    textarea.style.caretColor = 'black'

    // Keep them in sync
    textarea.addEventListener('input', () => {
      preview.innerHTML = parseMarkdown(textarea.value)
      syncScroll(textarea, preview)
    })
A week ago I started playing with version 2 and discovered GitHub's <markdown-toolbar> element, which handles markdown formatting in a plain <textarea> really well.

That experiment turned into OverType (https://overtype.dev), which I'm showing to you today -- it's a rich markdown editor that's really just a <textarea>. The key insight was that once you solve the alignment challenges, you get everything native textareas provide for free: undo/redo, mobile keyboard, accessibility, and native performance.

So far it works surprisingly well across browsers and mobile. I get performant rich text editing in one small package (45KB total). It's kind of a dumb idea, but it works! I'm planning to use it in all my projects and I'd like to keep it simple and minimal.

I would love it if you would kick the tires and let me know what you think of it. Happy editing!

---

Demo & docs: https://overtype.dev

GitHub: https://github.com/panphora/overtype

Comments

garbageoverflow•6h ago
If it were a WYSIWYG editor, there'd be previews for images. But it seems like it's just syntax highlighting for textareas. Nice project either way, but false advertising.
calmworm•4h ago
I didn’t see an option for images. Am I missing something?
dchest•5h ago
Looks good!

Some links I've collected in the past that describe this approach:

- https://css-tricks.com/creating-an-editable-textarea-that-su...

- https://github.com/WebCoder49/code-input

I believe https://grugnotes.com also does this for markdown.

mmastrac•5h ago
This is pretty nice, though I'd suggest you call it a transparent syntax highlighter.

For https://grack.com/demos/adventure/, I used a hidden <input text> for something similar. I wanted to take advantage of paste/selection and all the other goodies of text, but with fully-integrated styling.

Like you, I found that standard text input boxes were far more interesting than contentEditable because they're just so simple overall.

I think there's probably an interesting middle ground here where you render real markdown with the textarea effectively fully hidden (but still with focus), emulate the selection events of the rendered markup into the textarea, and basically get a beautiful editor with all the textarea solidness.

rockwotj•26m ago
Fun fact: this is how github adds syntax highlighting in its search bar. A while back I built the same syntax highlighting in Shortwave (an email client) using the same “view on top of a transparent input” trick. Pair it all with the following blog, for a top notch search UX

https://blog.superhuman.com/delightful-search-more-than-meet...

pedrovhb•4h ago
Nice! Seems very useful if you can drop in and have everything work.

Nitpicking a bit: it's not as much _rendering_ markdown as it's _syntax highlighting_ it. Another interesting approach there could be to use the CSS Custom Highlight API [0]. Then it wouldn't need the preview div, and perhaps it'd even be possible to have non-mono fonts and varying size text for headers.

[0] https://developer.mozilla.org/en-US/docs/Web/API/CSS_Custom_...

pspeter3•46m ago
Can you use highlights on text area contents?
pyromaker•3h ago
I also got frustrated with text editors and decided to build something for myself too, so I don't have to repeat the process over and over.

https://www.texteditors.dev

bloppe•3h ago
This isn't really WYSIWYG because it keeps the formatting symbols like * or # etc.
lifthrasiir•2h ago
Still, what you see is what you get (plus some formatting symbols). It's marginally WYSIWYG.
phonon•3h ago
912 bytes....

https://sylvainpolletvillard.github.io/spell/demo.html

jackbridger•2h ago
12 pages of docs vs it’s a textarea. Great job, gonna try it out.
bullen•2h ago
Anyone knows a good in browser coding editor widget?

That supports color coding for different languages?

farley13•2h ago
Codemirror is pretty decent. Last time I looked for this (6+ years ago) it's what we landed on for an internal tool. Things may have changed tho!
zazaulola•2h ago
2kb

https://medv.io/codejar/

rendaw•1h ago
I made something similar! https://github.com/andrewbaxter/malarkdowney - The main difference (I think) is that mine applies h* style changes and isn't visually separated from the rest of the page. I.e. it's not just syntax highlighting, it's a more fully-blown output preview.

The text overlay approach doesn't work if you want width-affecting/height style changes (I assume) since that'd cause the overlay to stop matching. The downside is contenteditable cursor movement is broken for inexplicable reasons.

rafram•1h ago
The scroll syncing in the demo doesn’t seem to work well on iOS Safari. I can’t scroll all the way to the bottom.
vmurthy•1h ago
Went down the rabbit hole which is the overtype.dev website (nice work btw!) and found and even nicer rabbit hole - https://hyperclay.com/ Single HTML apps :). Enjoy!
runako•8m ago
This reminds me of some of the better experiments in mid-aughts Web dev, and is exactly the kind of project that helps push standards & user expectations forward.
uonr•46m ago
https://github.com/inokawa/rich-textarea
ZYbCRq22HbJ2y7•35m ago
That is not just a textarea, but it is a pattern seen in many other projects
nbbaier•13m ago
Isn't this just syntax highlighting and not wysiwyg?