Dev.to AI 🤖 Ai 👁 0 📖 5 min read

Vyorin Budget — The Budget Tracker People Actually Keep Using

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle. What I Built Most budgeting apps fail for the same reason. They make you feel guilty, not powerful. You link your bank,

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

What I Built

Most budgeting apps fail for the same reason. They make you feel guilty, not powerful. You link your bank, categorize three months of data, feel bad about Swiggy, and quit by day seven.

Vyorin Budget flips the flow: Income → Budget → Spend → Insights.

I built it for how we actually live in India. Payday to payday, not calendar month to calendar month. If you get paid on the 5th, your month runs from the 5th to the 4th. Vyorin understands that.

Who Would Pay for It?

This is Week 2: Side Hustle, so I designed it with margins from day one. Zero infrastructure cost.

  • Freelancers: ₹199/month for client-wise buckets, automatic GST set-aside, and a "Can I afford to say no?" calculator.
  • Couples and flatmates: ₹299/month for shared budgets without a joint bank account.
  • Small shop owners: ₹499 setup plus ₹99/month for a white-label PWA. "Ratan Tea Stall Budget" instead of "Vyorin Budget".

My first ₹200 came from a tea stall owner next to my dad's office who wanted his shop name on it. That was validation, not just an idea.

Key Features

  • Income-first onboarding: You cannot add an expense until you add income. This forces clarity and cuts churn. On first load, you see only a full-screen salary input — nothing else.
  • Recurring bills: Toggle 🔁 for rent, OTT, SIP, and other recurring expenses. It automatically generates the next month's entries. Insights show figures such as "₹18,500 in recurring — 37% of income".
  • Payday burn rate: Set payday to the 1st, 5th, 10th, 15th, 25th, or the last day of the month. The hero strip shows "₹1,240 per day • 14 days to payday" and turns red when you are over budget.
  • Savings goals: Create goals such as Goa Trip or Emergency Fund. Progress bars help you track your savings and adjust your available spending amount so you do not accidentally spend your Goa fund.
  • 100% local: No login, no bank linking, no cloud. All data stays in localStorage. The app works offline and is installable as a PWA with a ₹ icon.

Demo

Live App: https://vyorin-budget.netlify.app

The 45-Second Test

  1. Open the link. You will see a full-screen welcome modal asking for your salary first. This is intentional.
  2. Add ₹60,000 as salary. Set budgets for Food (₹10,000) and Transport (₹5,000).
  3. Tap the + button. Add ₹450 for Food with the note "Swiggy Biryani". Watch the burn rate update instantly.
  4. Tap the gear icon next to the month. Set payday to the 5th. See "₹X per day • Y days to payday".
  5. Install it:
    • Android Chrome: Menu → Install app.
    • iPhone Safari: Share → Add to Home Screen.

Build Highlights

  • Single file: approximately 254 KB, with no node_modules.
  • 0 px overflow at viewport widths of 375 px and 390 px.
  • Lighthouse PWA score: 100.
  • Lighthouse Accessibility score: 96.

Code

Live App and Code: https://vyorin-budget.netlify.app

There is no separate GitHub repository. The deployed source is the code. Right-click → View Source to inspect the app.

  • Single index.html file — around 2,800 lines.
  • React via CDN, with no build step.
  • Persistence through localStorage keys:
    • vyorin-budget-tracker-v1
    • vyorin-goals
    • vyorin-payday
  • PWA support through Blob URLs: the manifest and service worker are generated in-page, allowing the single-file app to work on Netlify.
  • Core logic includes autoGenerateRecurring(), calculateBurnRate(), and getDaysToPayday(), which handle recurring expenses, spending calculations, and month rollovers.

Why one file? Auditability. A shop owner can email it to their CA. There is no hidden server. You can fork it, add Bengali merchants, and host it anywhere for $0.

How I Built It

I built Vyorin using Meta AI (Muse Spark) as my pair programmer, grounded in open-source thinking.

Ideation

My first prompt was not "build a tracker". It was:

People quit budgeting apps in 3 days and they will not link banks — what would make them stay?

The answer was clear: make payday the center, make income first, and automate recurring expenses.

Build Loop — 7 Iterations in One Night

  • v1: Basic tracker.
  • v2: Income-first flow.
  • v3: Branding and favicon with the ₹ icon.
  • v4: Light and dark modes with system preference support.
  • v5: Recurring bills, burn rate, and savings goals.
  • v6: Responsive design, achieving a visual quality score of 100/100 on mobile and desktop.
  • v7: PWA support, Netlify deployment, and a first-load salary visibility fix.

No Closed APIs on Purpose

  • No Plaid or bank aggregators — SBI users will not give OTPs to every app.
  • No OpenAI API for categorization — used local merchant chips such as Swiggy, Zepto, and IRCTC.
  • No Firebase — localStorage is the database.

The future upgrade is local inference. Replace heuristics with a 1B open model through WebLLM running in the browser. Same architecture, $0 cost, and data that never leaves the device.

Why Does Open Innovation Matter?

If I had to use closed finance APIs, Vyorin would not exist.

The closed path looks like this: Plaid at $500 per month minimum, with limited support for SBI; RazorpayX at ₹15,000 per month; OpenAI at $0.002 per categorization; and Firebase bills on top. You need 100 paying users just to break even. Then you quit.

Open Made It Possible

  1. Privacy as physics, not policy: No server means data never leaves the phone. Try promising that with a closed API.
  2. Zero-cost scaling: Netlify $0, database $0, AI $0. If 10,000 users come tomorrow, the infrastructure cost is still $0. That is a side hustle with 100% margin from user one.
  3. Localization without permission: Want "Mio Amore" or "Dada Boudi Biryani" as a merchant? Add five lines. No feature request to a vendor. That is how you win in Kolkata.
  4. Community as a moat: I shared the Netlify link in a Telegram group of 40 freelancers. In two hours, I got a Tiffin category, a Durga Puja goal template, and Bengali translation fixes.

This is why Hacktoberfest matters. A solo builder in Kolkata can compete with VC-funded apps because the tools are open.

My First User — Dad

My first user is my dad, Somnath Das, 52 — LinkedIn profile. He works in AI. He is my toughest critic because he has seen every dashboard and AI demo.

He still writes important expenses in a notebook because most apps make you feel guilty, not clear.

I showed him Vyorin Budget on his phone.

"How much came in this month?" I asked.

"₹75,000," he said.

I added it. Green bar: Income ₹75,000.

"Spent?"

"₹18,500 rent, ₹350 chai, ₹2,200 tools."

The screen showed:

₹53,950 left • ₹1,798 per day • 30 days to next month.

He stared at ₹1,798 per day.

"If I buy that ₹12,000 course?" he asked.

I added it. The burn rate dropped to ₹1,398 per day. The bar turned amber.

He was quiet, then said:

"আগে খাতায় লিখতে ভুলে যেতাম। এখন ফোনই বলে দেয়, আর কত বাকি আছে।"

Earlier, I would forget the ledger. Now, the phone tells me how much is left.

On day three, he called: "I have ₹420 per day left till the 1st. Should I buy that domain?"

On day seven, his friend who runs a tea stall next door saw it and asked, "How much for this?"

I said, "Free now, ₹200 for your shop name on it."

He paid two ₹100 notes from his cash box.

That was my first revenue. I still have that ₹200 in my wallet.

If you try it, add one income and one Swiggy expense. Watch the burn rate.

That is the moment.

📰 Read the original article on Dev.to AI

Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes — full credit and traffic to the original publisher.