Skip to content
ZK
ZAIN KHALIL KHAN
PORTFOLIO
All projects

Interactive build

NASA Space Apps Challenge | SpaceVitals Dashboard

Real-time astronaut health monitoring dashboard built during an international hackathon, integrating Flask REST APIs with a dynamic JavaScript frontend for live visualization of vitals and environmental data.

Live demo readyFlask + REST API
FlaskREST APIJavaScriptReal-time DataFull StackCase study / interactive demo

Case study

From problem to working system

Problem

Mission teams need to recognize changes in astronaut health and cabin conditions quickly, without interpreting disconnected telemetry streams manually.

My role

Full-stack software engineer

Solution

Real-time astronaut health monitoring dashboard built during an international hackathon, integrating Flask REST APIs with a dynamic JavaScript frontend for live visualization of vitals and environmental data.

Architecture

The implementation combines the following technologies and system concerns.

FlaskREST APIJavaScriptReal-time DataFull Stack

How it was built

  • Built a real-time astronaut vitals dashboard during a 48-hour international hackathon, pairing a Flask REST API with a JavaScript frontend streaming live telemetry.
  • Modelled heart rate, oxygen saturation, respiration, and cabin CO2 with per-metric nominal, caution, and alert bands so a reading is interpreted, not just displayed.
  • Implemented an anomaly injection mode that drives a correlated hypoxia scenario across multiple vitals, since real physiology does not degrade one metric at a time.
  • Designed the alert hierarchy so colour is never the only signal, keeping the dashboard readable for colour-blind operators.

Security decisions

No project-specific security control is documented in the current project record. The case study avoids claiming controls that were not verified.

Major challenges

  • Rendered continuous waveform and sparkline views with only transform and opacity animation to keep the dashboard smooth under a steady tick.
  • Surfaced a mission clock and an event log so a caution event can be traced to the exact moment and metric that triggered it.

Verified evidence

Results and measurable impact

  • Built a real-time astronaut vitals dashboard during a 48-hour international hackathon, pairing a Flask REST API with a JavaScript frontend streaming live telemetry.
  • Surfaced a mission clock and an event log so a caution event can be traced to the exact moment and metric that triggered it.

Screenshots and access

Product view

NASA Space Apps Challenge | SpaceVitals Dashboard interface

Interactive Demo

A scoped, fully functional recreation of this project's core feature runs below, live in your browser. Reset it, resize it, or expand it to full screen.

SpaceVitals

Crew and cabin telemetry

SpaceVitalsWorkspace5 updates
SpaceVitalsCREW BIOMEDICAL TELEMETRY
T+ 04:12:33

MISSION ELAPSED · T+ 04:12:33

Crew systems in one operational view.

Live astronaut telemetry from the Flask REST feed: vitals and cabin environment stream in each tick, thresholds flip channels into alert, and crew status rolls up from the worst reading.

Crew status

NOMINAL

All monitored channels within safe range

ECG · lead II

72 bpm

Heart rate

nominal

72bpm

safe 55-100 bpm

SpO2

nominal

98.0%

safe 95-100 %

Core temp

nominal

36.8C

safe 36.1-37.5 C

Respiration

nominal

15br/min

safe 12-20 br/min

Cabin environment

Cabin O221.0 %
Cabin CO22.6 mmHg
Radiation0.45 mSv/d
Suit pressure31.5 kPa

Threshold event log

T+ 04:12:33SYSTelemetry link established, all channels nominal
Zain Khalil Khan