Skip to content

Roadmap

Big Picture - What we want to achieve

Visualization Studio

Phase 1: Foundation ✅

Interactive dashboards with modern web components and real-time data binding

Data Ingestion

Phase 1: Foundation ✅

Support for multiple tabular formats: Parquet, CSV, JSON, TSV with automated processing

MultiQC Integration

Phase 2: Specialization 🚧

Seamless integration with bioinformatics quality control reports

step icon

Configuration Assistant

Phase 2: Specialization 🚧

CLI-based project setup wizard with intelligent recommendations

Workflow Templates

Phase 3: Ecosystem 📋

Pre-configured dashboards for popular bioinformatics workflows and pipelines

What we have now

Data ingestion & data types supported

  • Data ingestion using Depictio-CLI (python package based typer) using YAML configuration file
  • Polars-compatible data format (Parquet, CSV, JSON, TSV) ingestion and transformation into Delta Lake format
  • Delta lake push to S3 bucket (on-premise or remote MinIO)
  • Comprehensive S3 backup and restore strategy with CLI commands and API endpoints
  • Performance optimization with caching for iterative joins and component data
  • Enhanced CLI execution with run commands and improved logging

Authentication

  • Basic authentication (username/password) > register, login, logout
  • JWT token management
  • Refresh token support with enhanced security and session persistence
  • Public/private & API internal key creation
  • Profile management (change password)
  • Create CLI configuration through the web interface (YAML to be copy-pasted)
  • Google OAuth authentication integration
  • Unauthenticated mode with automatic anonymous login for public access
  • Temporary user functionality with session management and upgrade options

Dashboards management

  • Create a dashboard for a project
  • Edit name, duplicate, delete a dashboard
  • Make public/private a dashboard at the instance level

Dashboard design and interactivity

  • Dashboard design using generic components (figure, metrics card, interactive component, table)
  • Add/delete components
  • Resize and relayout components
  • Edit components (title, aggregation applied)
  • Duplicate components
  • Enable/disable interactivity
  • Enable/disable edit mode
  • Auto-save dashboard + manual save (trigger screenshot to be used as thumbnail)

Project management

  • Project management UI to list workflows and data collections
  • List and edit project permissions
  • Turn public/private a project

Admin

  • Admin interface to list and manage users (delete functionality only)
  • Admin interface to list projects
  • Admin interface to list dashboards

Testing & Quality Assurance

  • Pre-commit hooks for code quality enforcement
  • Comprehensive end-to-end testing with Cypress
  • Enhanced CI/CD workflows with automated testing
  • Integration tests for various components and workflows
  • Flask security assessment scanner integration
  • Improved test reliability and coverage

Infrastructure & Deployment

  • Docker containerization with multi-architecture support (AMD64/ARM64)
  • Kubernetes deployment with Helm charts
  • Enhanced Helm chart configuration with persistent volumes and ingress
  • Gitpod workspace setup for streamlined development
  • Automated release workflows with changelog generation
  • Implement astral/ty as static type checking & in pre-commit hooks
  • Allow users to provide their own set of public/private keys

UI

  • Functional dark/light mode theming with auto-theme detection
  • Upgrade dash to the latest version (v3+)
  • Upgrade dash mantine components to the latest version (2.0+) with enhanced components and styling
  • Improve UI/UX (e.g., loading spinner, error handling, etc.)
  • Improve dashboard layout and component resizing with vertical and horizontal growing

What we plan for the future

Data ingestion & data types supported

  • Support MultiQC report integration (leverage MultiQC 1.29 with parquet file)
  • Support for genome-browser tracks through JBrowse2 (e.g., VCF, BAM, BED, GFF)
  • Data ingestion template for heavily-used and standardized nf-core community workflows (depictio-cli scan --template nf-core/sarek .)
  • Single file loading (HTTP polars) without using CLI
  • S3 bucket automatic cleanup when delta not listed in DB

Authentication

  • OAuth2 authentication (GitHub, etc.) - Google OAuth already implemented
  • SSO/SAML authentication - partial SAML integration completed
  • Groups management

Dashboards management

  • Dashboard sharing with specific users or groups
  • Tagging system for dashboards

Dashboard design and interactivity

  • Implement JBrowse2 component for genome browser tracks
  • High-dimensional data methods (e.g., UMAP, PCA, t-SNE)
  • Omics data visualization methods (e.g., Volcano plot, ...)
  • Markdown component
  • Extend interactive component (date, radio, ...)
  • Improve component (e.g., slider values range, figure styling and properties, etc.)
  • Add more grouping functionalities

Admin

  • Move admin interface to a dedicated FastAPI dashboard using FastAPI-Users and FastAPI-Admin
  • List and manage groups
  • Admin interface to list and manage API keys
  • Update endpoints policy (hide/unprotect when needed)

Development & Infrastructure

  • Build separate containers for frontend and backend
  • Performance testing for polars read/write from S3 with/without dashboard rendering

Templates & Workflows

  • Depictio templates system for workflow integration
  • Dashboard templates for standardized nf-core workflows
  • Template validation and CI/CD integration
  • Template marketplace with screenshots and descriptions

UI

  • Further theme customization (colors, fonts) and CSS styling enhancements