TrackaExpense is a modern, feature-rich expense tracking application designed to help you take control of your finances. With an intuitive interface, powerful analytics, and seamless cloud synchronization, managing your money has never been easier.
- 🚀 100% Ad-Free - Pure financial tracking experience
- 🔒 Secure & Private - Your data is encrypted and protected
- ☁️ Cloud Sync - Access your data from anywhere
- 📊 Smart Analytics - Visual insights into your spending patterns
- 👥 Bill Splitting - Split expenses with friends and groups
- 🎯 Savings Goals - Track and achieve your financial goals
- 📸 Receipt Management - Capture and store receipts
- 🔔 Smart Reminders - Never miss tracking your expenses
- Real-time Overview - View total expenses, income, and balance at a glance
- Recent Transactions - Quick access to your latest financial activities
- Time Range Filters - View data for 7 days, 30 days, 3 months, 6 months, 1 year, or all time
- Quick Actions - Fast access to add income or expense
- Interactive Charts - Beautiful bar charts and pie charts
- Category Breakdown - See spending by category with visual representations
- Trend Analysis - Track income and expense patterns over time
- Custom Date Ranges - Analyze specific time periods
- Export Data - Share and backup your financial reports
- Quick Entry - Add income or expenses in seconds
- Rich Categories - Organize with pre-defined or custom categories
- Receipt Capture - Take photos or upload receipt images
- Transaction Details - Add notes, amounts, dates, and categories
- Edit & Delete - Full control over your transaction history
- Search & Filter - Easily find specific transactions
- Goal Setting - Create multiple savings goals with target amounts
- Progress Tracking - Visual progress bars showing achievement
- Deposit & Withdraw - Manage your savings with ease
- Goal History - Track all changes to your savings
- Multiple Goals - Manage various savings objectives simultaneously
- Group Management - Create groups for different occasions
- Split Methods - Split equally or by custom percentages
- Expense Tracking - Keep track of who paid what
- Settlement System - Easy settlement between group members
- Smart Calculations - Automatic calculation of who owes whom
- Group Notifications - Stay updated on group activities
- Split History - View all past splits and settlements
- Daily Reminders - Gentle nudges to track your expenses
- Fun Messages - Motivational and engaging notification messages
- Split Alerts - Get notified about group activities and settlements
- Customizable - Control notification preferences
- Context-Aware - Smart notifications based on your activity
- Profile Management - Update your name, email, and profile picture
- Authentication Options:
- Email/Password sign-in
- Google Sign-In integration
- Apple Sign-In (iOS only)
- Account Security - Phone verification and secure authentication
- Privacy Policy - Transparent data handling information
- Contact Support - Easy access to customer support
- Account Deletion - Full control with instant account deletion
- Photo Capture - Take pictures directly from the app
- Gallery Upload - Select existing photos from your device
- Image Storage - Securely stored in Firebase Storage
- Receipt Viewing - Full-screen receipt viewing
- Receipt Sharing - Share receipts when needed
- React Native 0.76.5 - Cross-platform mobile development
- TypeScript - Type-safe development
- React 18.3.1 - Latest React features
- Firebase Authentication - Secure user authentication
- Firebase Firestore - Real-time NoSQL database
- Firebase Storage - Secure file storage
- Firebase Cloud Messaging - Push notifications
- Google Sign-In - Seamless Google authentication
- Apple Sign-In - Native iOS authentication
- Email/Password - Traditional authentication method
- React Native Paper - Material Design components
- React Native Vector Icons - Beautiful icon library
- React Native Linear Gradient - Smooth gradient effects
- Custom Fonts - Kufam & Lato typography
- React Navigation 7 - Smooth screen transitions
- Stack Navigator - Modal and card-style navigation
- Bottom Tab Navigator - Easy access to main features
- React Native Gifted Charts - Beautiful, customizable charts
- Bar Charts - For trend analysis
- Pie Charts - For category breakdowns
- Notifee - Advanced local notifications
- Firebase Cloud Messaging - Remote push notifications
- Smart Scheduling - Context-aware reminders
- Moment.js - Powerful date manipulation
- React Native Image Picker - Photo selection and camera
- React Native Share - Native sharing capabilities
- React Native Async Storage - Local data persistence
- React Native Onboarding Swiper - Beautiful onboarding experience
Before you begin, ensure you have the following installed:
- Node.js (>= 18.0.0)
- npm or yarn
- React Native CLI
- Android Studio (for Android development)
- Xcode (for iOS development, macOS only)
- JDK 17 (for Android)
git clone https://github.com/chhedadhruv/TrackaExpense.git
cd TrackaExpensenpm install
# or
yarn installcp env.example .envEdit the .env file with your Google Web Client ID:
# Google Sign-In Configuration
GOOGLE_WEB_CLIENT_ID=your-actual-web-client-id.apps.googleusercontent.com
GOOGLE_IOS_CLIENT_ID=your-ios-client-id.apps.googleusercontent.com
GOOGLE_OFFLINE_ACCESS=false
GOOGLE_FORCE_CODE_FOR_REFRESH_TOKEN=false
GOOGLE_ACCOUNT_NAME=
GOOGLE_PROFILE_IMAGE_SIZE=120
GOOGLE_OPENID_REALM=
GOOGLE_SERVICE_PLIST_PATH=
GOOGLE_HOSTED_DOMAIN=To get your Google Web Client ID:
- Go to Google Cloud Console
- Select your project (or create a new one)
- Navigate to "APIs & Services" > "Credentials"
- Find your "Web application" client (not Android/iOS client)
- Copy the Client ID and paste it in your
.envfile
- Download
google-services.jsonfrom your Firebase Console - Place it in
android/app/google-services.json - Ensure your SHA-1 fingerprint is added to Firebase:
cd android
./gradlew signingReportCopy the SHA-1 and add it to Firebase Console under Project Settings > Your Apps > Android App
- Download
GoogleService-Info.plistfrom your Firebase Console - Place it in
ios/GoogleService-Info.plist - Open
ios/TrackaExpense.xcworkspacein Xcode - Add the plist file to the project
cd ios
pod install
cd ..npm run android
# or
npx react-native run-androidFor release build:
npm run android:releasenpm run ios
# or
npx react-native run-iosFor release build:
npm run ios:releaseIf not started automatically:
npm start
# or
yarn startTo reset cache:
npm run start:resetnpm run build:androidThe APK will be generated at:
android/app/build/outputs/apk/release/app-release.apk
npm run build:android:bundleThe AAB will be generated at:
android/app/build/outputs/bundle/release/app-release.aab
- Open
ios/TrackaExpense.xcworkspacein Xcode - Select Product > Archive
- Follow the app distribution wizard
TrackaExpense takes your privacy seriously:
- End-to-End Encryption - All data transmission is encrypted
- Secure Authentication - Firebase Auth with OAuth 2.0
- No Data Selling - We never sell your personal information
- Account Deletion - Instant account and data deletion
- Privacy Policy - Full transparency in data handling
- GDPR Compliant - Respects your data rights
For detailed information, see our Privacy Policy.
| Command | Description |
|---|---|
npm start |
Start Metro bundler |
npm run android |
Run on Android device/emulator |
npm run ios |
Run on iOS device/simulator |
npm run android:release |
Run Android in release mode |
npm run ios:release |
Run iOS in release mode |
npm run build:android |
Build Android APK |
npm run build:android:bundle |
Build Android App Bundle |
npm run build:clean |
Clean Android build |
npm run start:reset |
Start Metro with cache reset |
npm run lint |
Run ESLint |
npm test |
Run Jest tests |
- Apple Sign-In is only available on iOS devices
- Some notification features may require proper Firebase configuration
- Receipt images require camera/storage permissions
This project is licensed under the MIT License - see the LICENSE file for details.
- React Native - The amazing framework
- Firebase - Backend infrastructure
- React Navigation - Navigation solution
- React Native Paper - UI components
- Notifee - Local notifications
- React Native Gifted Charts - Beautiful charts
- Google Sign-In - Authentication
- Apple Sign-In - iOS authentication
Dhruv Chheda
- 🌐 Website: dhruvchheda.com
- 📧 Email: [email protected]
- 🐙 GitHub: @chhedadhruv
- 💼 LinkedIn: Dhruv Chheda
If you find TrackaExpense helpful, please consider:
- ⭐ Starring this repository
- 🐛 Reporting bugs
- 💡 Suggesting new features
- 🔀 Contributing to the code
- 📢 Sharing with friends
Made with ❤️ by Dhruv Chheda
© 2025 TrackaExpense. All rights reserved.
