ChemLab AI — Class 12 Chemistry Visual Lab Assistant
An AI-powered web application that helps Class 12 students understand chemistry lab experiments through auto-generated step-by-step videos. A student types one line describing an experiment and receives a full video walkthrough powered by Amazon Bedrock.
How It Works
Student types experiment name
↓
Spring Boot (port 8080) — serves UI, exposes REST API
↓
Python FastAPI (port 5000) — runs LangGraph agent
↓
Node 1: Amazon Bedrock Nova Pro → generates procedure steps
Node 2: Amazon Bedrock Nova Reel → generates 6s video per step → ffmpeg concat
Node 3: Amazon S3 → stores final video, returns presigned URL
↓
Video plays in the student's browser
LangGraph Agent
The agent runs as a directed graph with three nodes and error short-circuit edges:
START
└─→ generate_procedure (Nova Pro — produces step list)
├─→ [error] → END
└─→ generate_clips (Nova Reel per step + ffmpeg concat)
├─→ [error] → END
└─→ generate_presigned_url (S3 upload + presigned URL)
└─→ END
Tech Stack
| Layer | Technology |
|---|---|
| Frontend | HTML, CSS, Vanilla JS |
| Backend | Java 21, Spring Boot 3.2 |
| Agent service | Python 3.14, FastAPI, LangGraph |
| Text generation | Amazon Bedrock Nova Pro (amazon.nova-pro-v1:0) |
| Video generation | Amazon Bedrock Nova Reel (amazon.nova-reel-v1:0) |
| Video processing | ffmpeg |
| Storage | Amazon S3 |

Log in or sign up for Devpost to join the conversation.