Skip to content

thisIsAnVariableOfACoder/myAIchatbotProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

160 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿš€ Career Advisor Chatbot

AI Young Guru 2026 โ€“ Team LLMagik - AI YOGU GYM 3

An AI-powered career advisory chatbot that helps users explore career paths, discover job information, and receive personalized recommendations using LLM technology.

Node.js Vite SQLiteCloud Model

Project Banner

Polished prototype for interactive career discovery, personalized recommendations, and LLM-driven guidance.


๐ŸŒŸ Overview

Career Advisor Chatbot is a prototype intelligent system designed to:

  • ๐Ÿ”Ž Support career exploration
  • ๐Ÿ’ผ Suggest relevant job roles based on user input
  • ๐Ÿ“š Provide a searchable job catalog (1000+ roles from O*NET)
  • ๐Ÿค– Deliver LLM-powered conversational guidance

๐Ÿงฐ Tech Stack

Layer Technology
Backend Node.js
Frontend Web Application
Database SQLite
AI Engine GPT-OSS 120B
Matching Rule-based Engine (Prototype)

๐Ÿ“ Project Structure

Below is a complete project structure overview (expanded) to help contributors and reviewers quickly locate modules and assets.

myAIchatbotProject/
โ”œโ”€โ”€ 632652149_887073670753166_3710026893000461784_n.jpg    # Hero banner
โ”œโ”€โ”€ ai-young-guru-logo.png
โ”œโ”€โ”€ index.html
โ”œโ”€โ”€ 404.html
โ”œโ”€โ”€ package.json
โ”œโ”€โ”€ runtime-config.js
โ”œโ”€โ”€ assets/                      # Generated frontend assets (build)
โ”œโ”€โ”€ career-icons/                # Icon set used by the UI
โ”œโ”€โ”€ screenshots/
โ”œโ”€โ”€ scripts/
โ”œโ”€โ”€ backend/
โ”‚   โ”œโ”€โ”€ index.js
โ”‚   โ”œโ”€โ”€ server.js
โ”‚   โ”œโ”€โ”€ config.js
   โ”‚   โ”œโ”€โ”€ package.json
โ”‚   โ”œโ”€โ”€ testLLM.js
โ”‚   โ”œโ”€โ”€ data/
โ”‚   โ”‚   โ”œโ”€โ”€ careerLibrary.js
โ”‚   โ”‚   โ””โ”€โ”€ generatedCareerDataset.js
โ”‚   โ”œโ”€โ”€ database/
โ”‚   โ”‚   โ”œโ”€โ”€ esco_occupations.csv
โ”‚   โ”‚   โ”œโ”€โ”€ schema.sql
โ”‚   โ”‚   โ””โ”€โ”€ seed.sql
โ”‚   โ”œโ”€โ”€ middleware/
โ”‚   โ”‚   โ””โ”€โ”€ auth.js
โ”‚   โ”œโ”€โ”€ routes/
โ”‚   โ”‚   โ”œโ”€โ”€ chat.js
โ”‚   โ”‚   โ”œโ”€โ”€ chatbot.js
โ”‚   โ”‚   โ”œโ”€โ”€ auth.js
โ”‚   โ”‚   โ”œโ”€โ”€ admin.js
โ”‚   โ”‚   โ””โ”€โ”€ analytics.js
โ”‚   โ””โ”€โ”€ services/
โ”‚       โ””โ”€โ”€ ...
โ”œโ”€โ”€ frontend/
โ”‚   โ”œโ”€โ”€ index.html
โ”‚   โ”œโ”€โ”€ package.json
โ”‚   โ”œโ”€โ”€ vite.config.js
โ”‚   โ”œโ”€โ”€ postcss.config.cjs
โ”‚   โ”œโ”€โ”€ tailwind.config.cjs
โ”‚   โ”œโ”€โ”€ public/
โ”‚   โ””โ”€โ”€ src/
โ”‚       โ”œโ”€โ”€ main.js
โ”‚       โ”œโ”€โ”€ app/
โ”‚       โ”œโ”€โ”€ components/
โ”‚       โ””โ”€โ”€ styles/
โ””โ”€โ”€ README.MD

๐Ÿ›  Installation & Setup

1๏ธโƒฃ Backend Setup

cd backend
npm install
npm run setup-db
npm run dev

