Skip to content

CodeBuilders-BCA/codebuilders

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🚀 CodeBuilders - Event Management Platform

A robust, full-stack MERN application designed to streamline technical event management. This platform facilitates seamless event registration, automated certificate generation, speaker management, and provides specialized dashboards for Admins and Volunteers.

Project Preview


✨ Features

🌍 Public User Features

  • Browse Events: Explore upcoming and past events with search and filtering capabilities (by date, venue, or name).
  • Easy Registration: One-click registration for authenticated users.
  • Digital Tickets: Users receive digital tickets via email and can view them in their profile.
  • Responsive UI: Fully optimized interface for mobile, tablet, and desktop devices.
  • Memories Gallery: A visual gallery showcasing highlights from past community events.

🛡️ Admin Dashboard

  • Event Control: Create, update, and delete events with rich text descriptions and image uploads.
  • Certificate Designer: A drag-and-drop tool to customize certificate layouts (positioning text, names, and QR codes).
  • Bulk Actions: Generate and email certificates to all attendees in a single click.
  • Volunteer Management: onboard and manage volunteer roles and permissions.
  • Analytics: Real-time overview of registrations and user engagement.

🎫 Certificate System

  • Automated Generation: Server-side PDF generation using pdf-lib.
  • Dynamic Customization: Admins can adjust font sizes, families, and coordinates for printing names on certificates.
  • Email Integration: Automatically emails the PDF certificate to attendees upon event completion.

🛠️ Tech Stack

Frontend (Client)

  • Framework: React.js (Vite)
  • Language: JavaScript (ES6+)
  • Styling: Tailwind CSS, Shadcn UI
  • State Management: TanStack Query (React Query)
  • Routing: React Router DOM v6
  • Forms: React Hook Form
  • HTTP Client: Axios

Backend (Server)

  • Runtime: Node.js
  • Framework: Express.js
  • Database: MongoDB (Mongoose ODM)
  • Authentication: JWT (JSON Web Tokens)
  • PDF Processing: PDF-Lib
  • Image Handling: Multer
  • Email Service: Nodemailer

⚙️ Installation & Setup Guide

Follow these steps to set up the project locally.

1. Prerequisites

Ensure you have the following installed on your machine:

2. Clone the Repository

git clone [https://github.com/your-username/codebuilders.git](https://github.com/your-username/codebuilders.git)
cd codebuilders

# 🛠️ CodeBuilders Backend API

The server-side application for the CodeBuilders Platform. Built with Node.js, Express, and MongoDB, it handles event management, user authentication, PDF certificate generation, and email notifications.

## 📂 Project Structure

```bash
server/
├── controllers/    # Business logic for each route
├── middleware/     # Auth checks & file upload handling
├── models/         # Mongoose Database Schemas
├── routes/         # API Endpoint definitions
├── utils/          # Helpers (PDF Generator, Emailer)
├── uploads/        # Local storage for event images/certificates
└── index.js        # Entry point

cd server
npm install

# Server Configuration
PORT=5000
NODE_ENV=development

# Database Connection
MONGO_URI=mongodb://localhost:27017/codebuilders
# Or use MongoDB Atlas URI: mongodb+srv://<user>:<password>@cluster.mongodb.net/codebuilders

# Security
JWT_SECRET=your_super_complex_secret_key_123

# Frontend URL (For CORS & Links)
FRONTEND_URL=http://localhost:5173

# Email Service (Nodemailer)
# Note: For Gmail, use an App Password, not your login password.
EMAIL_USER=your_email@gmail.com
EMAIL_PASS=your_gmail_app_password

# Development Mode (with Nodemon for auto-restart)
npm run dev

# Production Mode
npm start

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors