Tech Stack
React (Vite, JSX, SCSS), Node.js, Express.js, Axios, PM2, Linux, Kubernetes
Overview
The company needed a better way to handle project proposals. Estimates were being created manually, which took hours and often relied on rough guesses. My goal was to design a tool that would make proposals faster and more accurate, while also producing something polished enough to share directly with clients.
What I Built
I created a full-stack web app and deployed it on the company’s intranet environment.
Front End – A React/Vite form where users enter labor, materials, and other project costs. The app instantly calculates totals, profit, and margin. Submitting the form generates a detailed PDF report breaking down each calculation — essentially a ready-made proposal draft.
Back End – A lightweight Node.js/Express server running on Linux with PM2. I added a simple config system so users can save and reload project templates, making it easy to reuse past proposals or spin up similar ones quickly.
Deployment – Hosted in a production Kubernetes environment alongside other internal apps, accessible to all employees.
Results
Proposal prep time went from hours to minutes (10x faster).
Estimates are far more reliable (~50% more accurate).
The PDF output gives the company a professional, consistent way to present costs to clients.
Key Takeaways
This project was a good example of building something end-to-end: front end, back end, deployment, and a workflow that directly supports the business. The biggest win was turning a manual, inconsistent process into a repeatable system that saves time and increases confidence in every proposal.
