Skip to content
P.
Back to all work

GrepBio

Data analysis dashboard

Customer portal for 20,000+ point plots and 50GB+ file transfers, with MFA, D3.js views, and on-demand report generation.

Company
GrepBio
Timeline
Oct 2024 - Sep 2025
Role
Full stack
Impact
100+ active users
Stack
ReactFastAPIMongoDBD3.js

This portal is for RNA-seq. The people who log in are scientists, research scholars, and PhD students - more than 100 active users. A single biological input can be around 50GB, so the first problem was getting the file onto the server at all. We used an efficient file-transfer protocol to upload it, then built the visual dashboard on top of that data.

Each point on the volcano plot is a gene. The table (and related views) hold the same gene set. Clicking a point highlights the matching row so the scientist can read a detailed description of that gene without hunting for it. Selecting a point also drives the heatmap and a custom D3.js elastic network, so one click keeps the whole screen in sync.

Plots can exceed 20,000 points. After the first load we keep the dataset in memory with React’s useMemo so the UI does not refetch unless new data appears, which is rare. The stack is React/TypeScript, FastAPI, and MongoDB, with MFA on the way in and on-demand reports generated through Jinja2 and LaTeX.