This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle.
What I Built
I built DukaanDost AI, a local business assistant for small Indian distributors supplying biscuits, namkeen, chips, and other packaged goods to shops.
Consider a simple transaction: a shop orders several cartons, pays part of the bill, and promises to pay the rest later. The distributor needs to update stock, record the sale, and carry the unpaid amount into the shop’s udhaar, or outstanding balance.
DukaanDost brings those tasks together:
- Inventory tracking with purchases, adjustments, and low-stock alerts.
- Multi-product orders with cash, UPI, and credit payments.
- Shop ledgers and partial-payment tracking.
- Sales reports, estimated gross profit, printable receipts, and CSV export.
- An AI assistant for English and Hinglish business requests.
The intended customer is an owner-operated distributor. My proposed business model is paid setup, onboarding, and local support. Willingness to pay still needs validation; this is currently a working single-user MVP.
Demo
The recording uses fictional shops and transactions.
One demonstrated workflow starts with this request:
Sell 2 Parle-G Biscuits cartons and 1 Bikaji Bhujia carton to Ramesh General Store. Received 500 rupees in cash.
With the sample catalog prices, the preview shows:
- Order total: ₹1,720
- Payment received: ₹500
- Added to the shop’s outstanding balance: ₹1,220
The user reviews the preview and confirms it. Only then does the app save the sale, reduce inventory, and update the ledger.
The assistant also supports questions such as:
Aaj ki total sale kitni hui?
Ramesh General Store ka kitna balance pending hai?
Code
View the source code on GitHub
The application code is MIT licensed. The repository includes setup instructions, architecture documentation, automated tests, and recorded local-model evaluation results.
How I Built It
The frontend uses React and TypeScript, the backend uses FastAPI, and business records are stored in SQLite.
For AI, I used Gemma 3, specifically gemma3:1b, running locally through Ollama.
Gemma interprets a business request into a structured intent. The backend then validates that intent, resolves actual products and shops, and calculates prices, payments, and outstanding amounts from the database.
For business questions, answers are formatted from predefined database queries. For orders, the assistant creates a proposal requiring explicit confirmation.
An important implementation challenge was handling ambiguous product names. “Biscuit” could refer to several products, so the app can ask for clarification rather than silently choosing one.
The documented live Gemma evaluation passed 28 of 30 development checks. Two outstanding-balance queries returned clarification. This was a small development test set, and it showed that interpretation still has limitations. The results are documented in the AI evaluation report.
Ordinary inventory, order, and payment forms remain usable when Ollama is unavailable.
Why Does Open Innovation Matter?
Local inference makes a practical difference to this project’s business model. A distributor can use the assistant without a mandatory paid inference API or a per-request proprietary service dependency.
Gemma runs on the same computer as the application, while SQLite gives the operator a database they can back up themselves. The model is configurable, so the project can adapt as local hardware and available models improve.
After installing dependencies and downloading the model, the application is designed to operate using local services. Setup still requires internet, and inference performance depends on the machine.
Open-weight AI made this architecture possible. The next step is to test whether distributors find it useful enough to pay for setup and support.
Prize Categories
Best Use of Gemma
DukaanDost uses Gemma locally through Ollama to interpret English and Hinglish business questions and propose shop orders for human review.
AI disclosure: AI assistance was used during development and in preparing this write-up.
Top comments (0)