Inspiration
Shonchoy (সঞ্চয়) means savings in Bangla. Women in Bangladesh often manage the household money. Many have irregular income and a microloan at 20–45% interest. Most finance apps are in English, full of jargon, and built around a steady salary. We wanted a warm, private, bilingual money planner that fits how these women actually live.
What it does
- Onboarding: an 18+ checkbox (no age stored), then income setup: monthly, yearly or irregular, with multiple sources.
- Money: fixed and variable expenses, plus debts with warnings for high interest and for a high share of income going to debt. A payoff slider shows how paying more shortens a loan.
- Plan: an automatic monthly budget. After expenses and debt, the rest is split between an emergency fund, goals and flexible spending.
- Goals: an emergency fund tracker, custom goals with a live timeline slider, and investment guidance that is educational only.
- Home & Learn: a health score out of 100, personal insights, 8 plain-language lessons and a scam red-flag checker.
- EN | বাং toggle on every screen.
How we built it
Plain HTML, CSS and JavaScript with no framework and no build step. It's deployed from GitHub to Vercel/Netlify, and all data stays in the browser. Three shared pieces keep the team consistent:
- one data schema that every screen reads and writes
- one calculation engine,
computePlan(), with unit tests - one dictionary holding every string in English and Bangla
The budget works like a waterfall:
$$ L = \max!\left(0,\; I - E - \textstyle\sum_j m_j\right) $$
$I$ is monthly income, $E$ is expenses and $m_j$ are the minimum loan payments. The leftover $L$ is split 60/20/20 while the emergency fund is under half full, then 40/35/25, then 0/65/35 once it's full. Loan payoff time uses the standard loan repayment formula:
$$ n = \left\lceil \frac{-\ln!\left(1 - \frac{rB}{P}\right)}{\ln(1+r)} \right\rceil $$
$B$ is the balance, $r$ the monthly interest rate and $P$ the monthly payment. The emergency fund target is 3 months of essential costs, or 6 if income is irregular.
Challenges we ran into
- Bangla done properly: we needed fonts that cover both scripts, taller line spacing, Bangla digits, and South Asian number grouping (১,০০,০০০).
- Edge cases in the maths: when a payment is less than the monthly interest ($P \le rB$), the loan never ends. We had to catch that case instead of showing a broken number. We also had to stop the plan from putting more into an emergency fund that was nearly full.
- Keeping the team's schema unchanged while still adding a dropdown for the income source type.
- Helpful but not financial advice: the investment guide gives general rules, never product picks.
- Live sliders that update instantly without the screen losing focus.
Accomplishments that we're proud of
- The whole app works fully in English and Bangla, including numbers and dates.
- The health score is easy to understand: it's five visible parts, not a black box.
- The design is privacy-first: no accounts, no server, and no age stored.
- A petal-edged coin logo and a pink-and-plum design system shared across every teammate's screen.
- The layout works on phones, with tested calculations and a live demo.
What we learned
- Explaining where a number comes from builds more trust than a clever number with no explanation.
- Design for edge cases first, because real users hit them on day one.
- Supporting a language well affects fonts, spacing, number formats and tone.
- Shared conventions let a team build separate screens that still fit together.
What's next for Shonchoy
- Have native speakers review the Bangla copy, and test the app with community groups.
- Make it installable and usable offline.
- Add monthly check-in reminders.
- Add savings history charts.
- Offer optional, opt-in sync between devices.
Built With
- baloo-da-2
- css3
- es-modules
- font-awesome
- git
- github
- google-fonts
- hind-siliguri
- html5
- javascript
- localstorage
- node.js
- playwright
- svg
- wrangler
Log in or sign up for Devpost to join the conversation.