Skip to content

Commit 4eecf1e

Browse files
eprifticlaude
andcommitted
Redesign landing page with project logo and updated documentation
Add predomicslogo7 as site logo and favicon. Rewrite landing page with project overview, feature table, suite architecture, and getting started guides. Update all documentation pages with proper Jekyll front matter and accurate content for the current multi-repo architecture. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent f9f41be commit 4eecf1e

14 files changed

Lines changed: 296 additions & 56 deletions

‎_config.yml‎

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,19 @@
1+
title: Predomics
2+
description: Predictive Models from Omics Data
13
theme: just-the-docs
4+
logo: /docs/logo.png
5+
favicon_ico: /favicon.ico
26

3-
navigation:
4-
- title: "Package Documentation"
5-
url: /docs/index.html
7+
color_scheme: dark
8+
9+
aux_links:
10+
"GitHub":
11+
- "https://github.com/predomics"
12+
13+
nav_external_links:
14+
- title: Web Application
15+
url: https://github.com/predomics/predomicsapp-web
16+
- title: R Package
17+
url: https://github.com/predomics/predomicspkg
18+
- title: Rust Engine
19+
url: https://github.com/predomics/gpredomics

‎docs/Authors.md‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
---
2+
layout: default
3+
title: Authors
4+
parent: Documentation
5+
nav_order: 8
6+
---
7+
18
# Authors
29

310
Predomics was created by:

‎docs/Contact.md‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
---
2+
layout: default
3+
title: Contact
4+
parent: Documentation
5+
nav_order: 9
6+
---
7+
18
# Contact
29

310
If you have any questions or feedback, please contact us at:

‎docs/Contributing.md‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
---
2+
layout: default
3+
title: Contributing
4+
parent: Documentation
5+
nav_order: 10
6+
---
7+
18
# Contributing to Predomics
29

310
We welcome contributions to the Predomics project! Here’s how you can help:

‎docs/FAQs.md‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
---
2+
layout: default
3+
title: FAQs
4+
parent: Documentation
5+
nav_order: 7
6+
---
7+
18
# Frequently Asked Questions
29

310
**Q1: How do I install Predomics?**

‎docs/Features.md‎

Lines changed: 35 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,39 @@
1+
---
2+
layout: default
3+
title: Features
4+
parent: Documentation
5+
nav_order: 3
6+
---
7+
18
# Features
29

3-
Predomics offers a wide array of features:
10+
## Model Languages
11+
- **Binary (bin)** -- Features contribute as 0 or 1 (presence/absence)
12+
- **Ternary (ter)** -- Features contribute as -1, 0, or +1 (direction matters)
13+
- **Ratio** -- Score is computed as a ratio of two feature groups
14+
15+
## Search Algorithms
16+
- **Genetic Algorithm (GA)** -- Population-based evolutionary search with crossover, mutation, and selection
17+
- **Beam Search** -- Deterministic heuristic that grows signatures incrementally
18+
- **Data-driven (Da)** -- Analytical approach for optimal feature selection
19+
20+
## Jury / Ensemble Voting
21+
- Build an ensemble of expert models from the best individuals across generations
22+
- **Majority voting** -- Weighted expert consensus with configurable threshold
23+
- **Consensus voting** -- Requires minimum agreement level to predict
24+
- **Rejection** -- Samples below confidence threshold are abstained (class 2)
25+
- Per-sample vote matrix visualization and concordance analysis
426

5-
1. **Feature 1**: Description of Feature 1.
6-
2. **Feature 2**: Description of Feature 2.
7-
3. **Feature 3**: Description of Feature 3.
27+
## Evaluation
28+
- K-fold cross-validation with AUC, accuracy, sensitivity, specificity
29+
- Train/test split with independent evaluation
30+
- Confusion matrices with rejection class support
31+
- Feature importance ranking via permutation
832

9-
Explore each feature to make the most out of Predomics.
33+
## Web Application
34+
- Project and dataset management with user authentication
35+
- Parameter configuration with admin-level defaults
36+
- Job queue with real-time progress monitoring
37+
- Interactive results: heatmaps, violin plots, generation tracking, population explorer
38+
- Jury visualization: concordance charts, sample predictions, vote matrix heatmap
39+
- Project sharing between users (viewer/editor roles)

‎docs/Installation.md‎

Lines changed: 42 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,54 @@
1+
---
2+
layout: default
3+
title: Installation
4+
parent: Documentation
5+
nav_order: 2
6+
---
7+
18
# Installation
29

3-
Follow these steps to install the Predomics package:
10+
## Web Application (Docker)
411

