Get paid, stay organized, and never miss a payday!
PayTrack is a modern Android application built for freelancers, contractors, and gig workers to effortlessly manage clients, track income, and generate professional invoices on the go.
- Smart Dashboard: Bird's-eye view of financial health. Track monthly/yearly earnings, pending payments, and overdue invoices at a glance.
- Client Management: Manage client contracts, payment cycles (Hourly, Daily, Weekly, Monthly), and rates.
- Professional Invoices: Generate beautiful PDF invoices with a single tap. Customizable with your company details.
- Automated Reminders: Never forget a due date! PayTrack notifies you when payments are due or overdue based on your contract cycles.
- Multi-Currency Support: Work with clients globally. Track payments in original currencies while viewing totals in your local currency with real-time conversion.
- Expense Tracking: Keep tabs on business expenses to see your true profit.
- Data Freedom: Full import and export functionality (CSV) to backup your data or analyze it in spreadsheets.
- Privacy First: All data is stored locally on your device. No cloud servers, no subscriptions.
- Language: 100% Kotlin
- UI: Jetpack Compose (Material 3 Design System)
- Architecture: MVVM (Model-View-ViewModel)
- Local Storage: Room Database (SQLite) & DataStore
- Concurrency: Kotlin Coroutines & Flow
- Background Tasks: WorkManager (payment monitoring notifications)
- Dependency Injection: Manual / ViewModelFactory
- PDF Generation: Native Android
PdfDocumentAPI
| Dashboard | Client | Wallet | Transactional Logs |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
git clone https://github.com/Sadaqaty/PayTrack.git
cd PayTrack./gradlew assembleDebug- Android SDK 35
- JDK 17+
This project uses GitHub Actions for automated builds and releases.
- Push to
mastertriggers the CI/CD pipeline - The app is built with release signing
- A signed APK is generated and attached to a GitHub Release
- Version in
version.propertiesis auto-incremented for the next build
The app version is managed in version.properties at the project root:
VERSION_CODE=1
VERSION_NAME=1.0.0The CI workflow auto-increments both values after each release.
app/
src/main/java/com/fixare/studio/paytrack/
data/ # Room database, DAOs, entities, repository
ui/
client/ # Client management screens
dashboard/ # Dashboard screen
log/ # Transaction logs screen
settings/ # Settings screen
wallet/ # Wallet/expense screen
welcome/ # Onboarding screen
components/ # Reusable UI components
theme/ # Material 3 theme
utils/ # CSV export, PDF generation
worker/ # Background workers (notifications, currency sync)
Contributions are welcome! Feel free to open an issue or submit a pull request.
This project is available under the MIT License.
Built by Fixare Studio



