Skip to main content

General-purpose toolkit for bioinformatics, data analysis, plotting, and text processing

Project description

jsrc

A CLI toolkit for data processing, analysis, and visualization.

Installation

PyPI (recommended):

pip install jsrc

uv:

uv pip install jsrc

From source:

git clone https://github.com/imjiaoyuan/jsrc.git
cd jsrc
uv venv
uv sync --extra dev

Run jsrc --help to get started.

For detailed usage, see the Documentation.中文文档请参阅 文档

A Glance of jsrc's Functions

vision module

jsrc vision extract -i test/leaf1.jpg -o test/efd --channel a --invert --save-mask
jsrc vision efd -i test/efd -o test/efd --harmonics 20

Contour extraction & EFD reconstruction (20 harmonics):

EFD coefficients (first 5 rows):

an,bn,cn,dn
 0.7004,  0.0127, -0.0412,  1.0018
-0.0100, -0.0083, -0.0400,  0.0293
 0.0948, -0.0055, -0.0285, -0.1134
 0.0085, -0.0702,  0.0777, -0.0099

Morphological traits:

jsrc vision traits -i test/leaf1.jpg --channel a --invert
trait value
area 461833.5
perimeter 3479.84
aspect_ratio 0.671
circularity 0.479
extent 0.535
solidity 0.837

grn module

Generate 1000-gene random network viewer with full-view mode (top 200 nodes):

jsrc grn net2json -i test/grn/network.tsv -o test/grn/json/grn.json -n test/grn/annotation.tsv -z test/grn/grn-viewer.zip -s

Centrality ranking (top 5):

jsrc grn centrality -i test/grn/network.tsv --top 5
rank node in_degree out_degree total_degree
1 GENE_0504 24.14 34.97 59.12
2 GENE_0785 26.37 29.51 55.88
3 GENE_0165 42.81 12.21 55.01
4 GENE_0394 14.82 33.04 47.86
5 GENE_0427 36.50 10.60 47.10

seq module

jsrc seq extract -fa test/seq/test.fa -gff test/seq/test.gff -ids test/seq/ids.txt -o test/seq/extracted.fa -feature gene -match ID

Extract sequences by gene ID from FASTA+GFF, rename via CSV map, run QC stats, k-mer counting, and sliding-window analysis.

QC: 2 sequences, 268 bp total, GC 56.7%, N50 160.

k-mer (k=3): top ATC (40), TCG (40), CGA (39).


analyze module

jsrc analyze msa_consensus -fa test/analyze/aln.fa --json
jsrc analyze snpindel -fa test/analyze/aln.fa
jsrc analyze motif -fa test/analyze/aln.fa -o test/analyze/motif_out -minw 3 -maxw 5 -nmotifs 3
jsrc analyze phylo -fa test/analyze/aln.fa -o test/analyze/tree.nwk
  • Consensus: ATGCTAGCTAGCTAGCTAGC, mean conservation 0.983
  • SNP: seq1 vs seq3 has 1 SNP (alignment score 19/20)
  • Motif (top): GCT (12), CTA (12), TAG (12)
  • Phylogeny: (seq1:0.00000,seq2:0.00000,seq3:0.05000)Inner1:0.00000;

job module

Submit, monitor, and inspect background jobs:

jsrc job submit "echo 'job module test' && sleep 1 && echo done" -N test-job
job_id	1
pid	90288
log	/home/user/.local/share/jsrc/job-logs/1.log
status	running
jsrc job ls --limit 5
job_id  status  pid    runtime  rss_mb  ...  command
------  ------  -----  -------  ------       ----------------------------------------------
1       exited  90288  4s       0.0         echo 'job module test' && sleep 1 && echo done
jsrc job logs 1
job module test
done

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

jsrc-0.1.5.tar.gz (64.7 kB view details)

Uploaded Source

Built Distribution

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

jsrc-0.1.5-py3-none-any.whl (86.6 kB view details)

Uploaded Python 3

File details

Details for the file jsrc-0.1.5.tar.gz.

File metadata

  • Download URL: jsrc-0.1.5.tar.gz
  • Upload date:
  • Size: 64.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for jsrc-0.1.5.tar.gz
Algorithm Hash digest
SHA256 ec20cfcf95f4074436603aca3728ee4c3ade80d4b67c3b2a6f6c0aed4dd6beba
MD5 37d17884c1af32d1a42d6132226346a8
BLAKE2b-256 bcc9bc98d40402e3466cff48a535b5833550cc2c400824a7e2de9fd103d13444

See more details on using hashes here.

Provenance

The following attestation bundles were made for jsrc-0.1.5.tar.gz:

Publisher: publish.yml on imjiaoyuan/jsrc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jsrc-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: jsrc-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 86.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for jsrc-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 0770bef352f49ea62b6e1e6bb8590600f63bedbedec7dbc3e3bfffda5ad666dd
MD5 ba70db60ce949d7dd7aaaf7a7edbc7b8
BLAKE2b-256 6eff376d2e9549ce69b493c02c28cf43baf4bee7b310552171da8242ada35008

See more details on using hashes here.

Provenance

The following attestation bundles were made for jsrc-0.1.5-py3-none-any.whl:

Publisher: publish.yml on imjiaoyuan/jsrc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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