RATIH: Lunar Transcriptome Assembly - Fast, modern replacement for Trinity
Project description
🌙 RATIH - Lunar Transcriptome Assembly
RATIH (Robust Assembler for Transcriptomes with Integrated Hashing) is a modern, high-performance de novo transcriptome assembler.
FYI: RATIH named after the Javanese-Balinese Hindu goddess of the moon, symbol of love and beauty.
🌟 Features
- 🚀 10-100x faster than Trinity
- 📦 Zero R dependencies - pure Python statistical stack
- 🔧 One-line install:
pip install ratih - 🎯 Drop-in replacement for Trinity + Trinotate
- 📊 Interactive web dashboard
- 🧬 Complete annotation pipeline (BLAST, PFAM, SignalP, TmHMM, EggNOG)
- 📈 Differential expression (edgeR, DESeq2, limma)
- 🎨 Lunar phases: Crescent → Gibbous → FullMoon
📦 Installation
# Basic install
pip install ratih
# With full features
pip install ratih[full]
# With web dashboard
pip install ratih[web]
# Development install
git clone https://gitlab.com/biomikalab/ratih
cd ratih
make develop
🚀 Quick Start
Command Line
# Full pipeline
ratih assemble -1 reads_R1.fastq -2 reads_R2.fastq -o results/
# Phase by phase
ratih crescent assemble -r reads.fasta
ratih gibbous assemble -c crescent_out/contigs.fa -r reads.fasta
ratih fullmoon assemble -g gibbous_out/graph.txt -r gibbous_out/reads.txt
# Annotation
ratih annotate -t transcripts.fa -b blast.out -o annotation/
# Differential expression
ratih analyze de -c counts.csv -s samples.csv -m edgeR
# Launch web dashboard
ratih web --port 8080
Python API
from ratih import Pipeline, LunarAssembler, TrinotateAnnotator
# Complete pipeline
pipeline = Pipeline(
left_reads="sample_R1.fastq",
right_reads="sample_R2.fastq",
output_dir="my_assembly"
)
results = pipeline.run()
print(f"Assembled {len(results.transcripts)} transcripts")
print(f"N50: {results.stats.n50}")
# Or phase by phase
assembler = LunarAssembler(kmer_size=25, cpu=16)
transcripts = assembler.assemble("reads_R1.fastq", "reads_R2.fastq")
# Annotate
annotator = TrinotateAnnotator(transcripts_fasta="assembly.fa")
annotator.run()
📊 Performance
| Metric | Trinity | RATIH | Improvement |
|---|---|---|---|
| Assembly time (100M reads) | 8-12 hours | 1-2 hours | 6-8x faster |
| Memory usage | 32-64 GB | 4-8 GB | 4-8x less |
| Installation | Complex (Docker) | pip install | Simpler! |
| R dependencies | Required | None | Zero |
🌙 Assembly by Lunar Phases
Following example of Trinity (but of course, improved), the assembly follows the lunar cycle:
🌙 Crescent - Initial contig assembly (replaces Inchworm)
🌖 Gibbous - De Bruijn graph construction (replaces Chrysalis)
🌕 FullMoon - Final transcript extraction (replaces Butterfly)
📚 Documentation
Full documentation is available at ratih.readthedocs.io
🤝 Contributing
Contributions are welcome! Please see CONTRIBUTING.md
📄 License
RATIH is dual-licensed under:
- BSD 3-Clause License - Permissive, allows proprietary use
- GNU Affero General Public License v3.0 (AGPL-3.0) - Copyleft, requires source disclosure for network services
You may choose either license at your option.
When to use which license?
| Use Case | Recommended License |
|---|---|
| Proprietary software integration | BSD-3-Clause |
| Academic research | Either |
| Network service/API | AGPL-3.0 |
| Open source projec | Either |
| Commercial SaaS | AGPL-3.0 |
See LICENSE-BSD and LICENSE-AGPL for details.
SPDX-License-Identifier: BSD-3-Clause OR AGPL-3.0-only
🌟 Citation If you use RATIH in your research, please cite:
Nashrulloh, M.M., RATIH contributors. (2026). RATIH: Lunar Transcriptome Assembly - Fast, modern replacement for Trinity (Version 1.0.0) [Computer software]. https://gitlab.com/biomikalab/ratih
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ratih-1.0.0a1-cp314-cp314-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: ratih-1.0.0a1-cp314-cp314-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 407.4 kB
- Tags: CPython 3.14, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ccd9b8fcbc6cf031519058a42d7a5f1a4b80985e04a8a9370c57564b7b897664
|
|
| MD5 |
c0311e5e2893ca3e8f4898165951f82f
|
|
| BLAKE2b-256 |
f436ebbaaac045c941e6d0229116d120398fd6fcdae3a642746cc5b58aa23baf
|
File details
Details for the file ratih-1.0.0a1-cp313-cp313-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: ratih-1.0.0a1-cp313-cp313-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 408.1 kB
- Tags: CPython 3.13, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2e7cf160523fe53c198ab5f09f2d541cbc0fabb7b5622147bb4d299a4ece718d
|
|
| MD5 |
9996eabdde8ae5b691d1d8aad85a83d6
|
|
| BLAKE2b-256 |
5b5e13101834d65903e9461316f7396e334052e2d75c5326f3d1203c23d2845d
|
File details
Details for the file ratih-1.0.0a1-cp312-cp312-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: ratih-1.0.0a1-cp312-cp312-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 408.0 kB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b1f1786a5196d38c812705ecda17589070c261a50015352089a120f791d68b9e
|
|
| MD5 |
dc9abd5fb8748c0017b9a07fd42343a0
|
|
| BLAKE2b-256 |
a187c1fafcbcef3b351b1aaeb97bf43d8435a6acf487fd7c4d1db04e35a7a729
|
File details
Details for the file ratih-1.0.0a1-cp311-cp311-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: ratih-1.0.0a1-cp311-cp311-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 408.6 kB
- Tags: CPython 3.11, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f88042e9f54fd9bf60924c4e8e94ba95e33f30d4d22307954ccb606557131a16
|
|
| MD5 |
4f92c11ffeb7f1546ae178ccbd1343d0
|
|
| BLAKE2b-256 |
33b7f829b755d38481f9e369d10b3dc83c25420ff52ba0a2fa93ecf983ab5e42
|