Side hustle

Proposals.

Type
Self-initiated web app
Stack
Next.js, Neon Postgres, Prisma
Released
2026

A custom web app to create, send, and manage proposals, with inline signing built in.

Existing accounting tools lock proposal features behind expensive add-ons and lean on Word documents and manual email approvals. There is no real digital signing, which makes the whole back-and-forth slow and feels unprofessional to clients.

So I built my own. Each proposal is shared through a unique link where clients review and sign online. Once signed, both parties receive a finalized PDF by email, with the signature, signer name, IP and timestamp composited in.

It is a full-stack Next.js monolith: Server Components and Server Actions over one Neon Postgres database, with @react-pdf/renderer streaming the documents. Published proposals are immutable snapshots, so a later re-brand can never alter a sent document.

Rich-text proposal editor
Toggle-able sections
Line items and budgets
Shareable client link
Inline digital signing
Auto-generated PDFs
Version control
Signed copies by email
Proposals dashboard listing every proposal

One dashboard

Every proposal lives in one place, whether draft, published, signed or expired, with live status counts and a full history at a glance.

Rich-text proposal editor

Rich-text proposal editor

Every proposal is written in a rich-text editor: introduction, scope and offer with real formatting, headings and lists. No Word documents, no copy-paste.

Toggling proposal sections on or off

Toggle-able sections

Turn whole sections on or off per proposal: introduction, description, scope, technical specs, terms, planning and budget. Each client gets exactly the document they need.

Line items and budget editor

Line items and budgets

The budget is built from line items that total automatically. Prices and subtotals stay consistent from the first draft through to the signed copy.

Generated PDF preview of a proposal

Auto-generated PDFs

Every published proposal is composited into a branded PDF with @react-pdf/renderer, streamed on demand and always matching what the client sees online.

Client opening a proposal to review and sign

Shareable client link

Each proposal is shared through one unique link. Clients open it on any device, read the full offer and sign in the same place, with no logins and no attachments.

Signature composited into the final PDF

Inline digital signing

Clients sign inline. The signature, signer name, IP address and timestamp are composited into the final document, giving verifiable approval without a separate signing tool.

Version history for a proposal

Version control

Published proposals are immutable snapshots. Every version is kept and downloadable, so a later edit or re-brand can never alter a document that has already been sent.

Confirmation screen after a proposal is signed

Signed copies by email

Once signed, both parties receive the finalized PDF by email. The whole back-and-forth collapses into a single link, and client workload drops with it.

The platform meaningfully improved my workflow. The whole proposal process is now streamlined: I send a link, and the rest follows.

In the future I may add AI-assisted drafting to reduce the writing effort, but the current version already does exactly what I need.

Like what you see?
Tell me about your project
Grab a coffee