Mahanc is an interactive financial simulation platform that transforms everyday personal narratives into structured, data-driven financial roadmaps. Users can simply write a "letter" describing their future plans --- from buying a car, starting a family, or retiring early --- and Mahanc automatically extracts milestones, estimates financial impacts, and generates intelligent capital-growth projections.
A major long-term objective supported by Mahanc is helping users plan, track, and stay reminded about their journey toward owning property through actionable insights and automated guidance.
project/
│
├── backend/
│ ├── pyproject.toml # Poetry project file
│ ├── poetry.lock
│ ├── .env # Environment variables
│ └── src/
│ ├── app.py # Flask entry point
│ ├── routes/
│ │ └── generate.py # API route for generation
│ └── services/
│
│
└── frontend/
├── package.json
├── package-lock.json
└── src/
├── App.js
├── components/ # React components
├── hooks/ # Custom React hooks
└──
Write your goals in plain language (e.g., "I want to retire by 50 and
buy a home").
Mahanc uses Generative AI to convert this into a structured timeline
with milestones, costs, and financial checkpoints --- including
property-ownership goals like down-payment savings or mortgage
readiness.
Get a monthly capital curve based on your income, savings, lifestyle,
and major life events.
Property-related events (deposit saving, home purchase, mortgage
commitments) are visualized clearly.
Interact directly with the chart: adjust Savings Rate, Risk Appetite, Deposit Target, or other parameters and watch the roadmap update in real time.
A living roadmap of your financial journey. Hover over events to reveal cost impacts, income shifts, or how a property purchase affects future projections.
Click any point in the chart to receive context-aware advice.
Mahanc can also send helpful reminders to keep you on track ---
especially for long-term goals like owning property.
Sync Mahanc with a Telegram Bot to add life events, ask for updates, or receive property-saving reminders directly from your phone.
Ensures the app stays responsive as you drag charts or type, minimizing unnecessary backend calls.
pip install poetry
cd backend
poetry install
Inside the backend folder:
GEMINI_API_KEY='xxx'
Telegram_Bot_Token='xxx'
Target_Chat_ID='xxx'
poetry run python app.py
Backend runs at: http://localhost:5000
cd ../frontend
npm install
npm start
Frontend runs at: http://localhost:3000
- User edits text or interacts with draggable points.
- React tracks which features are locked/unlocked.
- Debounce ensures only stable updates are sent.
- Backend recalculates data.
- React merges updated values.
- Live updates refresh immediately.
Format your code:
npm run format