2๏ธโƒฃ Frontend Setup

cd frontend
npm install
npm run dev

๐ŸŒ Production Mode (Single URL Deployment)

Serve frontend directly from backend:

cd backend
npm run build      # Run once to build frontend
npm run start

Or run everything with a single command from root:

npm run serve

Access the application at:

http://localhost:3001

๐Ÿ”Œ API Endpoints

Local Development

http://localhost:3001

Deployed Backend API

https://api-myaichatbotproject.onrender.com

๐Ÿ—„ Database

Main Database

  • Uses SQLiteCloud (ONLINE)
  • User/profile/chat/recommendation/job catalog data are stored online
  • Backend is configured in ONLINE-only mode (no local SQLite fallback)

โœ… Online Database Mode (Recommended for production)

Backend now uses ONLINE database via SQLiteCloud.

When configured, user/chat/profile data is stored online and shared across all backend instances.

Environment variables

  • DB_PROVIDER=sqlitecloud
  • SQLITECLOUD_URL=sqlitecloud://<host>:<port>/<database>?apikey=<api-key>

Use backend/.env.example as template for local setup.

โš ๏ธ Security note:

  • Do not commit real .env files.
  • Put real values in GitHub Secrets/Variables for CI.
  • This repository includes playwright.yml for CI-safe env injection (no plaintext keys in git).

SQLITECLOUD_URL must be a real connection string, not the dashboard URL.

Optional (instead of SQLITECLOUD_URL):

  • SQLITECLOUD_HOST=<host>
  • SQLITECLOUD_PORT=8860 (default)
  • SQLITECLOUD_DATABASE=<database-name>
  • One auth mode only:
    • SQLITECLOUD_API_KEY=<api-key> or
    • SQLITECLOUD_TOKEN=<token> or
    • SQLITECLOUD_USERNAME=<username> + SQLITECLOUD_PASSWORD=<password>

Optional TLS/debug option:

  • SQLITECLOUD_INSECURE=1 (only for troubleshooting; do not use in production)

Setup steps (SQLiteCloud)

  1. Create/identify your SQLiteCloud database in dashboard.

  2. Generate API key for backend access.

  3. Build connection string:

    • sqlitecloud://<host>:8860/<database>?apikey=<api-key>
  4. Set backend environment variables (local .env or Render env):

    • DB_PROVIDER=sqlitecloud
    • SQLITECLOUD_URL=<connection-string-from-step-3>
  5. Initialize schema/migrations on online DB:

    • npm --prefix backend run setup-db
  6. Start backend:

    • npm --prefix backend run start
  7. Verify health:

    • GET /health
    • Test register/login/chat and confirm data persists after backend restart/redeploy.

Render deployment notes

Add these env vars in Render Service โ†’ Environment:

  • DB_PROVIDER
  • SQLITECLOUD_URL
  • plus existing vars: JWT_SECRET, ADMIN_EMAIL, ADMIN_PASSWORD, GROQ_API_KEY, ...

After deploy, run one-time DB init command using Render Shell:

  • npm run setup-db

Then normal runtime command remains:

  • npm run start

Database Commands

Command Description
npm run setup-db Initialize ONLINE SQLiteCloud database (idempotent)
npm run reset-db In ONLINE mode, warns and does not delete cloud DB
Auto-init Server initializes DB automatically if empty

๐Ÿ“š Career Catalog (Job Explorer)

The job catalog is also stored in SQLiteCloud (online), alongside app data.

๐Ÿ“ฅ Import 1000+ Jobs from O*NET

npm --prefix backend run import-jobs

๐Ÿ”„ Reset & Re-import Jobs

npm --prefix backend run reset-jobs

๐Ÿ“– Data Source


๐Ÿค– LLM Integration

Used for conversational intelligence, contextual understanding, and personalized career guidance.


โš™๏ธ Architecture Notes

  • โ˜๏ธ SQLiteCloud for centralized ONLINE data
  • ๐Ÿง  Rule-based matching engine (optimized for rapid prototyping)
  • ๐Ÿค– LLM integration for advanced conversational support
  • ๐Ÿ”ฎ Designed for future ML-based recommendation system expansion

RESULT:

TOP 5 AI YOGU GYM 3 PROJECT

TOP 5 AI YOGU GYM 3 PROJECT

Contributors

Languages