- Language: Python 3
- Backend Framework: Django
- API Framework: Django REST Framework
- API Auth: djangorestframework-api-key
- Database: MySQL, SQLite3
- Containerization: Docker & Docker Compose
- CI/CD: GitHub Actions
- OS Tested On: Linux (Ubuntu recommended)
Nexpenz API is a simple, fast, and secure backend API for a personal finance tracking mobile application.
It powers the Nexpenz Android app, enabling users to track income, expenses, and view financial summaries — without signup or ads.
- ✅ Add income & expenses instantly
- 📈 Monthly summaries & category-based analytics
- 🧾 Full transaction history
- 🌍 Multi-currency support
- 🔐 API key authentication (no login/signup)
- 🧡 100% free — no ads, no tracking
- 🐳 Docker-ready
- 🧪 CI-tested on Linux
| OS | Status |
|---|---|
| Linux | ✅ Fully supported & recommended |
| macOS | ✅ Supported |
| Windows |
Tested on Linux (Ubuntu). Linux is recommended for production.
This API uses API Key authentication:
- Log in to Django Admin
- Navigate to API Keys
- Create a key
- Copy it once (shown only once)
Or go to Nexpenz API Signup to generate a key.
GET /api/transactions/
Header: X-API-KEY: your_api_key_here
http://localhost:8000/download_nexpenz
git clone https://github.com/nexapytech/Expense-Tracker-app
cd Expense-Tracker-app
To make your repo easy to run and test, we provide a Makefile:
make run
make test
docker build -t nexpenz .
docker run -p 8000:8000 nexpenz