cd /news/artificial-intelligence/quoteflow-voice-to-estimate-for-cont… · home › topics › artificial-intelligence › article
[ARTICLE · art-152730] src=dev.to ↗ pub= topic=artificial-intelligence verified=true sentiment=↑ positive

QuoteFlow: voice-to-estimate for contractors (HF26 Side Hustle)

A developer built QuoteFlow, an open-source tool that converts voice or text jobsite notes into itemized, region-aware contractor estimates with materials, labor, permits, tax and a branded PDF. The app runs open-weight Gemma locally via Ollama in a Tauri desktop build to keep client data on-device, and uses Groq-hosted Gemma with PII redacted for a browser demo, with deterministic layers handling line math and tax plus TabPFN-style win-rate calibration on suggested totals.

by read5 min views2 publishedOct 19, 2026

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle

#

What I Built

QuoteFlow turns messy jobsite notes (voice or text) into an itemized, region-aware estimate a contractor can send the same evening — materials, labor, equipment, permits, tax, branded PDF, and a copy/SMS/WhatsApp send loop.

Who would pay: solo plumbers, electricians, HVAC techs, and remodelers. They lose jobs when the quote lands late, and they lose evenings writing spreadsheets. Their alternatives are expensive quoting SaaS that wants the whole client list in someone else’s cloud, or a notes app plus hand math. QuoteFlow is the wrench-priced tool: fast bids, professional PDFs, and client addresses that do not need to be pasted into a generic cloud chatbot.

On the Windows desktop / Tauri path, open-weight Gemma runs via Ollama so job notes can stay on the PC. On the hosted demo (weak laptops / judges), Groq serves the same open-weight Gemma family with customer PII redacted before the cloud call.

#

Demo

Try it in ~2 minutes: open the live demo → Try it in your browser → finish Welcome (pick India / INR / GST if you like) → New estimate → describe a plumbing job → Create → Send / PDF.

Screenshots

Landing

First-run setup (region-aware) Voice-first new estimate

Generated estimate + send

#

Code

Repo: https://github.com/Mavros-Lykos/QuoteFlow Stack in short:

Frontend: React + Vite PWA (optional Tauri desktop shell) #

Backend: FastAPI + SQLite (Tiger Data / pgvector when the connection string connects) #

Models: Gemma via Ollama on desktop; Groq Gemma on Render #

Pricing path: TabPFN-style calibration on suggested totals; SerpApi labor grounding when keyed #

Voice: ElevenLabs STT/TTS when keyed; browser speech fallback

#

How I Built It

  1. Welcome captures business + region (currency, tax name, units) so the UI, LLM prompts, and PDF stay consistent — e.g. INR + GST 18%.
  2. Job notes (mic or text) go to the open-weight model, which drafts an itemized BOM and a customer-facing proposal.
  3. Deterministic layers own money: line math, tax, TabPFN-style win-rate calibration on the suggested total.
  4. Optional partners enrich without owning the core path: SerpApi for live labor benchmarks, ElevenLabs for voice, Tiger Data hybrid memory (SQLite always; pgvector when TIGER_DATA_CONNECTION_STRING connects).
  5. Render hosts the judge-facing demo so nobody has to install Ollama to try it.

#

Why Does Open Innovation Matter?

Privacy is the product for trades. Client names, addresses, and what’s broken inside someone’s home should not be the default paste into a closed chatbot. Local Gemma on desktop keeps that data on the machine after setup; the hosted path redacts PII before Groq. #

Unit economics for a side-hustle tool. A one-person plumbing business will not justify $40/month SaaS for evening quotes. Open weights (local, or cheap hosted open models) keep marginal AI cost low enough that the product can be priced like a tool. #

No lock-in at the worst moment. The estimating path is not tied to one proprietary model. Swap Ollama models on desktop; keep shipping when a vendor changes pricing.

#

Prize Categories

Each category below is a job QuoteFlow actually does on the live demo or desktop path — not a logo dump.

Best Use of Gemma — Gemma is the estimator, not a chatbot bolted on the side. Job notes become an itemized BOM and a customer-ready proposal; on desktop that is Ollama + open-weight Gemma on the contractor’s machine, and on the hosted demo the same open-weight family runs via Groq so judges can try it without a GPU. The privacy and “wrench-priced tool” story only works because the core model is open-weight. #

Best Use of Render — Render is the shop floor for this Side Hustle: a public PWA frontend and FastAPI backend so a plumber (or a judge) can finish Welcome → estimate → PDF in a browser. The product is meant to be used at the end of a workday — if it only runs on my laptop, it is a prototype; Render makes it a real try-before-you-buy demo. #

Best Use of TabPFN — Quoting is a tabular decision: win rate vs. margin. After Gemma drafts line items, a TabPFN-style calibration pass nudges the suggested total toward a price that can actually win the job — prediction inside the estimating agent, not a disconnected CSV notebook. #

Best Use of SerpApi — Labor rates drift by ZIP and trade. When keyed, SerpApi grounds those rates in live market search so the estimate is not pure model guesswork; when offline, a regional index keeps the path honest. Fresh web signal feeding the quote, not a generic search widget. #

Best Use of ElevenLabs — Hands are dirty, the phone is in a pocket. ElevenLabs STT/TTS turns “describe the job” into a voice-first loop (with browser speech as fallback), so the contractor can dictate once and send — exactly how a side hustle tool should feel after a long day on site. #

Best Use of Tiger Data — Job memory is hybrid by design: SQLite always works; Tiger Cloud + pgvector kicks in whenTIGER_DATA_CONNECTION_STRING connects, so similar past jobs can inform the next estimate without forcing every quote into a brittle single store. Embeddings and hybrid recall for the agent that remembers the last remodel, not just the last prompt. #

Best Use of Mastra — The optional Mastra sidecar undermastra/ is the orchestration lane for multi-step estimate flows (tools + memory) when you want an agent harness around the same open models — same product, clearer separation between “UI app” and “agent workflow.”

#

Bonus — first user energy

I dogfooded the full path on the live Render demo (Welcome → plumbing job → estimate QF-20261019-style → Send sheet / PDF). The product pitch to a real plumber is the same as the demo: finish the physical workday, dictate the job once, send a branded estimate before dinner.

── more in #artificial-intelligence 4 stories · sorted by recency
── more on @quoteflow 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
→ Live at https://your-agent.zahid.host ✓
Get free account → Pricing
from €0/mo · no card required
LIVE [news/quoteflow-voice-to-e…] indexed:0 read:5min 2026-10-19 · —