5-
1. Install R from [CRAN](https://cran.r-project.org/).
6-
2. Install the required dependencies:
12+
The fastest way to get started:
713

14+
```bash
15+
git clone https://github.com/predomics/predomicsapp-web.git
16+
cd predomicsapp-web
17+
docker compose up -d
818
```
19+
20+
Open [http://localhost:8001](http://localhost:8001) in your browser. Default credentials are created on first launch.
21+
22+
## R Package
23+
24+
1. Install R from [CRAN](https://cran.r-project.org/).
25+
2. Install the package and dependencies:
26+
27+
```r
928
devtools::install_github("predomics/predomicspkg")
1029

11-
## install dependencies
12-
install.packages(c("doSNOW", "foreach", "snow", "doRNG", "gtools", "glmnet", "pROC", "viridis", "kernlab", "randomForest","effsize"))
30+
# Install dependencies
31+
install.packages(c("doSNOW", "foreach", "snow", "doRNG", "gtools",
32+
"glmnet", "pROC", "viridis", "kernlab",
33+
"randomForest", "effsize"))
34+
1335
if (!requireNamespace("BiocManager", quietly = TRUE))
1436
install.packages("BiocManager")
1537
BiocManager::install("BioQC")
16-
# install.packages("testthat")
17-
# install.packages("roxygen2")
1838
```
1939

20-
Once eveything is installed un the check ...
40+
## Python Bindings (gpredomicspy)
41+
42+
Requires Rust toolchain for compilation:
43+
44+
```bash
45+
# Install Rust
46+
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
47+
48+
# Clone and build
49+
git clone https://github.com/predomics/gpredomics.git
50+
git clone https://github.com/predomics/gpredomicspy.git
51+
cd gpredomicspy
52+
pip install maturin
53+
maturin develop --release
54+
```

‎docs/Screenshots.md‎

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
# Screenshots
2-
3-
Here are some screenshots to give you an overview of Predomics:
1+
---
2+
layout: default
3+
title: Screenshots
4+
parent: Documentation
5+
nav_order: 5
6+
---
47

5-
![Screenshot 1](path/to/screenshot1.png)
6-
Caption for Screenshot 1.
8+
# Screenshots
79

8-
![Screenshot 2](path/to/screenshot2.png)
9-
Caption for Screenshot 2.
10+
Screenshots of the PredomicsApp web interface will be added here.

‎docs/Technologies.md‎

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,26 @@
1-
# Technologies Used
1+
---
2+
layout: default
3+
title: Technologies
4+
parent: Documentation
5+
nav_order: 6
6+
---
27

3-
Predomics is built with the following technologies:
8+
# Technologies
49

5-
- R
6-
- Other Libraries
10+
## Rust Engine (gpredomics)
11+
- **Rust** -- Core ML algorithms, evolutionary search, jury voting
12+
- **PyO3 / Maturin** -- Python bindings for seamless integration
713

8-
We chose these technologies for their ...
14+
## Web Application (predomicsapp-web)
15+
- **FastAPI** (Python) -- Async REST API backend
16+
- **Vue.js 3** -- Reactive frontend with Composition API
17+
- **Plotly.js** -- Interactive data visualizations
18+
- **PostgreSQL 16** -- User, project, and job persistence
19+
- **SQLAlchemy** -- Async ORM with migration support
20+
- **Docker Compose** -- One-command deployment
21+
22+
## R Package (predomicspkg)
23+
- **R** -- Original algorithm implementations
24+
- **doSNOW / foreach** -- Parallel computation
25+
- **pROC / glmnet** -- Statistical modeling
26+
- **viridis** -- Data visualization

‎docs/Usage.md‎

Lines changed: 37 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,44 @@
1+
---
2+
layout: default
3+
title: Usage
4+
parent: Documentation
5+
nav_order: 4
6+
---
7+
18
# Usage
29

3-
Here's how you can get started with Predomics:
10+
## Web Application
11+
12+
1. Create a project and upload your datasets (Xtrain, Ytrain, optionally Xtest, Ytest)
13+
2. Configure parameters (language, algorithm, population size, etc.)
14+
3. Launch an analysis job and monitor progress in real time
15+
4. Explore results: metrics, population, heatmaps, jury voting
16+
17+
## R Package
418

5-
```
6-
R
19+
```r
720
library(predomics)
821
result <- mainFunction(data)
922
print(result)
1023
```
24+
25+
## Python (gpredomicspy)
26+
27+
```python
28+
import gpredomicspy
29+
30+
# Load parameters from YAML
31+
param = gpredomicspy.Param()
32+
param.load("params.yaml")
33+
34+
# Run the evolutionary search
35+
experiment = gpredomicspy.fit(param)
36+
37+
# Display results with jury voting
38+
experiment.display_results()
39+
40+
# Access the best individual
41+
best = experiment.best_population().best()
42+
print(best.get_metrics())
43+
print(best.get_features())
44+
```

0 commit comments

Comments
 (0)