About This Project
Overview
An interactive predator-prey ecosystem simulation with a parallelized Python backend and a Next.js/TypeScript frontend streaming state over Socket.io in real time. Results compile into a PDF report with dynamic graphs and an AI-generated summary via the Gemini API — a parallel-computing coursework project that grew into a full-stack app.
Motivation
This was originally a parallel-computing coursework assignment, but I didn't want it to end as a script that prints numbers to a terminal — I wanted to actually watch the ecosystem evolve in real time.
Lessons Learned
Streaming simulation state over Socket.io while the backend is doing heavy multiprocessing taught me a lot about not blocking the event loop — the visualization layer has very different performance requirements than the simulation core.
