Expense Tracker - Verified Access. Reliable Tracking.

Track Every Coin: A Minimal, Powerful Expense Tracker API

Project preview

Overview

The Expense Tracker API is a minimalist RESTful API built with Django and Django REST Framework to help users log, categorize, and monitor their spending habits. Deployed to production using Render and Supabase PostgreSQL — fully cloud-native and ready for frontend consumption. It supports secure user authentication (via JWT and email-based authentication), expense categorization, filtering by date or category, easy integration with web, mobile or desktop frontends and a modern admin dashboard with [django-jazzmin] for managing users and expenses. This API demonstrates practical backend skills like token-based authentication, model relationships, custom views, and clean REST architecture. 🔐 Security-first Design: Users must verify their email before they can log in and use the app — enforcing account integrity from the start. ⚡ Deployed and production-ready, this project demonstrates API design, auth workflows, documentation practices, and cloud deployment.

Features

  • Email-based registration with mandatory verification
  • JWT authentication (access + refresh tokens)
  • Protected user-specific data access
  • Fully documented with Swagger UI and Redoc
  • Provides both a dynamic OpenAPI schema endpoint and a static YAML schema file
  • Full CRUD for expense records
  • **Modern admin dashboard** with [django-jazzmin]
  • Categories for expenses
  • Filter expenses by date or category

Tech Stack

  • Django & Django REST Framework
  • [django-jazzmin] for customizing django admin interface
  • SimpleJWT + dj-rest-auth + allauth
  • Supabase PostgreSQL (cloud database)
  • Render (Paas) for deployment
  • drf-spectacular for schema and API docs
  • Designed for frontend consumption (desktop/web/mobile)