Roadmap
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)
Authentication¶
- Basic authentication (username/password) > register, login, logout
- JWT token management
- Public/private & API internal key creation
- Profile management (change password)
- Create CLI configuration through the web interface (YAML to be copy-pasted)
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
What we plan for the future¶
Data ingestion & data types supported¶
- Support MultiQC report integration
- 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 .
)
Authentication¶
- OAuth2 authentication (Google, GitHub, etc.)
- SSO/SAML authentication
- 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
UI¶
- Improve UI/UX (e.g., loading spinner, error handling, etc.)
- Upgrade dash to the latest version (v3)
- Upgrade dash mantine components to the latest version (>v1.0)
- Improve theme customization (night mode, colors, fonts) and CSS styling