Epytodo is a full-stack web application designed to manage tasks through a robust REST API. Developed as a core project at Epitech, it focuses on backend architecture, secure user authentication, and relational database management.
- User Authentication: Secure registration (
/register) and login (/login) powered by JWT (JSON Web Tokens) and password hashing. - Task Management (CRUD): Complete system to create, view, update, and delete tasks with titles, descriptions, due dates, and statuses.
- Relational Database: Tasks and users are linked seamlessly through a structured SQL database.
- Backend: Typescript
- Database: MySQL
- Security: JWT, bcrypt
Ensure you have the following installed:
- Typescript
- MySQL / PostgreSQL server
git clone git@github.com:tomfosse/Epytodo.git
cd epytodoThis project requires an environment file to manage database connections and security tokens.
- Create a
.envfile in the root directory of the project. - Copy and paste the following configuration:
# Server Configuration
PORT=3000
# Database Configuration
DB_HOST=localhost
DB_USER=your_db_user
DB_PASSWORD=your_db_password
DB_NAME=epytodo
# Security
JWT_SECRET=your_super_secret_key