Abstract:
This thesis introduces a full-featured e-commerce application with an in-house built authentication and role-based access control (RBAC) system. The system is designed to work with the shortcomings of native Django authentication to solve a JWT-based solution that embedes role_id and permissions directly into the token payload hence, abandoning database checks for permission indices altogether which increases performance massively. The system is based on a modular monolith architecture and built with Django REST Framework - Backend, React/Typescript - Frontend, PostgreSQL - Database and containerized with Docker for reliable deployment.