Skip to main content

ENA Smart Workflow and Acquisition Network — fast parallel FASTQ downloader for the European Nucleotide Archive

Project description

🦢 enaswan

ENA Smart Workflow and Acquisition Network

A fast, parallel command-line toolkit to fetch metadata, download FASTQ files, and verify integrity from the European Nucleotide Archive (ENA).

---

Installation

Via pip (PyPI)

pip install enaswan

Via conda (Bioconda)

conda install -c bioconda enaswan

---

Workflow

Run the three steps in order:

Step 1 — Fetch Metadata

enaswan --meta SRR12345678
enaswan --meta SRR12345678 ERR000001 PRJNA123456   # multiple IDs
enaswan --meta SRR12345678 --outdir ./results       # custom output folder

Saves a <ID>\_metadata.csv file containing run accession, sample info, instrument model, file sizes, FTP links, and MD5 checksums.

---

Step 2 — Download FASTQ Files

enaswan --dl SRR12345678
enaswan --dl SRR12345678 ERR000001                  # multiple IDs
enaswan --dl SRR12345678 --threads 8 --outdir ./data  # parallel + custom dir
  • Downloads are parallel (default: 4 threads)
  • Resumes interrupted downloads automatically
  • Shows a real-time progress bar

📶 Note: Download speed will vary depending on the internet connection and ENA server load.

---

Step 3 — Verify Integrity

enaswan --check SRR12345678_metadata.csv

Computes MD5 checksums for each downloaded file and compares against ENA's expected values. Reports PASS ✅, MISSING ⚡, or CORRUPTED ❌.

---

Full Options

usage: enaswan \[-h] (--meta ID \[ID ...] | --dl ID \[ID ...] | --check metadata.csv)
               \[--threads N] \[--outdir DIR]

options:
  --meta   ID \[ID ...]    Fetch metadata CSV for accession IDs
  --dl     ID \[ID ...]    Download FASTQ files for accession IDs
  --check  metadata.csv   Verify MD5 checksums using metadata CSV
  --threads N             Parallel download threads (default: 4)
  --outdir DIR            Output directory (default: current directory)

---

Supported Accession Types

Type Example Description
Run SRR*, ERR*, DRR* Single sequencing run
Project PRJNA*, PRJEB* All runs in a project
Sample SAMN*, SAME* All runs for a sample

---

License

MIT © Bandari Bharathwaj

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

enaswan-0.1.1.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

enaswan-0.1.1-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file enaswan-0.1.1.tar.gz.

File metadata

  • Download URL: enaswan-0.1.1.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for enaswan-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a66cc55072305f9ffa1b97509ef9d25c5544f261bc25dbeac5c9132605e3ba14
MD5 4b13061b4aa9aecff7e1279841e27b82
BLAKE2b-256 f0615f102cb1738c82a38d3e0095de0f3d4bad15741579933bcdc13577be04d8

See more details on using hashes here.

File details

Details for the file enaswan-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: enaswan-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for enaswan-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5f0cd786a8bb065462dba558541f1d6ca5fb53c634510e197ed949619508aec2
MD5 7e0d7c94836080326afaa196db7120fd
BLAKE2b-256 149d7e1c0c6fce2a6a52ef808d09893211971da22fcd663dfe6ed16033190912

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page