An interactive prototype that helps students explore holistic academic and career pathways from high school through graduate study. Students can filter by starting credential, degree goal, transfer institution, and estimated tuition and review detailed pathway timelines including articulation agreements, internships, certifications, and licensure milestones.
- Backend: Python, Flask, Flask-CORS
REST API that aggregates curated pathways (backend/data.py) with live MDC program data (backend/program_data.py). - Frontend: HTML, CSS, Vanilla JavaScript
Responsive UI infrontend/index.html,frontend/styles.css, andfrontend/script.jswith dynamic filtering, search suggestions, and modal details.
Sharkbyte 2025/
├── backend/
│ ├── app.py # Flask API routes
│ ├── data.py # Curated pathway definitions
│ ├── program_data.py # MDC catalog fetch/cache
│ ├── programs_cache.json # Cached catalog payload
│ └── requirements.txt # Python dependencies
├── frontend/
│ ├── assets/ # Static assets (e.g., MDC logo)
│ ├── index.html # Landing page markup
│ ├── styles.css # UI styling
│ └── script.js # Client-side logic (filters, carousel, modals)
└── README.md
-
Create a virtual environment (optional but recommended)
cd /path/to/project python -m venv .venvActivate it with
.venv\Scripts\Activate.ps1on Windows PowerShell orsource .venv/bin/activateon macOS/Linux. -
Install backend dependencies
pip install -r backend/requirements.txt
-
Run the Flask API
# Windows PowerShell $env:FLASK_APP = "backend.app"; flask run --reload # macOS/Linux (bash/zsh) export FLASK_APP=backend.app flask run --reload
The API listens on http://127.0.0.1:5000. Health check: http://127.0.0.1:5000/api/health.
-
Serve the front-end Option A: Use the built-in Python web server.
cd frontend python -m http.server 3000Visit http://127.0.0.1:3000 in the browser. The JS auto-detects the API on port 5000 when running locally.
Option B: Configure Flask to serve the static assets (future enhancement) by mounting the
frontenddirectory withinapp.pyusingsend_from_directory.
- GET /api/majors: Returns pathway summaries with optional query parameters:
- q: text search (major titles, summaries, program names)
- degree: target degree level (Associate, Bachelor, Master, Doctorate)
- program: starting MDC credential type (AA, AS, BAS, etc.)
- institution: any target transfer institution name fragment
- tuition_max: maximum total in-state tuition for the pathway
- GET /api/majors/<major_id>: Returns detailed information for a single major, including full pathway sequences, internships, certifications, and cost breakdowns.
- GET /api/programs: Returns MDC academic program summaries (code, degree, credits, estimated costs, campuses). Supports the same query parameters as
/api/majors. - GET /api/programs/<program_code>: Returns the full MDC program record used by the detail panel.
- GET /api/filters: Provides dropdown metadata for front-end filters.
- GET /api/health: Basic status payload.
- Refresh the official MDC program catalog (cached in
backend/programs_cache.json):python -c "from backend.program_data import load_programs; load_programs(force_refresh=True)"- Restart the Flask server so the refreshed cache is loaded.
- Add or edit curated guided pathways in
backend/data.py:- Duplicate an existing major object and adjust the id, title, career_summary, and labor_outlook.
- Add MDC programs to the
mdc_programslist. - Provide one or more
pathwayswith sequences, articulation notes, internships, certifications, and estimated costs. - Update the
examsandfinancial_aidsections as needed. - Restart the Flask server to load the new data.
Consider integrating live data sources (e.g., MDC catalog APIs, institutional cost calculators, licensure board feeds) or storing pathway definitions in a database for authoring workflows.
- The hero section, filters, and card grid echo the clear categorical layout of Palm Beach State College's STEM pathway site while adding MDC-specific metrics and interactive filtering.
- The detail side panel emphasizes stackable credentials, articulation agreements, and exam/licensure prep to support students planning from high school through graduate study.
- Add additional MDC pathways (e.g., Nursing, Cybersecurity, Education) and articulate multiple transfer options per discipline.
- Surface personalized metrics (estimated timeline, stackable certificates, income outlook) based on student inputs.
- Persist student selections and allow exporting a PDF advising plan.
- Integrate authentication for advisors to build, save, and share pathway recommendations.