Skip to content

A full-stack AI-powered Training & Placement management platform. Built with React, TypeScript, Vite, Node.js, and Express. Provides student profiles, job listings, recruiter and company management. Includes secure authentication, analytics dashboards, and REST APIs.

Notifications You must be signed in to change notification settings

HacktopiaTnp/hackto

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ TnP AI Platform – Complete Placement Management System

A full‑stack placement & training platform designed for colleges and universities to manage students, companies, recruiters, jobs, and analytics in one place.

This repository contains both backend and frontend code with clear setup instructions, APIs, and troubleshooting steps.


πŸš€ Overview

The TnP AI Platform simplifies placement operations by providing:

  • Centralized job & recruiter management
  • Student profiles similar to Haveloc-style portals
  • Real‑time analytics and dashboards
  • Secure authentication using Clerk
  • Scalable backend APIs with Express.js

🧱 Tech Stack

Frontend

  • React 18 + TypeScript
  • Vite – Fast build tool
  • Material UI (MUI) + Radix UI
  • Tailwind CSS for styling
  • Clerk – Authentication
  • Recharts – Charts & analytics

Backend

  • Node.js
  • Express.js – REST API
  • CORS enabled
  • In‑memory JSON data (easy to replace with DB later)

πŸ“ Project Structure

hackto/
β”œβ”€β”€ backend/                 # Express.js API server
β”‚   β”œβ”€β”€ server.js            # Main backend server (Port 5000)
β”‚   β”œβ”€β”€ package.json
β”‚   └── README.md
β”œβ”€β”€ frontend/                # React + TypeScript + Vite app
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   └── app/
β”‚   β”‚       β”œβ”€β”€ App.tsx
β”‚   β”‚       └── components/
β”‚   β”œβ”€β”€ .env                 # Environment variables
β”‚   β”œβ”€β”€ package.json
β”‚   └── vite.config.ts
β”œβ”€β”€ STARTUP_GUIDE.md
β”œβ”€β”€ FEATURES.md
└── README.md

⚑ Quick Start (Fix 500 Error)

IMPORTANT: You must run both backend and frontend servers.

1️⃣ Start Backend Server

cd backend
npm install
npm start

Expected output:

πŸš€ Backend server running on http://localhost:5000
πŸ“Š Jobs API available at http://localhost:5000/api/jobs/enriched
🏒 Companies API available at http://localhost:5000/api/companies
πŸ‘₯ Recruiters API available at http://localhost:5000/api/recruiters
βœ… Health check at http://localhost:5000/api/health

2️⃣ Start Frontend Server

cd frontend
npm install
npm run dev

Expected output:

VITE ready in xxxx ms
➜ Local: http://localhost:5173/

βœ… Verify Setup

  1. Backend Health Check Open: http://localhost:5000/api/health

    Expected response:

    {"status":"ok","message":"Backend server is running"}
  2. Frontend App Open: http://localhost:5173


πŸ” Environment Variables

Frontend (frontend/.env) – REQUIRED

VITE_CLERK_PUBLISHABLE_KEY=pk_test_xxxxxxxxx
CLERK_SECRET_KEY=sk_test_xxxxxxxxx
VITE_API_BASE_URL=http://localhost:5000
VITE_MOCK_INTERVIEW_URL=https://cpduel.dev

⚠️ Notes:

  • File name must be exactly .env
  • Must be inside frontend/
  • Restart frontend after changes

πŸ“‘ API Endpoints

Base URL: http://localhost:5000

Health

  • GET /api/health

Jobs

  • GET /api/jobs/enriched
  • GET /api/jobs/:id

Companies

  • GET /api/companies
  • GET /api/companies/:id

Recruiters

  • GET /api/recruiters
  • GET /api/recruiters?companyId=:id
  • GET /api/recruiters/:id

🎯 Key Features

πŸ‘¨β€πŸŽ“ Students

  • Complete profile (26+ sections)
  • Job discovery with filters
  • Application tracking
  • Document uploads
  • Company insights
  • Blogs & experiences
  • Points & ranking system

πŸ§‘β€πŸ’Ό Admins / Coordinators

  • Student management
  • Company directory
  • Recruiter database
  • Analytics dashboard
  • Mock interview system
  • Document verification

πŸ’¬ Communication

  • In‑app messaging
  • Audio calling
  • Video calling
  • Dark / Light mode

πŸ› οΈ Troubleshooting

❌ 500 Internal Server Error

Most common reason: Backend not running

cd backend
npm start

❌ Wrong API URL

Ensure in frontend/.env:

VITE_API_BASE_URL=http://localhost:5000

⚠️ Use localhost, not 127.0.0.1


❌ Port Already in Use

netstat -ano | findstr :5000
taskkill /PID <PID> /F

Or change backend port and update frontend .env.


πŸ“¦ Backend Details

package.json highlights:

  • Express.js server
  • CORS enabled
  • Nodemon for development

Scripts:

npm start   # Production
npm run dev # Development

πŸš€ Production Deployment

Backend

npm install --production
node server.js

Frontend

npm run build

Serve the dist/ folder using any static hosting.


πŸ“Š Sample Data

Backend includes demo data for:

  • 15+ Jobs
  • 8 Companies
  • 12 Recruiters

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Commit changes
  4. Push to branch
  5. Open a Pull Request

πŸ“„ License

MIT License


πŸ”— Quick Links

  • STARTUP_GUIDE.md – Detailed setup
  • FEATURES.md – Full feature list
  • backend/README.md – Backend API docs

About

A full-stack AI-powered Training & Placement management platform. Built with React, TypeScript, Vite, Node.js, and Express. Provides student profiles, job listings, recruiter and company management. Includes secure authentication, analytics dashboards, and REST APIs.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published