FinTrack is a modern and responsive Telegram Mini App designed to help users effortlessly track their income, expenses, and budgets — all within the Telegram ecosystem. Built with a mobile-first approach, the app adapts to Telegram's native light/dark theme using the Telegram WebApp SDK (TWA SDK), delivering a seamless in-app experience.
Live Demo 👉 Launch FinTrack in Telegram
- 📊 Dashboard Overview – Instantly view budget, income, and expense stats
- 💼 Budget Management – Create and monitor monthly budgets
- ➕ Income Tracking – Log income by category and date
- ➖ Expense Tracking – Log expenses with detailed breakdowns
- 📈 Analytics – Ring pie chart, bar charts, and line charts for deep insights
- 🎨 Theme Adaptive UI – Matches Telegram light/dark theme automatically
- 📱 Fully Responsive – Designed mobile-first for Telegram in-app browsers
| Category | Tools Used |
|---|---|
| Frontend | React, React Router, Tailwind CSS, Vite |
| State/Query | TanStack Query |
| UI/UX | ShadCN UI, ShadCN Charts |
| Forms & Validation | React Hook Form, Zod |
| Backend | Firebase Firestore |
| Telegram SDK | @twa-dev/sdk |
git clone https://github.com/your-username/fintrack.git
cd fintrackpnpm install- Create a project in Firebase Console
- Set up Firestore and add web app config
- Create a
.envfile and add your Firebase config:
VITE_FIREBASE_API_KEY=your_key
VITE_FIREBASE_AUTH_DOMAIN=your_domain
VITE_FIREBASE_PROJECT_ID=your_project_id
VITE_FIREBASE_STORAGE_BUCKET=your_bucket
VITE_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
VITE_FIREBASE_APP_ID=your_app_idpnpm run devNote: To run the app as a Telegram Mini App, you’ll need to deploy and register the URL with your bot.
src/
├── components/ # UI components
├── pages/ # Route components
├── hooks/ # Custom hooks
├── lib/ # Utilities (e.g., firebase config)
├── assets/ # Icons, images, etc.PRs are welcome! Feel free to fork the repo and submit a pull request.
This project is licensed under the MIT License.
