AI-Powered Consultancy Discovery Platform
ConsultBridge is a modern, enterprise-grade platform that connects users with verified consultants across multiple industries. Built with Next.js 14, featuring an intelligent AI chatbot, real-time booking management, and comprehensive user experience optimization.
- π€ AI-Powered Chatbot - Intelligent consultant matching with Gemini 2.5 Flash
- π Smart Booking System - Real-time appointment scheduling with conflict detection
- π Multi-Role Authentication - Secure user, consultant, and admin portals
- π¨ Modern UI/UX - Responsive design with dark/light mode support
- β‘ Performance Optimized - Fast loading with advanced caching strategies
- π± Mobile-First - Optimized for all devices and screen sizes
- π Advanced Search - Category-based filtering and intelligent recommendations
- β Review System - Authentic feedback and rating system
- Node.js 18.17.0 or higher
- npm 9 or higher
- MongoDB Atlas account
- Clerk account for authentication
- Google AI API key for chatbot
-
Clone the repository
git clone https://github.com/AnshTank/ConsultBridge.git cd ConsultBridge -
Install dependencies
npm install
-
Environment Setup
cp .env.example .env.local
Configure your environment variables:
MONGODB_URI=your_mongodb_connection_string NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key CLERK_SECRET_KEY=your_clerk_secret_key GEMINI_API_KEY=your_google_ai_api_key
-
Run the development server
npm run dev
-
Open your browser Navigate to http://localhost:3000
| Layer | Technology | Purpose |
|---|---|---|
| Frontend | Next.js 14, React 18, TypeScript | Modern web application framework |
| Styling | Tailwind CSS, Framer Motion | Responsive design and animations |
| Backend | Next.js API Routes, Node.js | Serverless API endpoints |
| Database | MongoDB Atlas, Mongoose | Document-based data storage |
| Authentication | Clerk | User management and security |
| AI/ML | Google Gemini 2.5 Flash | Conversational AI and NLP |
| Deployment | Vercel | Serverless hosting platform |
src/
βββ app/ # Next.js App Router
β βββ api/ # API endpoints
β βββ (auth)/ # Authentication pages
β βββ (dashboard)/ # Dashboard pages
βββ components/ # Reusable UI components
βββ services/ # Business logic services
βββ models/ # Database schemas
βββ lib/ # Utility libraries
βββ styles/ # Global styles
- Consultancies - Verified consultant profiles and services
- Appointments - Booking and scheduling data
- Categories - Service categories and classifications
- Reviews - User feedback and ratings
- Chat Sessions - AI chatbot conversation history
POST /api/auth/sign-up- User registrationPOST /api/auth/sign-in- User login
GET /api/consultancies- List consultanciesGET /api/consultancies/[id]- Get consultancy detailsPOST /api/consultancies- Create consultancy
GET /api/appointments- Get appointmentsPOST /api/appointments- Book appointmentPUT /api/appointments/[id]- Update appointment
POST /api/chatbot- Process chat messageGET /api/chat-history- Get conversation history
- Intent Recognition - Natural language understanding
- Context Awareness - Maintains conversation memory
- Smart Recommendations - AI-powered consultant matching
- Booking Automation - End-to-end appointment scheduling
- Multi-language Support - Handles various communication styles
- Authentication - Clerk-based secure user management
- Authorization - Role-based access control (RBAC)
- Data Protection - Input sanitization and validation
- Rate Limiting - API endpoint protection
- HTTPS/TLS - Encrypted data transmission
- Core Web Vitals - Optimized for Google's performance metrics
- Lazy Loading - Component and image optimization
- Caching - Multi-layer caching strategy
- Code Splitting - Optimized bundle sizes
- Mobile Optimization - Device-aware performance tuning
- Connect your repository to Vercel
- Configure environment variables in Vercel dashboard
- Deploy - Automatic deployments on push to main
npm run build
npm run start| Command | Description |
|---|---|
npm run dev |
Start development server |
npm run build |
Build for production |
npm run start |
Start production server |
npm run lint |
Run ESLint |
npm run format |
Format code with Prettier |
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE.md file for details.
- Next.js Team - For the amazing React framework
- Vercel - For seamless deployment platform
- Clerk - For robust authentication solution
- Google AI - For powerful Gemini API
- MongoDB - For flexible database solution
- GitHub Issues - Report bugs or request features
- Developer - Ansh Tank
- LinkedIn - @anshtank9
ConsultBridge - Bridging You to the Right Consultancy with Confidence
Made with β€οΈ by Ansh Tank