DEV Community

Cover image for FreelanceFlow AI: Generate Client Proposals with Open-Weight AI
Gourav Chhatwani
Gourav Chhatwani

Posted on

FreelanceFlow AI: Generate Client Proposals with Open-Weight AI

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

Demo

Watch the project walkthrough:

Try FreelanceFlow AI: https://freelanceflow-ai-2du9.onrender.com/

Source code: https://github.com/GouravGC/freelanceflow-ai

Project evidence and screenshots: https://github.com/GouravGC/freelanceflow-ai/tree/main/evidences

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

What I Built

Freelancers often spend valuable time converting client requirements into clear, professional project proposals. FreelanceFlow AI helps simplify that process.

I built FreelanceFlow AI, an AI-powered proposal generator for freelancers, independent consultants, and small service businesses.

Users enter a client name, project brief, hourly rate, and estimated hours. The application generates a structured proposal with a title, summary, requirements, assumptions, deliverables, exclusions, milestones, risks, and a client email. It also calculates the estimated project cost and supports downloading the proposal as JSON.

For example, a freelancer can enter the requirements for an e-commerce website and generate a proposal with a cost estimate and a clear breakdown of the work.

The people most likely to benefit are freelance developers, designers, consultants, and agencies that repeatedly prepare client proposals. It could be useful as a time-saving tool for people who want to spend less time on repetitive writing and more time delivering client work.

Demo

Live application:

https://freelanceflow-ai-2du9.onrender.com/

Project evidence and screenshots:

https://github.com/GouravGC/freelanceflow-ai/tree/main/evidences

Code

GitHub repository:

https://github.com/GouravGC/freelanceflow-ai

The project uses a modular Python structure, automated tests, Docker, and GitHub Actions. The repository includes the application source code, tests, configuration examples, and documentation.

How I Built It

I built FreelanceFlow AI using Python and Streamlit, with a modular structure to keep the application organized and maintainable.

The project supports two AI generation options:

  • Google Gemma through Ollama: A local inference option that runs an open-weight model on compatible hardware.
  • OpenRouter: A cloud-based option for AI-powered proposal generation.

The application takes the user's project requirements and pricing details, calculates the estimated cost, and generates a structured proposal. Pydantic supports data validation, while pytest covers the pricing logic, decimal rates, and invalid input values.

I also added Docker support and a GitHub Actions workflow for automated testing and container publishing. The web application is deployed on Render.

This project brought together AI integration, modular Python development, testing, containerization, and deployment in one practical application.

Why Does Open Innovation Matter?

Freelancers may work with client briefs, budgets, and business requirements that they do not want to send to an external AI service unnecessarily.

By supporting local inference through Gemma and Ollama, FreelanceFlow AI gives users an alternative to sending every generation request to a hosted AI provider. When generation runs locally, the prompt can be processed on the user's own machine, subject to the local setup and model requirements.

Open-weight models also provide more flexibility to experiment with model choices and deployment approaches instead of depending entirely on one hosted provider. The cloud option remains available when convenience is more important.

For a side hustle, these choices matter. Freelancers need tools that fit their budgets, workflows, hardware, and client confidentiality requirements. Open-weight AI makes it possible to explore a more flexible approach to building those tools.

Prize Categories

Best Use of Gemma

FreelanceFlow AI integrates Google's Gemma open-weight model through Ollama for local proposal generation.

Best Use of Render

The Streamlit application is deployed on Render and accessible through a live web application. I am entering this category based on its use for hosting the application's frontend.

Final Thoughts

FreelanceFlow AI began with a straightforward goal: make client proposal writing faster and more

Top comments (0)