A comprehensive university club management system with resource booking, volunteer tracking, badge gamification, equipment bidding, and advanced analytics.
- Resource booking system with conflict detection
- Volunteer tracking with verification
- Badge gamification system (20 badges across 5 tiers)
- Equipment bidding with club currency
- Analytics and reporting
- Club leaderboards
- Modern black and white UI
- PHP 7.4 or higher
- MySQL 5.7 or higher
- Web server (Apache/Nginx) or PHP built-in server
- Clone the repository
git clone https://github.com/perashanid/club-collab.git
cd club-collab- Import the database
mysql -u root -p < database/complete_setup.sql-
Configure database connection Edit
backend/db_connect.phpwith your MySQL credentials. -
Start the server
php -S localhost:8000- Open your browser
http://localhost:8000/index.html
- Student:
student@example.edu/student123 - Admin:
admin@example.edu/admin123
club-collab/
├── backend/ # PHP backend APIs
│ ├── analytics.php
│ ├── badges_api.php
│ ├── bidding_api.php
│ ├── bookings_api.php
│ ├── volunteers_api.php
│ └── db_connect.php
├── database/ # SQL files
│ ├── complete_setup.sql
│ ├── tables.sql
│ ├── database_triggers.sql
│ ├── database_views.sql
│ └── seed.sql
├── css/ # Stylesheets
├── js/ # JavaScript files
├── docs/ # Documentation
├── index.html # Main dashboard
├── login.html # Login page
└── signup.html # Signup page
- Book equipment with specific time slots
- Automatic conflict detection
- Real-time availability checking
- Booking history tracking
- Log volunteer hours with role tracking
- Executive verification system
- Cross-club volunteering support
- Automatic badge awarding
- 5 tiers: Bronze, Silver, Gold, Platinum, Diamond
- 20 badges total (15 standard + 5 special)
- Automatic awarding based on hours
- Leaderboard with rankings
- Clubs earn currency through volunteer work
- Bid on equipment from other clubs
- Real-time auction system
- Currency leaderboard
- Equipment utilization reports
- Club collaboration analysis
- Event success metrics
- Student engagement tracking
- Booking pattern analysis
- 15 tables with proper relationships
- 8 triggers for automation
- 11 views for reporting
- 6 stored procedures for analytics
- 1 scheduled event for status updates
- Equipment utilization
- Club collaboration
- Event success metrics
- Student engagement
- Booking patterns
- Get all badges
- Student badge progress
- Leaderboard
- Badge statistics
- Active auctions
- Place bids
- Create auctions
- Currency leaderboard
- Create/update/cancel bookings
- Check availability
- Conflict detection
- Booking history
- Log volunteer hours
- Verify hours
- Student summaries
- Volunteer portfolio
- Frontend: HTML, CSS, JavaScript
- Backend: PHP
- Database: MySQL/MariaDB
- UI: Modern black and white theme
- Prepared statements for SQL injection prevention
- Input validation
- Password hashing
- Foreign key constraints
- Check constraints
The database includes sample data:
- 3 clubs
- 7 students
- 5 equipment items
- 3 events
- 20 badges
- Sample bookings and volunteer logs
- Verify MySQL is running
- Check credentials in
backend/db_connect.php
- Run
database/complete_setup.sql
SET GLOBAL event_scheduler = ON;php -S localhost:8080See the docs/ folder for detailed documentation:
- Database schema diagrams
- API documentation
- Feature guides
This project is provided as-is for educational and organizational use.