DEV Community

Cover image for BriefBill: Turning Messy Client Briefs into Professional Proposals with Gemma
Piyush
Piyush

Posted on

BriefBill: Turning Messy Client Briefs into Professional Proposals with Gemma

Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle Submission 💸

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

What I Built

Freelancers often receive client requests through scattered messages, rough notes, or vague descriptions. Turning those into a clear proposal takes time—and missing a requirement early can lead to confusion later.

I built BriefBill, an AI-powered proposal generator that helps freelancers turn a messy client brief into a structured, editable proposal.

BriefBill is designed to help freelancers:

  • Extract key requirements from a client's brief.
  • Organize deliverables, assumptions, and unanswered questions.
  • Draft a professional proposal that can be reviewed and edited.
  • Work with a structured proposal instead of starting from a blank page.
  • Prepare a client-ready document using the proposal's editing and print/export workflow.

The intended users are independent freelancers and small service businesses that want to spend less time formatting proposals and more time delivering their work.

The business idea is straightforward: if BriefBill saves freelancers time and helps them communicate scope more clearly, it could become a useful paid tool. That is a hypothesis I want to validate with real users.

Demo

Try BriefBill: https://briefbill.onrender.com/

The application is publicly deployed. Try entering a realistic client brief and review the generated proposal, including the extracted requirements, deliverables, assumptions, and questions.

Code

GitHub repository: https://github.com/piyusshhjangid/BriefBill

The repository contains the application source code and setup instructions.

I wanted this to be more than an AI prompt wrapped in a UI. The project includes a structured generation workflow, validation, and tests around the application's behavior.

How I Built It

BriefBill combines a web application with a Gemma-powered proposal-generation workflow.

The AI integration uses Gemma 4 26B A4B IT, accessed through Google's Gemini API. The model helps interpret unstructured client briefs and produce structured proposal content.

The core workflow is:

  1. Input: The freelancer provides a client brief.
  2. Analysis: Gemma interprets the request and identifies requirements, deliverables, assumptions, and missing information.
  3. Validation: The generated output is checked against the application's expected structure.
  4. Proposal creation: The structured result is presented in an editable proposal workflow.
  5. Finalization: The freelancer can review the content and prepare it for sharing or printing.

One important design decision is to keep proposal content generation separate from deterministic application logic. AI is useful for interpreting ambiguous language and drafting content; calculations and other predictable operations should be handled by application code rather than relying on the model to do arithmetic correctly.

Testing and verification

Before deployment, I ran the project's automated checks:

  • 131 tests passed across 8 test files.
  • Production build completed successfully.
  • Lint checks passed.
  • Formatting checks passed.
  • The live-inference verification command succeeded locally, and the returned output passed schema validation.

The live-inference check was a functional verification, not a benchmark. I am not claiming a particular accuracy rate or production-scale performance from it.

Why Does Open Innovation Matter?

For a project like BriefBill, the quality of the result depends on how well a model handles ordinary but ambiguous language.

A freelancer might write something like:

“I need a simple website for my bakery with a menu, contact form, and a way to update products. Can you give me a quote?”

Turning that into a useful proposal requires more than rewriting the sentence. The system needs to identify the requested work, recognize what remains unclear, and organize the information into something a client can review.

Gemma gave me a model I could integrate into that workflow and evaluate as part of a real application. The open-weight model ecosystem also creates opportunities for developers to experiment with different deployment approaches, compare models, and build more specialized products around their capabilities.

For this version, I use the Gemini API rather than claiming to self-host the model. That distinction matters: open-weight models can expand developer choice, but the actual hosting and inference setup still determines the costs, privacy properties, and operational constraints of an application.

My goal with BriefBill is to demonstrate a practical use of an open-weight model—not just ask it a question, but make it one component of a product with a defined audience, a repeatable workflow, and validation around its output.

Prize Categories

Primary category: Best Use of Gemma

BriefBill integrates Gemma into a concrete workflow for transforming unstructured client requests into structured proposals.

What I Want to Improve Next

The next step is to get feedback from freelancers who regularly prepare client proposals. I want to learn whether the generated structure is genuinely useful, which parts need the most editing, and whether the tool saves enough time to justify paying for it.

Other priorities include improving proposal quality for different freelance services, refining error handling, and evaluating the experience with a broader range of real-world briefs.

BriefBill is a working starting point, and I want to improve it based on actual usage rather than assumptions.


Built for the Hacktoberfest Open-Source AI Challenge — Week 2: Side Hustle.

devchallenge #hf26challenge

Top comments (0)