How danilopedrazzi/projetoindividual works
Celeste is a fan site for submitting and comparing Celeste speedruns. The principal workflow is: a player uses the web pages, authenticates or registers, submits a categorized run, and receives leaderboard or dashboard data. The backend routes requests through controllers into domain models and MySQL. The sampled code directly confirms authentication, profile operations, run listing/submission, and dashboard orchestration; some frontend calls and unsampled route/controller wiring are represented conservatively from documented capabilities and repository structure.
Main entry points: app.js Express Server · config.js MySQL Adapter · index.html Site Pages · login.html Auth Profile
Components 19
Web Experience
- Site Pages
FrontEnd/index.html - Auth Profile
FrontEnd/login.html - Run Submission
FrontEnd/cadastroSpeedrun.html - Leaderboard
FrontEnd/leaderboard.html - Progress Dashboard
FrontEnd/dashboard.html
HTTP API
- Express Server
app.js - Root Routes
BackEnd/routes/index.js - User Routes
BackEnd/routes/usuarios.js - Speedrun Routes
BackEnd/routes/speedruns.js - Dashboard Routes
BackEnd/routes/dashboard.js
Domain Operations
- User Controller
BackEnd/controllers/usuarioController.js - Speedrun Controller
BackEnd/controllers/speedrunController.js - Dashboard Controller
BackEnd/controllers/dashboardController.js - User Model
BackEnd/models/usuarioModel.js - Speedrun Model
BackEnd/models/speedrunModel.js - Dashboard Model
BackEnd/models/dashboardModel.js
Data Persistence
- MySQL Adapter
BackEnd/database/config.js - MySQL Database
DataBase/Tables.sql
Other components
- Speedrunner
Connections 21
- Speedrunner → Site Pages: visits
- Speedrunner → Auth Profile: authenticates
- Speedrunner → Run Submission: submits runs
- Speedrunner → Leaderboard: compares times
- Speedrunner → Progress Dashboard: tracks progress
- Site Pages → Express Server: loads pages
- Auth Profile → Express Server: sends credentials
- Run Submission → Express Server: sends run
- Leaderboard → Express Server: requests runs
- Progress Dashboard → Express Server: requests metrics
- Express Server → Root Routes: mounts root
- Express Server → User Routes: mounts users
- Express Server → Speedrun Routes: mounts speedruns
- Express Server → Dashboard Routes: mounts dashboard
- User Routes → User Controller: dispatches users
- User Controller → User Model: calls queries
- Speedrun Controller → Speedrun Model: calls queries
- Dashboard Controller → Dashboard Model: calls metrics
- User Model → MySQL Adapter: executes SQL
- Speedrun Model → MySQL Adapter: executes SQL
- MySQL Adapter → MySQL Database: reads writes