Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Blackterz2/Proyecto_5to_Semestre/llms.txt

Use this file to discover all available pages before exploring further.

Blackterz is a full-stack web application for fitness enthusiasts and gym-goers who want to manage their workout routines, record training sessions in real time, and visualize strength progress over time. The backend is a REST API built with Node.js and Express, backed by MySQL, and the frontend is a dark-mode Vanilla JS single-page app served statically from the same server.

Quickstart

Clone the repo, configure your database, and have the server running in minutes.

Configuration

All environment variables — database, JWT secret, mailer, and AscendAPI key.

API Reference

Full reference for every REST endpoint: auth, routines, sessions, exercises, users, and stats.

Architecture

MVC structure, MySQL schema, security layers, and request lifecycle.

Core Features

Authentication

JWT tokens, bcrypt password hashing, and email-based password recovery.

Workout Routines

Create and manage up to 4 personalized routines with ordered exercises.

Training Sessions

Log every set with weight and reps, auto-save drafts, and rest timers.

Exercise Catalog

64 exercises with images and looping MP4 videos via AscendAPI.

Progress Tracking

Weekly volume charts with Chart.js and personal records per exercise.

User Profile

Avatar upload, biometric data, and onboarding flow for new users.

Get Running in 4 Steps

1

Clone and install

git clone https://github.com/Blackterz2/Proyecto_5to_Semestre.git
cd Proyecto_5to_Semestre
npm install
2

Set up the database

Create a MySQL database and run the seed and migration files from the docs/ folder. See the Quickstart for the exact order.
3

Configure environment variables

Copy .env.example to .env and fill in your database credentials, JWT secret, SMTP settings, and AscendAPI key. Full reference at Configuration.
4

Start the server

npm start
The API and frontend are both served at http://localhost:3000.
The AscendAPI integration (exercise videos) requires a free RapidAPI subscription to the EDB with Videos and Images by AscendAPI product. The free tier includes 2,000 requests/month — sufficient for the full 64-exercise catalog.

Build docs developers (and LLMs) love