Webapplicatie
Eyael
A print-on-demand platform where people design apparel in the browser and staff turn confirmed orders into print-ready files.
- Jaar
- 2025
- Mijn rol
- Product design and full-stack development
- Technologie
- TypeScriptNext.jsHonoFabric.jsCloudflare D1DrizzleBetter-AuthStripePlaywrightDocker



Het probleem
Small apparel brands and creators want to sell custom products without holding stock, but the tools they get are either a rigid template picker or a manual back-and-forth with a printer. Staff then chase payment by hand, rebuild designs to get a file the printer can use, and have no record of who changed what.
Wat ik bouwde
Eyael has three parts: a storefront with a design editor, an admin panel for staff, and an API that runs on Cloudflare Workers or as a self-hosted Node server with SQLite. The editor is built on Fabric.js. Designs live in a logical coordinate space, are clipped to each product's real print areas (rectangle, ellipse or polygon) and warn when an image is too low-resolution for its printed size. Orders freeze a snapshot of the design, so later edits never change what was bought. A headless Chromium renderer turns that snapshot into a print master (PNG and PDF at the area's real size and DPI) once an order is confirmed or paid. Payments use Stripe Checkout with signed, idempotent webhooks, and every staff action goes to an audit log.
Het resultaat
A working end-to-end platform: 43 commits, about 37,000 lines of TypeScript, 11 database migrations and 19 API integration flows, plus browser smoke tests for the editor on desktop and phone. The Node and Docker deployment path was run on a development machine. It is not launched with real customers yet: Stripe has not been run with live keys, and email and HTTPS are untested against real services.
Hoe het in elkaar zit
- 1 Design editor
- 2 Next.js BFF
- 3 Hono API
- 4 D1 + R2
- 5 Print master