A web application for creating and joining groups with roll number validation. This platform allows users to form groups of up to 10 members, with features for group creation, joining applications, and roll number validation.
The CEP Grouper application is now live at:
https://cep-grouper.vercel.app
Share the DEPLOYED-APP-GUIDE.md with your friends to help them get started using the application.
- User Authentication: Sign up and sign in with roll number verification
- Roll Number Validation: Six different classes with specific roll number ranges
- Group Management: Create groups, apply to join groups, and manage memberships
- Application Process: Submit and respond to group join requests with optional notes
- Application History: View all past applications with status indicators
- Responsive Design: Works well on mobile and desktop devices
We've provided several options for hosting this application for your friends to use:
- Railway (Recommended for beginners): See RAILWAY-DEPLOYMENT.md
- Vercel: See VERCEL-DEPLOYMENT.md and VERCEL-DEPLOYMENT-FIX.md for troubleshooting
- Recent fixes: GROUP-MEMBER-FIX.md and GROUP-APPLICATION-FIX.md
- Other Options: See HOSTING-OPTIONS.md for more deployment options
Once deployed, share the QUICK-START.md guide with your friends to help them get started with using the application.
- Push your code to GitHub
- Set up a PostgreSQL database
- Deploy to Railway or Vercel following our step-by-step guides
- Run migrations and seed the database
- Share the application URL with your friends
First, set up the database and seed the initial data:
# Generate Prisma client and create initial migration
npx prisma migrate dev --name init
# Seed the database with class roll number ranges
npx prisma db seedThen, run the development server:
npm run devOpen http://localhost:3000 with your browser to see the application.
- Frontend: Next.js 15, React 19, Tailwind CSS
- Backend: Next.js API Routes
- Database: SQLite with Prisma ORM
- Authentication: NextAuth.js
- Form Handling: React Forms
- UI Components: Custom components with Tailwind CSS
- Modal Dialogs: React Modal
- Users sign up with their roll number, name, and password
- Roll number is validated against predefined class ranges
- Users sign in with roll number and password
- Users can create a group, becoming the group admin
- Users can browse available groups (with < 10 members)
- Users can apply to join a group with optional notes
- Group admins can approve/deny applications with feedback
- Users can leave groups (if admin leaves, admin status transfers or group deletes)
The system validates roll numbers against six predefined class ranges:
- Class A: 10705 to 10767
- Class B: 10801 to 10863
- Class C: 10901 to 10963
- Class D: 11001 to 11063
- Class E: 11101 to 11163
- Class F: 11201 to 11263
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.