logoalt Hacker News

Show HN: Extend UI – open-source UI kit for modern document apps

153 pointsby kbyatnalyesterday at 4:09 PM39 commentsview on HN

We're open-sourcing 14 components & examples today for PDF, DOCX, and XLSX viewers, plus bounding box citations, file upload, e-signature, and more. It's MIT licensed and fully customizable.

Demo video here: https://share.extend.ai/kRmSGKRF

When we started, we tried every file viewer and document component library we could find. Unfortunately, none of them had all the functionality (and polish) that we wanted, so we ended up building our own for https://extend.ai/. It was only ever meant to be internal, but enough customers kept asking for it that we decided to open source it.

It's useful for building document processing agents, real-time user facing document intake flows, or all kinds of internal tooling.

We naively thought this would be a solved problem. Turns out, making PDF/XLSX/DOCX viewers that work at scale is not trivial...we use and maintain it for Extend ourselves, so we've fixed a lot of edge cases that came up while running millions of pages / day through our own system. Our hope is that with our resources + community support, it'll keep getting better over time.


Comments

dvtyesterday at 8:26 PM

Super cool. Working on a local AI tool specifically for document workflow automation (where context = screen/web/folders/files), and this could come in super useful. I do most of the PDF/DOCX/etc. parsing natively in Rust, but having a nice way to see the output without spinning up Word or Powerpoint is a huge leap.

Thanks for releasing publicly.

show 1 reply
peatoday at 12:37 AM

Looks cool but your home page heavily lags on my mbp m3 pro - you should maybe be lazy loading vs loading all your components upfront

show 1 reply
CraigJPerryyesterday at 7:27 PM

Those bounding box demos are decent.

By quirk of fate i've spent the past 2 days prototyping some stuff on pdfjs. Just trying to figure out a game plan for handling bounding boxes in the face of page zooming, different resolutions etc. etc. I can't see it mentioned whether the components are virtualising pages (as in reusing dom elements as document pages scroll by). I guess i just learned what i'll be exploring tomorrow then...

show 1 reply
egeozcanyesterday at 8:08 PM

Why doesn't it mention anywhere that they are React components?

show 1 reply
promiseofbeanstoday at 12:44 AM

How is your PDF coverage? They are notoriously difficult things to render, with endless edge cases. Mozilla’s PSD.js is the status quo here, so what do you do better than them?

show 1 reply
cactusplant7374today at 1:46 AM

This is really interesting. Thanks for creating this.

carlosjobimtoday at 1:44 AM

Excellent that you offer Miller columns, one of the best tools for computing and information browsing, and management. The world should run on Miller columns.

qreoctyesterday at 11:30 PM

Cool project! I was playing around with the Excel viewer - the docs claim "Search across sheets and cell ranges", but I can't seem to trigger search functionality and the browser search bar can't find contents on cells.

Is this a known issue?

phononyesterday at 11:16 PM

How does it compare to https://news.ycombinator.com/item?id=48436863 ?

show 1 reply
spankaleeyesterday at 6:32 PM

These should really be web components. Leaving out every framework other than React is really bad for the web.

show 2 replies
hobofanyesterday at 8:17 PM

Thanks, that looks awesome! We were looking to add DOCX and XLSX preview to our app, and were planning to do server-side conversion to PDF (which seems to be what most other apps resort to) due to the lack of good libraries to render it, and this is exactly what we were looking for! :)

show 1 reply
plastic041yesterday at 11:11 PM

Looks clean and works fine, but it needs optimization. Clicking "Type" in the "schema builder" example takes 1~2 seconds to open the popover in the landing page(macbook pro m4). I think its because there are lots of heavy components, but still it's too slow.

show 1 reply
warthogyesterday at 6:39 PM

really like these - curious how the xlsx editor and viewer is built in that what kind of headless spreadsheet?

could not have been easy

show 1 reply
stingeryesterday at 9:55 PM

Does it/will it support Markdown files?

show 1 reply
KolmogorovCompyesterday at 7:40 PM

> This page could not load

On mobile Safari…

show 1 reply
topaitools_xyzyesterday at 11:29 PM

[flagged]

bschmidt800today at 12:16 AM

[dead]