Skip to content

BarryDigby/pycircdb

Repository files navigation

pycircdb

Explore the documentation to get up and running!

PyPI Version DOI


pycircdb is a CLI tool to annotate circular RNAs output by circRNA quantification tool by integrating multiple public circRNA databases into a reproducible set of outputs across samples.

Annotations are generated by reading one-column text files of circRNA coordinates in chr:start-end|strand format (strand optional). Coordinates are mapped using a fuzzy search that tolerates 0-based and 1-based genomic positions, which are then queried against curated circRNA databases. For each sample, pycircdb produces annotation tables, predicted FASTA sequences, and miRNA and RBP interaction files.

pycircdb was designed to bring traditional GUI 'point-and-click' circRNA databases to the command line, facilitating its use in computational workflows. pycircdb is lightweight - requiring only 3.6 GB of disk space when the full parquet database is downloaded.

A range of circRNA databases are supported, including Arraystar, circAtlas, circBank, circBase, circNet, CIRCpedia, circRNADb, CSCD, and exorBase.

Please see the pycircdb documentation for a complete description of the databases and outputs.

Installation

You can install pycircdb using uv (no separate Python installation required):

uv tool install pycircdb

Alternatively, install from PyPI using pip:

pip install pycircdb

Usage

Quickstart

Once installed, you can perform a minimal test-run to ensure the tool works as expected:

pycircdb init-demo
pycircdb
pycircdb -c test_config.json -v 2 annotate -d 'arraystar,circbase' fasta -d 'arraystar,circbase' mirna -a 'miRanda,TargetScan' rbp
pycircdb

The demo will produce the following output directory:

/home/barry/pycircdb_demo/results/
└── demo
    └── demo_sample
        ├── arraystar.fasta
        ├── arraystar_hits.txt
        ├── circbase.fasta
        ├── circbase_hits.txt
        ├── hg38_chr10_mirna_hits.txt.gz
        ├── hg38_chr10_rbp_hits.txt.gz
        ├── hg38_chr13_mirna_hits.txt.gz
        ├── hg38_chr13_rbp_hits.txt.gz
        ├── hg38_chr19_mirna_hits.txt.gz
        └── hg38_chr19_rbp_hits.txt.gz

2 directories, 10 files

Configuration

pycircdb requires an input configuration JSON file in order to locate input samples and define global and per-sample configuration settings.

Please see the documentation for a full description of the config file.

{
  "global_parameters": {
    "max_tasks": 1,
    "output_dir": "results/",
    "tmp_dir": "tmp/"
  },
  "samples": {
    "vromann": {
      "file_path": "test/vromann.txt",
      "reference": "hg38"
    },
    "glioblastoma_plus_dcc": {
      "file_path": "test/rnase_plus/glioblastoma_RNase_plus_dcc.txt",
      "reference": "hg38"
    },
    "glioblastoma_plus_ciriquant": {
      "file_path": "test/rnase_plus/glioblastoma_RNase_plus_ciriquant.txt",
      "reference": "hg38"
    }
  }
}

Commands

For a full description of pycircdb commands and their options, please refer to the documentation.

Citation

Please consider citing pycircdb if you use it in your analysis

pycircdb: integrated circRNA database annotation for computational workflows
Barry Digby, Stephen Finn, Pilib Ó Broin
Pending (2026)
doi: pending)
PMID: pending

@article{pending,
 author = {Digby, Barry and Finn, Stephen and Ó Broin, Pilib},
 title = {pycircdb: integrated circRNA database annotation for computational workflows},
 journal = {pending},
 volume = {pending},
 number = {pending},
 pages = {pending},
 year = {pending},
 doi = {pending},
 URL = {pending},
 eprint = {pending}
}

Contributions & Support

Contributions, particularly new circRNA database resources are welcome, as are bug reports! Please create a new issue for any of these, preferably with the -v 2 flag enabled for richer logs. Pull-requests for fixes and additions are very welcome.

Funding

This work was funded by Science Foundation Ireland, grant number 18/CRT/6214.

About

pycircdb: integrated circRNA database annotation for computational workflows

Topics

Resources

License

Stars

1 star

Watchers

1 watching

Forks

Packages

 
 
 

Contributors

Languages