Show HN: Open-source .docx editor library for building document apps

github.com

104 points by thisisjedr 3 days ago

We are working on an open-source .docx editor library for apps that need to edit Word documents in the browser. We just shipped 1.0.

A lot of existing approaches convert .docx into HTML and lose document semantics along the way. Our editor parses OOXML directly and uses its own rendering+layout engine to produce paged documents with html/css. Edits round-trip back to .docx, so you’re always editing the document, not its representation.

The core rendering engine is framework agnostic, with React and Vue ui adapters on top.

It’s Apache 2.0. Happy to answer questions.

aejm 2 days ago

A really solid looking editor! Just a heads up on small, mobile screen sizes: the UI elements of the top row overlap unusably, the rest of the UI seems usable just quite zoomed in and I really had to pan around a lot to do anything. Fundamentally a solid and usable UI, I’d recommend a little more polish on smaller screen sizes. Good work!

  • thisisjedr 2 days ago

    Noted, and thanks for the feedback! It's on our roadmap to better support mobile experience

unD 3 days ago

Hi! I was looking at `@eigenpal/docx-editor-agents`—would that be a viable option for fetching the content of Word docs in agentic workflows? I'm currently using Pandoc to extract an MD version, but I'm not sure how true to the actual document that is (e.g., with comments). Thanks!

6f17f2dd 2 days ago

Do you plan to handle bigger documents? I tested your live demo with ~40 pages (copy pasting the demo) and was quite unusable for writing.

pryelluw 3 days ago

I’ve built something similar but for PDFs. Know the pain too well. Best wishes!

  • pulkitanand 3 days ago

    Interesting! Would love to check that out as well, have you released it?

    • pryelluw 3 days ago

      It was an internal enterprise tool that will never be public.

radial_symmetry 3 days ago

Holy shit, this is exactly what I needed for a major client. The track changes specifically, and being able to do it from Typescript. You have no idea how happy you just made me.

Edit: Did you just make this repo public? Last week I was scouring the internet for something like this and couldn't find it.

  • thisisjedr 3 days ago

    Happy to hear that! :)

    The repo has actually been public for ~3 months, but we only launched the project homepage https://www.docx-editor.dev recently, so search engines are still catching up.

    > I was scouring the internet for something like this and couldn't find it.

    Interested to hear how can we make it more discoverable? What keywords were you searching for ?

bobajeff 3 days ago

This looks really impressive. How hard was it to implement this in typescript?

  • thisisjedr 3 days ago

    Thanks! The hard here part is not typescript implementation but it's catching Word undocumented quirks.

    The OOXML spec gets you far but doesn't cover 100% of how Word renders things. Community feedback has helped a lot here, users attach docs (in gh issues) that break rendering, we can reproduce against Word, fix the engine, and keep tightening fidelity.

r0b05 2 days ago

Excellent work