Spaces:
Sleeping
title: LaunchPadAI
emoji: 🚀
colorFrom: green
colorTo: blue
sdk: docker
pinned: false
app_port: 7860
LaunchPadAI Panel
An AI undergraduate internship and early-career assistant built on Neon AI's Collaborative Conversational AI (CCAI) framework. Ask about Handshake/LinkedIn search, resume polish, interview prep, application cadence, and networking — and get diverse perspectives from a panel of five career AI advisors.
This repository is a complete, deployable application — the CCAI
multi-advisor stack (FastAPI backend + React frontend) wired to the
LaunchPadAI configuration in launchpad_config.yaml
and the personas in personas/career_advisors/.
Advisors
- Internship Search Strategist — roles, platforms, target lists
- Resume Optimizer — ATS, bullets, skills match
- Interview Coach — prep, presence, company research
- Application Scheduler — cadence, deadlines, tracking
- Career Path Mentor — networking, pivot, full-time transition
Hugging Face Spaces deployment
This Space ships as a single Docker image built from the repository-root
Dockerfile. The container:
- Builds the React frontend (CRA) at image-build time with
REACT_APP_API_URL=""so everyfetchissues a relative URL. - Serves the bundled SPA from FastAPI at
/, with the API on/api/...,/auth/..., etc. — all on the same:7860origin. - Persists user data (auth, profiles, chat sessions) in SQLite via
aiosqliteat${DATA_DIR}/launchpad_panel.db. Mount a Hugging Face Storage Bucket at/datato make the database survive Space rebuilds. There is no MongoDB and no third-party data plane.
Required Space secrets
| Secret | Purpose |
|---|---|
JWT_SECRET_KEY |
Signs auth tokens. Set this to a long random string. |
OPENAI_API_KEY |
Powers the default OpenAI provider (gpt-5.4-mini). |
GEMINI_API_KEY |
Optional — only if you switch llm.provider back to gemini. |
Set these under Settings → Variables and secrets on the Space.
Local deployment
Option A — Docker
# From the repo root, create a .env with at least:
# JWT_SECRET_KEY=some-long-random-string
# OPENAI_API_KEY=your-openai-key
docker compose up --build
Open http://localhost:7860. Override the host port with LAUNCHPAD_HOST_PORT if
7860 is taken.
Option B — Native (no Docker)
Backend (terminal 1):
cd multi_llm_chatbot_backend
python -m venv venv && source venv/bin/activate
pip install -r requirements.txt
CONFIG_PATH=../launchpad_config.yaml uvicorn app.main:app --reload --port 8000
Frontend (terminal 2):
cd phd-advisor-frontend
npm install
REACT_APP_API_URL=http://localhost:8000 npm start
Open http://localhost:3000 — you should see LaunchPadAI with five career advisors.
Configuration
App UI, login fields, chat examples, orchestrator keywords, and LLM/RAG
settings live in launchpad_config.yaml. The five
advisor YAMLs in personas/career_advisors/ load automatically. Point the app at a
different config with CONFIG_PATH.
The workshop draft that generated this panel is saved as
advisor-panel-draft.json.