This project is a user authentication system with registration and login, built with Node.js, Express and JSON Web Tokens on the backend, with a frontend integrated through the Fetch API. Users can create accounts and securely access the application using tokens generated and validated during the authentication process.
Main features:
Registration and Login:
Users can create an account and sign in using their email and password.
JWT Authentication:
After login, a JWT is generated and used to authenticate and secure future requests.
Credential Validation:
The backend validates user data and returns appropriate responses for successful and failed requests.
Frontend and Backend Integration:
The separately hosted frontend communicates with the API through HTTP requests using the Fetch API.
Production Environment:
The API routes and URLs were configured to work correctly in production, including nested endpoints such as /auth/register and /auth/login.
This project gave me practical experience with JWT authentication, REST APIs, frontend and backend integration, asynchronous JavaScript, error handling and deploying applications across different environments.