A modern, interactive recruitment portal built with cutting-edge web technologies to streamline the GDG VITM recruitment process.
- Interactive 3D Elements: Built with Three.js and React Three Fiber
- Modern UI: Built with shadcn/ui and Tailwind CSS
- Supabase Backend: Secure, scalable database with real-time capabilities
- Type Safety: Full TypeScript support
- Fast Development: Powered by Vite
- Form Handling: Robust form management with React Hook Form
- State Management: Efficient state management with React Query
- Admin Dashboard: Built-in application management interface
- Frontend: React 18
- Backend: Supabase (PostgreSQL database)
- Styling: Tailwind CSS with shadcn/ui components
- 3D Rendering: Three.js, @react-three/fiber, @react-three/drei
- Form Handling: React Hook Form with Zod validation
- State Management: React Query
- Build Tool: Vite
- Type Safety: TypeScript
- Animation: Framer Motion
- Node.js 16+ (Recommended: Latest LTS version)
- npm
- git
- Supabase account (free tier available)
-
Clone the repository
git clone https://github.com/GDGVITM/GDG_Recruit_new.git cd GDG_Recruit_new -
Install dependencies
npm install
-
Set up Supabase
- Create a new project at Supabase
- Run the SQL schema from
supabase-schema.sqlin your SQL editor - Copy your project URL and anon key
-
Configure environment variables
cp .env.example .env
Update
.envwith your Supabase credentials:VITE_SUPABASE_URL=https://your-project-id.supabase.co VITE_SUPABASE_ANON_KEY=your-supabase-anon-key
-
Start the development server
npm run dev
-
Open your browser The application will be available at http://localhost:5173
- Supabase Setup Guide - Detailed setup instructions
- Migration Summary - What changed in the migration
Open browser console and use the built-in debug utilities:
// Test form submission
testSupabaseSubmission()
// View all applications
getAllApplications()
// Check if email exists
checkEmailExists("test@example.com")npm testnpm run buildThis will create a dist folder with the production build.
The application uses a PostgreSQL database with the following main table:
id- Unique UUIDname- Applicant's full nameemail- Applicant's email (unique)university- University/Institutionyear- Academic yearposition- Applied positionskills- Technical skillsexperience- Previous experiencemotivation- Motivation to join GDGcreated_at- Submission timestampupdated_at- Last update timestamp
The portal includes an optional admin dashboard (ApplicationsAdmin component) with:
- View all applications
- Search and filter capabilities
- Export to CSV
- Real-time statistics
- Responsive design
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
For any queries, please contact gdgoncampus.vit@gmail.com or open an issue in the repository.