Skip to content

CareerQuest is an innovative, AI-driven web application that helps students navigate career choices by analyzing their skills, interests, and personality traits. Leveraging machine learning algorithms, interactive tools, and personalized recommendation.

License

Notifications You must be signed in to change notification settings

Theory903/CarrerQuest

Repository files navigation

CareerQuest πŸš€

AI-powered career guidance platform helping students discover their ideal career paths with personalized recommendations, expert mentorship, and visual analytics.

πŸ—οΈ Architecture

  • Frontend: Next.js 14 (React 18) with TypeScript
  • Backend: Node.js/Express with RESTful API
  • AI: Groq (Llama 4) for career guidance
  • Styling: Tailwind CSS with custom design system
  • State Management: React Context API

πŸš€ Quick Start

Prerequisites

  • Node.js 20+
  • npm or yarn
  • (Optional) Docker & Docker Compose

Development Setup

  1. Clone the repository
git clone <repository-url>
cd CarrerQuest
  1. Backend Setup
cd Webapp/server
npm install
cp .env.example .env
# Edit .env with your API keys
npm run dev
  1. Frontend Setup
cd Webapp
npm install
cp .env.example .env.local
# Edit .env.local with backend URL
npm run dev
  1. Access the application

🐳 Docker Deployment

Using Docker Compose (Recommended)

# Create .env file in root directory
cp Webapp/server/.env.example .env

# Edit .env with your production values
# Then run:
docker-compose up -d

Individual Containers

Backend:

cd Webapp/server
docker build -t careerquest-backend .
docker run -p 5001:5001 --env-file .env careerquest-backend

Frontend:

cd Webapp
docker build -t careerquest-frontend .
docker run -p 3000:3000 -e NEXT_PUBLIC_BACKEND_URL=http://localhost:5001 careerquest-frontend

πŸ“¦ Production Build

Frontend

cd Webapp
npm run build
npm start

Backend

cd Webapp/server
NODE_ENV=production npm start

🌐 Deployment

Vercel (Frontend)

  1. Push code to GitHub
  2. Import project in Vercel
  3. Set environment variables:
    • NEXT_PUBLIC_BACKEND_URL
  4. Deploy

Railway/Render (Backend)

  1. Connect GitHub repository
  2. Set build command: cd Webapp/server && npm install
  3. Set start command: cd Webapp/server && npm start
  4. Add environment variables from .env.example
  5. Deploy

πŸ” Environment Variables

Frontend (.env.local)

NEXT_PUBLIC_BACKEND_URL=http://localhost:5001

Backend (.env)

PORT=5001
NODE_ENV=production
GROQ_API_KEY=your_groq_api_key
JWT_SECRET=your_secret_key
FRONTEND_URL=https://yourdomain.com

πŸ“ Project Structure

CarrerQuest/
β”œβ”€β”€ Webapp/
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ app/          # Next.js app router pages
β”‚   β”‚   β”œβ”€β”€ components/   # React components
β”‚   β”‚   β”œβ”€β”€ contexts/     # React contexts (Auth, etc.)
β”‚   β”‚   └── lib/          # Utilities
β”‚   β”œβ”€β”€ server/
β”‚   β”‚   β”œβ”€β”€ controllers/  # Route controllers
β”‚   β”‚   β”œβ”€β”€ routes/       # API routes
β”‚   β”‚   β”œβ”€β”€ middleware/   # Auth, validation, etc.
β”‚   β”‚   └── db/           # JSON database files
β”‚   └── public/           # Static assets
β”œβ”€β”€ ML/                   # Machine learning models
└── Docs/                 # Documentation

πŸ§ͺ Testing

# Frontend
cd Webapp
npm run lint

# Backend
cd Webapp/server
npm test  # (when tests are added)

πŸ”’ Security Features

  • JWT authentication with refresh tokens
  • Rate limiting on API endpoints
  • CORS protection
  • Helmet.js security headers
  • Password hashing with bcrypt
  • Input validation and sanitization
  • Error boundary handling

πŸ“ API Documentation

See Docs/API.md for detailed API documentation.

🀝 Contributing

See CONTRIBUTING.md for contribution guidelines.

πŸ“„ License

Apache-2.0 License

πŸ‘₯ Team

FeedMind Team - Smart India Hackathon 2024


Built with ❀️ for students navigating their career journey

About

CareerQuest is an innovative, AI-driven web application that helps students navigate career choices by analyzing their skills, interests, and personality traits. Leveraging machine learning algorithms, interactive tools, and personalized recommendation.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published