freelance-proposal-js
v1.0.0
Published
Generate a clean HTML client proposal/quote from a JSON file. Zero dependencies, runs via npx straight from GitHub.
Maintainers
Readme
freelance-proposal-js
Generate a clean, print-ready HTML client proposal/quote from a JSON file. Zero dependencies, Node.js — the npx port of freelance-proposal-cli for anyone who'd rather not have Python installed.
npx github:kleogeos/freelance-proposal-js example.json -o proposal.htmlProduces a one-page proposal: summary, scope of work, itemized pricing with a total, timeline, terms, and a signature line — ready to open in a browser and print to PDF or send as a link.
Install (optional)
npm install -g github:kleogeos/freelance-proposal-js
freelance-proposal example.json -o proposal.htmlJSON format
{
"proposal_number": "P-2026-014",
"from": "Your name",
"to": "Client name",
"date": "2026-10-15",
"valid_until": "2026-11-15",
"summary": "One-paragraph description of the project.",
"scope": ["Task one", "Task two"],
"pricing": [{"description": "Design", "amount": 1800}],
"timeline": "4 weeks from signed proposal.",
"terms": "50% deposit to start, 50% on delivery.",
"notes": "Optional free-text note."
}Only pricing is required; every other field is optional and omitted
sections just don't render.
Where this fits
Same output, same fields, as the Python original freelance-proposal-cli — this port is for anyone whose toolchain is Node.js rather than Python. Proposal gets accepted → track the work with freelance-time-cli → log costs with freelance-expense-cli → bill it with freelance-invoice-js.
More free tools: Freelancer Toolbox.
Tests
node test.js