Logo Lanfrica

steve-ongera/mpesa_system_application

Domaine:

digital infrastructure

Type de record:

software
Créateur:
ste
Hôte:
A comprehensive full-stack mobile money system built with Django REST Framework and React, featuring phone number authentication, money transfers, deposits, withdrawals, and real-time transaction management. # 💰 M-Pesa System - Full Stack Mobile Money Application A comprehensive full-stack mobile money system built with Django REST Framework and React, featuring phone number authentication, money transfers, deposits, withdrawals, and real-time transaction management. Features • Tech Stack • Installation • API Documentation • Project Structure • Screenshots --- ## 📋 Table of Contents - Overview - Features - Tech Stack - System Architecture - Detailed Project Structure - Installation - API Documentation - Database Schema - Authentication Flow - Transaction Flow - Usage Examples - Testing - Deployment - Contributing - License --- ## 🎯 Overview The M-Pesa System is a production-ready mobile money platform that replicates the core functionality of popular mobile money services. Built with modern technologies and best practices, it demonstrates mastery of: - **RESTful API Design** - Clean, versioned API architecture - **Authentication & Authorization** - JWT-based secure authentication - **Transaction Management** - ACID-compliant financial transactions - **State Management** - Efficient client-side state with Zustand - **Real-time Updates** - Live balance and notification updates - **Security** - PIN hashing, token refresh, database locking ### 🎓 Learning Objectives This project is designed to master: - Django REST Framework ViewSets and Serializers - Custom user authentication with phone numbers - Financial transaction handling with database locks - JWT authentication with token refresh - React state management and API integration - Full-stack application architecture --- ## ✨ Features ### 🔐 Authentication & Security - ✅ **Phone Number Authentication** - Login with phone number + 4-digit PIN - ✅ **JWT Tokens** - Secure token-based authentication with auto-refresh - ✅ **PIN Security** - Hashed PINs using Django's password hashers - ✅ **User Verification** - Account verification system - ✅ **Session Management** - Secure logout with token blacklisting …