Skip to content
gdt_
Back to work

ATOM

Re-engineering of a web platform that manages and runs automated omics analyses (RNA-seq), from a fragile monolith to a reproducible architecture with clear separation of concerns.

Year
2026
My role
Author: analysis, architecture and implementation
Category
Scientific platform · Final degree project
atom.app
ATOM main dashboard with platform analytics

01Context

Individual academic project · ULPGC · graded 9.4/10.

Re-engineering of a web platform that manages and runs automated omics analyses (RNA-seq), from a fragile monolith to a reproducible architecture with clear separation of concerns.

02Problem

The previous version was a Flask monolith that stored data in JSON files and ran R Markdown scripts straight from the web server. It worked, but had serious limits in security, maintainability, scalability, traceability and reproducibility.

03Goals

  • Analyse and document the previous architecture and its risks.
  • Separate the backend, the execution system and the analysis layer.
  • Make executions reproducible and traceable.
  • Improve security, data validation and user management.

04My contribution

  • Analysis of the previous system and design of the new architecture.
  • FastAPI backend: authentication, users, projects, entities, notifications and execution tracking.
  • Next.js frontend with a dashboard, visual project management and reports.
  • PostgreSQL data model and migration from JSON files.
  • Asynchronous worker, Docker containers and continuous integration.

05Technical decisions

  1. AMoving analysis execution out of the web server into an independent worker: the UI never blocks and every run is recorded with its state.
  2. BPostgreSQL instead of JSON files for integrity, querying and a real history of projects and runs.
  3. CDocker so the analysis environment, with its R and Python dependencies, is identical on any machine.
  4. DAutomatic validation of experimental templates before an analysis starts, so it fails early and with a clear message.

06Solution

A new architecture with a FastAPI backend, a Next.js frontend, PostgreSQL persistence, Docker orchestration and an independent worker process that runs analyses in the background.

Key features

  • Omics project management
  • Experimental template validation
  • Asynchronous runs with live tracking
  • HTML, DOCX and XLSX reports
  • History and traceability
  • Light and dark mode

Outcome

Final degree project graded 9.4/10 (Outstanding) in the BSc in Computer Engineering at ULPGC.

07Screenshots

A report being generated in real time
RNA-seq analysis report produced by the platform
Tracking an asynchronous run and its log
Visual project management in dark mode
Continuous integration history in GitHub Actions

08Stack

  • FastAPI
  • Python
  • Next.js
  • TypeScript
  • PostgreSQL
  • Docker
  • R Markdown
  • GitHub Actions

09What I learned

  • “Reproducibility is not an extra, but a basic condition of scientific software.” That was the guiding idea of the project.
  • Rewriting well means first understanding why the old system worked, not only where it failed.