Lumen Coin
Academic gamification platform where professors reward students with virtual coins that can be exchanged for perks from partner companies.
About the Project
Lumen Coin is an academic gamification platform I developed with Eduarda Vieira and Vitor Azevedo in the Software Development Lab course, in the 4th semester of Software Engineering at PUC Minas. Professors recognize students' performance and engagement with virtual coins, which can later be exchanged for perks offered by partner companies.
The application follows a modular monolith architecture: the Spring Boot back end is organized in layers, with Spring Data JPA, PostgreSQL, and DTOs, and the Vue.js front end follows a feature-based architecture. Notifications are processed asynchronously with RabbitMQ, and the environment is containerized with Docker.
Key features:
- Authentication with Spring Security and JWT for students, professors, institutions, and companies
- Sending and receiving coins, with balance, statement, and transaction history
- Perk redemption with coupons and QR codes, validated by the partner company
- Email and WhatsApp notifications about transactions and redemptions
- Management of institutions, courses, professors, and partner companies
- An interface with a retro visual identity inspired by platform games
An academic project that exercised real business rules, software engineering best practices, and full stack development.