Join the discussion
Write your take first — we'll ask for email only when you're ready to publish.
- Hacker News
- 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.by carlosjobim
- TIL those are called Miller columns !by andrewlu0
- Looks great.
I'm curious whether the primary users are AI-native document products or more traditional SaaS applications.
The document-app niche feels increasingly important with the rise of AI workflows.
by mklifelife - primary use is Document processing automation, or Intelligent Document Processing (IDP)by sails
- These should really be web components. Leaving out every framework other than React is really bad for the web.by spankalee
- thats fair and definitely something we can try supporting in the future. we started with React because of how familiar models are with shadcn and tailwind
we hope this can be useful for people building in React though!
by andrewlu0 - Then build it yourself. They do work for free, give it to the world, and your response is: do it differently the way I want.by digitaltrees
- 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?
by qreoct - just added an example implementation in the xlsx viewer for search, but the code is yours to modify and customize. react-xlsx should expose the necessary functions to implement a custom search (by workbook/sheet etc...)by andrewlu0
- It looks really great! But, from what I can see, it’ll need some work on optimisation. Good luck with this project, guys!by whitephoenix
- Thank you! Working on optimizingby andrewlu0
- The performance on the site is truly terrible, the top animation was probably going at 5fps when scrolling.by iamsaitam
- Heard the performance feedback will work on it today!by andrewlu0
- Why doesn't it mention anywhere that they are React components?by egeozcan
- we'll try to make it more clear on the landing/introduction page!by andrewlu0
- Not just React, but it apparently also depends on Next.js
Dependency in package.json:
- https://github.com/extend-hq/ui/blob/main/apps/v4/package.js...
Dependencies in some components:
- https://github.com/extend-hq/ui/blob/main/apps/v4/components...
- https://github.com/extend-hq/ui/blob/main/apps/v4/components...
by resurge - Experienced the same nightmare a few times over with citations.
React/next is limiting, we have rebuilt this for angular and now redid it again using lit for better compatibility. Our old one is very similar to this.
Loading citations for each field across 1000s of pages, colliding citations for all the messy formats, zoom, rotate etc. what a mess!
Great that you took the time to MIT this as it would have saved us many hours, though I think today Fable + Codex makes it pretty quick
I could recreate these in lit as a fork, would be very useful to have the full set
by sails - Someone requested web components earlier so let me know if you make that happen!by andrewlu0
- 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...
by CraigJPerry - yes - the pdf/docx viewer use react-virtual to virtualize the pages
the zoom should work with the bounding box highlights, we're working on adding rotation support
by andrewlu0 - 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.
by dvt - nice - did you write a custom parser for PDF/DOCX? we wrote one for XLSX after running into event loop issues with sheet JSby andrewlu0
- Looks cool but your home page heavily lags on my mbp m3 pro - you should maybe be lazy loading vs loading all your components upfrontby pea
- Valid feedback a few other comments have mentioned , I’m going to try improving the home page tomorrowby andrewlu0
- The performance is quite bad. There are some basics missing or broken.
- no caching for file previews
- no sorting by date in the file picker
- no sorting by size in the file picker
- no sorting by file type in the file picker
- no search in the file picker
- cant enter a folder in the detail view (only expand) in the file picker
- cant go to page (by page number) in the document viewer
- after clicking a button in the document viewer, focus is lost on the document and arrow keys, space, pgup/pgdown dont work until the document is clicked again
- cant select text in the document viewer, unless I search first, in which case it then works
This is after looking at the file picker and document viewer less than 3 minutes(!!!). I gave up after that. Getting 80% of a file picker is easy, getting the last 20% done, so that it's on par with existing software, is not.
Very very odd to have things look this polished, yet be this terrible functionality- and performance-wise. These are not random quirky new ideas I'm having, these have been basics that work in every single file picker and document viewer since the early days of UI, before the web.
by lionkor - Hey! Very valid feedback - working on improving the file system component and overall site performance todayby andrewlu0
- Since there was a recent thread on react compiler[r] - I wonder if adding/pushing the code through react compiler would help? (Assuming it's not already being used)
[r] Thread was about rewrite in rust, but it made me have a look at the purpose/claims made by the project - and fine-grained, automated memoization for speed seems central.
by e12e - Your issues are mostly with the file picker, which is a brand new component that was just added yesterday in response to a feature request after launch: https://x.com/andrewlu0/status/2064726998186971400?s=46
It has some rough edges as a result, but your suggestions are very valid. We’ll make those improvements (we’re also taking PRs!).
by kbyatnal - Yeah, it also seems it's made in React & Next. From experience, you'll have a hard time choosing a worse technology for low-level, interaction-heavy UI. You need direct control over focus, keyboard handling, scrolling and so on. You also need to leverage hardware accelerated rendering too, which is clunky with 3rd party React libraries.
What's more, even if state management should technically be easier with the amount of state libraries, you'll realise sooner or later that the established ones are cleverly immutable where you really just want them to be performant.
I am not saying that it's React at fault for the symptoms you see here, but I would expect any such library made in it to hit exactly these kind of edge cases.
by gobdovan