A quoting system instead of Excel and Word
For teams that still put every quote together by hand. One system for supplier price lists, the catalogue, margins, the EUR/CZK rate and the PDF for your customer.
- Typical stack
- Next.js, TypeScript, Supabase
- Timeline
- 6–12 weeks

Sound familiar?
- Supplier price lists live in Excel
- Products are copied into Word by hand
- Margins and the EUR/CZK rate are worked out separately
- The quote goes out as a PDF by email
That is how every quote was put together at a Czech technical distributor before the system.
What the system replaces
- Before: Price lists in ExcelWith the system: A guided price-list import with column mapping takes any supplier’s format.
- Before: Looking products up by handWith the system: One catalogue with full-text search and filters.
- Before: Margin and rate on the sideWith the system: Automatic margin, discount and EUR/CZK conversion in the quote.
- Before: Copying into WordWith the system: PDF in two versions: for the customer, and internal with purchase prices and margins.
Also
- Supplier-specific XLSX orders.
- Every quote is frozen the moment it’s created, so old quotes never change.


Real screens from the system. Product, supplier and customer details are hidden.
Built for a Czech technical distributor
Every quote was put together by hand: supplier price lists in Excel, products copied into Word, margins and the EUR/CZK rate worked out separately, then a PDF by email.
- Built so a quote takes minutes instead of hours.
- About 4,000 products from one supplier import in seconds (my own test).
Next.js (App Router), TypeScript (strict), Supabase (Postgres + Auth), jsPDF, xlsx-js-style, Vercel
References on request: after our first call, I’m happy to put you in touch with the client behind the quoting system.

Who’s behind Blik
Jan Štok
Blik is a studio of one: I scope, design and build every project myself, so the person on your first call is the person who ships it. I’ve built hotel websites, a quoting system that replaced a distributor’s Excel and an iOS app for health data, and connected booking and smart locks for an overloaded reception. Whatever I build, you get a written handover, and on new projects the domain, hosting, repository and accounts are in your name from day one.
Three characters, one person. Blink listens, Scribble builds, Spark launches, and all three are me.
How it goes
Discovery & proposal
We map the real problem, constraints and what success looks like, then put the scope, fixed price and timeline in writing.
You get: a clear brief and a one-page proposal
30-min call · proposal within two working days
Design & build
You see working software early and often. Brand, interface, and engineering in one pair of hands.
You get: a working build
6–12 weeks
Launch & support
Handover, training, and a single person to call when something needs attention.
You get: the running system and a written handover
Questions
Can it read our suppliers’ price lists?+
Yes. The import has a guided column mapping, so it takes any supplier’s format. In my own test about 4,000 products from one supplier imported in seconds.
Does it handle euros and crowns?+
Yes. The catalogue shows prices in euros and crowns side by side, and quotes get automatic margin, discount and EUR/CZK conversion.
Will old quotes change when prices change?+
No. Every quote is frozen the moment it’s created, so old quotes never change.
How long does it take?+
A focused internal platform typically reaches a usable build in roughly six to twelve weeks, depending on scope.
What does it cost?+
A fixed price per project, agreed before anything starts. No surprise invoices. Tell me the scope and I’ll send you a proposal.
You’re one person, so what if you’re unavailable?+
Fair question. The answer lies in how the project is set up, not in a promise. On new projects, the domains, hosting and repositories are in your name from day one, and the code and documentation are yours once the final payment is made. I build on mainstream tools, not a private framework, so another competent developer can pick it up. For anything in production we agree a response window in writing before it goes live.