Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

gitApurv/Event-Registration-System-API

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Event Registration System API

A robust backend API for a full-featured event registration platform. This system allows administrators to manage events and enables users to register for them, with secure authentication and role-based access control.

Features ✨

  • User Authentication: Secure user registration and login system using JSON Web Tokens (JWT).
  • Password Hashing: Passwords are encrypted using bcrypt.js before being stored.
  • Role-Based Access Control: Differentiates between regular users and admins to protect sensitive routes.
  • Event Management (Admin): Admins have full CRUD (Create, Read, Update, Delete) capabilities for events.
  • Event Discovery (Public): Anyone can view a list of all available events and see the details for a specific event.
  • User Registration: Authenticated users can register for events and cancel their registrations.
  • Personalized Dashboard: Users can view a list of all events they have registered for.
  • Scalable Architecture: Organized into a clean structure of models, views, and controllers for easy maintenance.

Tech Stack 💻

  • Backend: Node.js, Express.js
  • Database: MongoDB with Mongoose ODM
  • Authentication: JSON Web Tokens (JWT)
  • Password Hashing: bcrypt.js
  • Environment Variables: Dotenv

API Endpoints 📍

The base URL for all endpoints is /api. All Private and Admin routes require a Bearer Token in the Authorization header.

Authentication Routes

HTTP Method Endpoint Access Description
POST /users/register Public Register a new user.
POST /users/login Public Log in a user to get a token.

Event Routes

HTTP Method Endpoint Access Description
GET /events Public Get a list of all events.
POST /events Private/Admin Create a new event.
GET /events/:id Public Get details of a single event.
PUT /events/:id Private/Admin Update an existing event.
DELETE /events/:id Private/Admin Delete an event.

Registration Routes

HTTP Method Endpoint Access Description
POST /registrations/events/:eventId/register Private Register the logged-in user for an event.
GET /registrations/my Private Get all registrations for the logged-in user.
DELETE /registrations/:id Private Cancel a specific registration by its ID.

About

A robust backend API for a full-featured event registration platform.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Morty Proxy This is a proxified and sanitized view of the page, visit original site.