The old page was the default dark-SaaS template: near-black ground,
violet gradient headline, blur-glow orbs, glassmorphic rounded cards,
emoji icons. It looked like every other generated landing page and said
nothing about what the product is for.
This one is built out of document materials, because the product is
about documents:
- Warm newsprint stock (#f2efe6) and warm near-black ink instead of
near-black and violet. Two accents only, each with a job: vermilion is
reserved exclusively for content that was hiding, olive for content
that has been cleared. Nothing else gets to be colored.
- Instrument Serif carries the headlines, Geist Mono carries labels and
metadata, so the UI sans never has to pretend to be expressive.
- Hairline rules do the structural work that bordered cards were doing.
The six hiding places are now a numbered editorial list rather than a
grid of identical rounded boxes, and the pipeline steps are a ruled
table with serif numerals.
- Left-aligned asymmetric hero with a colophon block, rather than
everything stacked down the center axis.
- The self-host section inverts to ink for tonal contrast, which also
gives the terminal block somewhere natural to live.
The page also now practices what it preaches: there is a real
white-on-white sentence planted in the hero, and an X-ray switch in the
nav reveals it. Selecting it works too, the same way it would in a PDF
viewer.
The four-stage demo keeps its behavior and moves to the new palette.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Introduce a new Next.js `client` app for XRayPDF: adds frontend pages (dashboard, upload, layout, Navbar, globals) and API routes for documents (upload, OCR, pixel processing, delete, list). Include Tesseract traineddata (eng.traineddata), update next.config.ts to allow native server packages and remote images, update package.json to add dependencies (canvas, sharp, tesseract.js, pdfjs-dist, multer, uuid), and update Prisma schema. Also add .gitignore entries for user uploads/results and a README describing the project and architecture.
Introduce a new 'client' Next.js app scaffold: configuration files (next.config.ts, eslint.config.mjs, postcss, tsconfig), Prisma config and schema, app routes including NextAuth API and server actions, session/provider utilities, proxy, public assets, README and .gitignore. Also add IDE project files under .idea and a root README to initialize the repository structure for development.