A comprehensive financial tracking application designed for families to manage their finances in one place. Track accounts, monitor balances, manage debts, participate in community savings (paluwagan), and view transaction history with ease.
- Account Management: Track multiple financial accounts in one place
- Balance Overview: Get a clear view of your total balance across all accounts
- Transaction History: Log and categorize your income and expenses
- Debt Tracking: Manage your debts and payment schedules
- Paluwagan System: Participate in and track community savings programs
- Multi-currency Support: Handle different currencies for international families
- Responsive Design: Works seamlessly on desktop and mobile devices
- User Authentication: Secure login with email/password or Google authentication
- Data Persistence: All your financial data is securely stored in Firebase
- npm or yarn
- Firebase account
-
Clone the repository
git clone https://github.com/cob-byte/FamMoneyTracker.git cd family-money-tracker -
Install dependencies
npm install # or yarn install -
Set up Firebase configuration
- Create a
.envfile in the root directory - Add your Firebase configuration:
VITE_FIREBASE_API_KEY=your-api-key VITE_FIREBASE_AUTH_DOMAIN=your-auth-domain VITE_FIREBASE_PROJECT_ID=your-project-id VITE_FIREBASE_STORAGE_BUCKET=your-storage-bucket VITE_FIREBASE_MESSAGING_SENDER_ID=your-messaging-sender-id VITE_FIREBASE_APP_ID=your-app-id VITE_FIREBASE_MEASUREMENT_ID=your-measurement-id - Create a
-
Start the development server
npm run dev # or yarn dev -
Open your browser and navigate to
http://localhost:5173
family-money-tracker/
├── public/ # Static assets
├── src/
│ ├── assets/ # Project Assets
│ ├── firebase/ # Firebase config
│ ├── components/ # Reusable UI components
│ ├── contexts/ # React context providers
│ ├── pages/ # Application pages
│ ├── types/ # TypeScript type definitions
│ ├── App.tsx # Main application component
│ ├── main.tsx # Application entry point
│ └── vite-env.d.ts # Vite environment types
├── eslint.config.js # ESLint configuration
├── index.html # HTML entry point
├── package.json # Project dependencies
├── tailwind.config.js # Tailwind CSS configuration
├── tsconfig.app.json # TypeScript configuration
└── vite.config.ts # Vite configuration
- Frontend: React 19, React Router 7
- Styling: TailwindCSS 4
- Icons: Lucide React
- Backend & Authentication: Firebase 11
- Language: TypeScript 5
- Build Tool: Vite 6
- Notifications: React Toastify
- Create and manage multiple accounts (checking, savings, investments)
- Track balance for each account
- Visualize account distribution
- Log income and expenses
- Categorize transactions
- View transaction history
- Filter and search transactions
- Track loans and debts
- Set payment schedules
- Monitor interest and principal payments
- View debt payoff timeline
- Create or join community savings groups
- Track contribution schedules
- Monitor total pool amount
- Schedule payouts
- User authentication
- Profile management
- Currency preferences
- Account setup wizard
- Secure authentication via Firebase Auth
- Data stored in Cloud Firestore with security rules
- Password recovery functionality
- Protected routes for authenticated users
- Budget planning and tracking
- Financial reports and insights
- Bill reminders and scheduling
- Mobile application (React Native)
- Data export functionality
- Dark mode support
- Multi-language support
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Developed with ❤️ for families who want to take control of their finances together.