Place
Drag fields onto the real blank in the browser. Coordinates, box grids and repeat rows are authored against the same geometry the server prints with.
- Visual builder over the actual PDF
- Box grids for pre-printed combs
- Repeat rows with Δx / Δy
FormPress fills coordinate-mapped PDF forms from JSON. Map a blank once in the visual builder, then print one application or five hundred — with the exact values stamped on each recorded for audit.
Built for Indian capital-markets paper.IPO and NCD ASBA applications, verified end to end against real syndicate forms — and generic enough for any stamped form.
The hard part of form printing is not the PDF. It is knowing which form, what goes where, and proving afterwards what was printed.
Drag fields onto the real blank in the browser. Coordinates, box grids and repeat rows are authored against the same geometry the server prints with.
Post a JSON context, get a filled form. The blank is never modified — FormPress appends an overlay, the way a stamping press would.
Numbered blanks are a regulated resource. They are reserved FIFO, audited by who and when, and only marked printed once the artifact is safely written.
Most desks lose IPO windows to manual form filling. FormPress turns a client master into print-ready application forms — filled, numbered and batched the way the counter expects them.
{
"form_type": "ipo",
"product_code": "INNOVISION",
"category": "employee",
"context": {
"client": {
"name": "Rahul Kumar Sharma",
"pan": "ABCDE1234F"
},
"application": {
"bids": [{ "qty": 130, "price": 665 }]
}
}
}The amount blocked, the demat composite and the amount in words are derived by the IPO pack — the caller sends bids, not arithmetic.
The fill planner is pure Rust with no IO and no clock — which is why the same crate compiles to WebAssembly and runs in the builder. The preview you drag fields against is the code that prints the form, not a re-implementation of it.
A form-printing engine: it fills coordinate-mapped PDF forms from JSON context documents. You map a blank form once in a visual builder, then print filled copies through a REST API — one at a time, fifty in a request, or five hundred in a background batch.
Yes — that is its home ground. FormPress ships an IPO pack that understands reservation portions (individual, employee, shareholder, policyholder), venue codes, bid validation and ASBA field presets, and an NCD pack for debt public issues with series grids and UPI-mandate rules. It is verified end to end against real 12-page syndicate ASBA forms.
Yes. Text the standard PDF fonts cannot encode is automatically re-run through embedded Noto faces, shaped with HarfBuzz so Devanagari conjuncts and matras are correct, and subset to the glyphs used. A template that says "Helvetica" still prints राहुल शर्मा properly rather than question marks.
No. Upload the blank PDF and drag fields onto it in the browser. Placement, box grids for pre-printed character combs, repeat rows, conditions and formats are all authored visually, and the preview runs the same engine that prints the final form.
Yes. The engine compiles to WebAssembly, so templates, blank PDFs and rendering can run entirely in the browser against IndexedDB. The server deployment is a single static binary with the UI embedded — nothing is fetched from a CDN at runtime.
Numbered blanks are held in a per-issue ledger. Printing reserves the next numbers FIFO, records who reserved them and from where, and only marks them printed once the output file has been written successfully — failed rows are returned to the pool.
Upload a blank, drop fields onto it, and post your first context — the builder and the playground are both in here.