Connecting talent with opportunity through a seamless, modern job board experience
- Job Listings: Browse and search through comprehensive job postings
- Company Profiles: Detailed company information and job opportunities
- Application System: Seamless job application process with real-time tracking
- User Authentication: Secure authentication powered by Clerk
- Responsive Design: Optimized for all devices and screen sizes
- Modern UI/UX: Clean, intuitive interface with beautiful animations
- Loading Screens: Professional loading experience with branded animations
- Real-time Updates: Instant feedback and live data synchronization
- Search & Filter: Advanced job search with multiple filtering options
- Mobile-First: Optimized mobile experience with touch-friendly interactions
- Serverless Architecture: Built on Supabase for scalability and performance
- Type Safety: Full TypeScript implementation for robust development
- Modern Stack: Next.js 15 with App Router and Turbopack
- Performance Optimized: Fast loading times and smooth interactions
- SEO Ready: Optimized for search engines and social sharing
- Image Optimization: WebP/AVIF formats with automatic compression
- Bundle Splitting: Intelligent code splitting for faster loads
- Lazy Loading: Dynamic imports for heavy components
- Preconnect Hints: Early connections to third-party domains
- CSS Optimization: Performance-focused styling with containment
- Core Web Vitals: Optimized for 90+ Lighthouse scores
- Full-Stack Development: Complete application from database to UI
- Modern Architecture: Serverless, scalable, and maintainable
- Production Ready: Deployed and optimized for real-world use
- Performance Focused: 90+ Lighthouse scores across all metrics
- Developer Experience: Clean code, proper documentation, and best practices
- Database Migration: Successfully migrated from Fastify to Supabase
- Authentication Integration: Seamless Clerk integration with protected routes
- Real-time Features: Implemented live updates without page refreshes
- Performance Optimization: Achieved sub-2s loading times with 98.7% image size reduction
- Mobile Responsiveness: Perfect experience across all devices
- Bundle Optimization: Reduced JavaScript execution time by 30%
- Next.js 15.3.3 - React framework with App Router and Turbopack
- TypeScript 5.0 - Type-safe development with strict configuration
- Tailwind CSS 3.0 - Utility-first CSS framework with performance optimizations
- Google Fonts - Inter, Poppins, JetBrains Mono with optimized loading
- Radix UI - Accessible component primitives with tree-shaking
- Supabase - Serverless backend and PostgreSQL database
- Prisma - Type-safe database client with migrations
- Real-time Subscriptions - Live data updates with WebSocket connections
- Clerk - Modern authentication and user management
- JWT Tokens - Secure session management
- Protected Routes - Role-based access control
- Security Headers - XSS protection, content type options, frame options
- Vercel - Serverless deployment platform with Edge Network
- Environment Variables - Secure configuration management
- CDN - Global content delivery network with caching
- Compression - Gzip/Brotli compression for faster loads
- Lighthouse CI - Automated performance testing
- Core Web Vitals - FCP < 1.5s, LCP < 2.5s, TBT < 200ms
- Bundle Analysis - Webpack bundle splitting and optimization
- Image Optimization - WebP/AVIF with responsive sizing
- Node.js 18+
- npm or yarn
- Supabase account
- Clerk account
-
Clone the repository
git clone https://github.com/Hsinha11/HireForge.git cd hireforge -
Install dependencies
npm install
-
Environment Setup
cp .env.example .env.local
Configure your environment variables:
# Supabase NEXT_PUBLIC_SUPABASE_URL=your_supabase_url NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key # Clerk NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key CLERK_SECRET_KEY=your_clerk_secret_key
-
Database Setup
# Run database migrations npx prisma db push # Seed the database npm run seed
-
Start Development Server
npm run dev
-
Open your browser
http://localhost:3000
hireforge/
โโโ src/
โ โโโ app/ # Next.js App Router
โ โ โโโ (auth)/ # Authentication pages
โ โ โโโ dashboard/ # User dashboard
โ โ โโโ jobs/ # Job listings and details
โ โ โโโ companies/ # Company profiles
โ โ โโโ applications/ # Job applications
โ โโโ components/ # Reusable UI components
โ โ โโโ ui/ # Base UI components
โ โ โโโ job/ # Job-related components
โ โ โโโ company/ # Company-related components
โ โ โโโ RoleButtons.tsx # Lazy-loaded component
โ โโโ lib/ # Utility functions and configs
โ โโโ middleware.ts # Next.js middleware
โโโ public/ # Static assets (optimized images)
โโโ prisma/ # Database schema and migrations
โโโ scripts/ # Database seeding and utilities
- Advanced Search: Filter by location, salary, experience level, and more
- Real-time Updates: Live job posting updates without page refresh
- Application Tracking: Monitor application status and responses
- Company Integration: Seamless connection between jobs and companies
- Progressive Loading: Smooth loading states and skeleton screens
- Responsive Design: Optimized for desktop, tablet, and mobile
- Accessibility: WCAG compliant with keyboard navigation support
- Performance: Optimized images, lazy loading, and code splitting
- Type Safety: Full TypeScript coverage with strict configuration
- Code Quality: ESLint and Prettier for consistent code style
- Testing Ready: Jest and React Testing Library setup
- Documentation: Comprehensive inline documentation and comments
- Image Compression: 98.7% size reduction (1MB โ 13KB WebP)
- Bundle Splitting: Separate chunks for Clerk, Supabase, and vendors
- Lazy Loading: Dynamic imports for non-critical components
- Preconnect Hints: Early DNS resolution for third-party domains
- CSS Containment: Layout and paint containment for better rendering
- Security Headers: XSS protection, content type options, caching
# Database
DATABASE_URL="postgresql://..."
# Authentication
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY="pk_..."
CLERK_SECRET_KEY="sk_..."
# Supabase
NEXT_PUBLIC_SUPABASE_URL="https://..."
NEXT_PUBLIC_SUPABASE_ANON_KEY="eyJ..."
# Deployment
NEXT_PUBLIC_APP_URL="https://your-domain.com"The application uses a well-structured database schema with:
- Users: Authentication and profile management
- Companies: Company information and branding
- Jobs: Job postings with detailed requirements
- Applications: Job application tracking system
// next.config.ts
const nextConfig = {
experimental: {
optimizePackageImports: ['lucide-react', '@radix-ui/*'],
turbo: { rules: { '*.svg': { loaders: ['@svgr/webpack'] } } }
},
images: { formats: ['image/webp', 'image/avif'] },
compress: true,
swcMinify: true,
webpack: (config) => {
// Bundle splitting for Clerk and Supabase
config.optimization.splitChunks = { /* ... */ }
}
}- Connect your GitHub repository to Vercel
- Configure environment variables in Vercel dashboard
- Deploy with automatic CI/CD pipeline
- Environment variables configured
- Database migrations applied
- SSL certificates enabled
- Performance monitoring setup
- Error tracking configured
- Analytics integration
- Image optimization enabled
- Bundle splitting configured
- Security headers implemented
- Lighthouse Score: 90+ across all categories
- First Contentful Paint: < 1.5s
- Largest Contentful Paint: < 2.5s
- Cumulative Layout Shift: < 0.1
- First Input Delay: < 100ms
- Total Blocking Time: < 200ms
- Image Optimization: 98.7% size reduction
- Bundle Size: 30% reduction through splitting
- โ Image Optimization: WebP/AVIF with automatic compression
- โ Bundle Splitting: Intelligent code splitting for faster loads
- โ Lazy Loading: Dynamic imports for heavy components
- โ Preconnect Hints: Early connections to third-party domains
- โ CSS Optimization: Performance-focused styling
- โ Security Headers: XSS protection and caching policies
- โ Font Optimization: Reduced font weights and display swap
- โ Code Splitting: Separate chunks for major dependencies
- Advanced job search with AI recommendations
- Resume parsing and matching
- Email notifications and alerts
- Company analytics dashboard
- CDN optimization for global users
- Advanced caching strategies
- Real-time collaboration features
- Mobile app development
- Multi-tenant architecture
- Advanced reporting and analytics
- API for third-party integrations
- White-label solutions
We welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Next.js Team - For the amazing React framework
- Supabase - For the powerful backend-as-a-service
- Clerk - For modern authentication solutions
- Tailwind CSS - For the utility-first CSS framework
- Vercel - For seamless deployment and hosting
- Website: HireForge
- Email: harianantsinha2003@gmail.com
- LinkedIn: Harianant Sinha
