genespeak

A library to encode text as DNA and decode DNA to text.

https://github.com/sugatoray/genespeak

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.7%) to scientific vocabulary

Keywords

decoding dna-to-text encoding genespeak python text-to-dna
Last synced: 4 months ago · JSON representation ·

Repository

A library to encode text as DNA and decode DNA to text.

Basic Info
  • Host: GitHub
  • Owner: sugatoray
  • License: mit
  • Language: Python
  • Default Branch: master
  • Homepage:
  • Size: 1.1 MB
Statistics
  • Stars: 12
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 10
Topics
decoding dna-to-text encoding genespeak python text-to-dna
Created almost 4 years ago · Last pushed about 3 years ago
Metadata Files
Readme License Citation

README.md

GeneSpeak 🧬

genespeak-banner

GitHub - License PyPI - Python Version PyPI - Package Version Conda - Platform Conda (channel only) Conda Recipe Docs - GitHub.io CodeFactor Streamlit App DOI

A library to encode text as DNA and decode DNA to text.

GeneSpeak allows you to encode regular text as DNA using base-pairs (A, T, G, C) and convert back to the original text. Text encoding is done for both ascii and utf-8 characters based on the strategy keyword argument. The encoding scheme could be any combination of A, T, G, C.

Installation 📜

You can install the library via pip or conda.

Install with pip

sh pip install genespeak

Install with conda

sh conda install -c conda-forge genespeak

Quickstart ⚡

See the quickstart guide here.

| Service | Link/Badge | |:---:|:---:| | Colab | Colab Badge | | Binder | Binder | | SageMaker StudioLab | Open in SageMaker Studio Lab | | Deepnote | View in Deepnote | | Kaggle | Kaggle |

Demo App ✨

Streamlit App

You can play around with GeneSpeak in this streamlit app: https://tinyurl.com/genespeak-demo

Usage ✋

```python import genespeak as gp print(f'{gp.name} version: {gp.version}')

schema = "ATCG" # (1) strategy = "ascii" # (2) text = "Hello World!"

dna = gp.texttodna(text, schema=schema) textfromdna = gp.dnatotext(dna, schema=schema) print(f'Text: {text}\nEncoded DNA: {dna}\nDecoded Text: {textfromdna}\nSuccess: {text == textfromdna}') ```

Output

```sh genespeak version: 0.0.5 Text: Hello World! Encoded DNA: TACATCTTTCGATCGATCGGACAATTTGTCGGTGACTCGATCTAACAT

Text: Hello World! Encoded DNA: TACATCTTTCGATCGATCGGACAATTTGTCGGTGACTCGATCTAACAT Decoded Text: Hello World! ```

Documentation 📚

Docs - GitHub.io

The genespeak docs are maintained here.

License 📑

GitHub - License

The library is available under MIT license.

Citation 🔖

DOI

You may cite this library as follows.

bibtex @software{ray2022genespeak, author = {Ray, Sugato}, title = {GeneSpeak - A library to encode text as DNA and decode DNA to text}, url = {https://github.com/sugatoray/genespeak}, doi = {10.5281/zenodo.5885777}, month = {1}, year = {2022} }

GeneSpeak Thumb Print 👍

Let's have some fun! ✨ The following is a GeneSpeak thumbprint of genespeak itself.

| schema | strategy | thumbprint | |:---:|:---:|:---| | ATCG | ascii | TCTGTCTTTCGCTCTTTGAGTGAATCTTTCATTCCG |

Repository Health Metrics 💟

Includes health and security badges from:

  • Sonarcloud
  • OSSF Code Quality
Click to expand 👇

[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=sugatoray_genespeak&metric=alert_status)][#gh-sonarcloud-repo] [![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=sugatoray_genespeak&metric=security_rating)][#gh-sonarcloud-repo] [![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=sugatoray_genespeak&metric=sqale_rating)][#gh-sonarcloud-repo] [![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=sugatoray_genespeak&metric=ncloc)][#gh-sonarcloud-repo] [![Technical Debt](https://sonarcloud.io/api/project_badges/measure?project=sugatoray_genespeak&metric=sqale_index)][#gh-sonarcloud-repo] [![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=sugatoray_genespeak&metric=vulnerabilities)][#gh-sonarcloud-repo] [![OSSF CodeQL](https://github.com/sugatoray/genespeak/actions/workflows/scorecards-analysis.yml/badge.svg)][#gh-ossf-codeql-repo]

Owner

  • Name: Sugato Ray
  • Login: sugatoray
  • Kind: user
  • Location: Wisconsin, USA
  • Company: University of Wisconsin - Milwaukee

I am a Physicist (PhD ongoing). Research Interests: Data Science, ML, DL, Statistics, Math, Computing.

Citation (CITATION.cff)

# file: CITATION.cff

cff-version: 1.2.0
title: "GeneSpeak - A library to encode text as DNA and decode DNA to text"
message: "If you use this software, please cite it using these metadata."
type: "software"
authors:
  - family-names: "Ray"
    given-names: "Sugato"
    #email: "author@email.com"
    affiliation: "University of Wisconsin Milwaukee"
    orcid: "https://orcid.org/0000-0002-9886-2324"
    alias: "sugatoray"
repository-code: "https://github.com/sugatoray/genespeak"
url: "https://sugatoray.github.io/genespeak"
repository: "https://doi.org/10.5281/zenodo.5885777"
repository-artifact: "https://pypi.org/project/genespeak/"
# version: 1.0.0
doi: "10.5281/zenodo.5885777"
# date-released: 2022-01-21
keywords:
  - "python"
  - "encoding"
  - "decoding"
  - "genespeak"
  - "text-to-dna"
  - "dna-to-text"
license: "MIT"

#### Citations file related resources:
##
## - [x] GitHub Blog: https://github.blog/2021-08-19-enhanced-support-citations-github/
## - [x] Docs: https://citation-file-format.github.io/
##   - [x] Generate CITATION file: https://citation-file-format.github.io/cff-initializer-javascript/
##   - [x] The `.cff` format and fields: https://github.com/citation-file-format/citation-file-format/blob/main/README.md
##   - [x] The cff schema-guide: https://github.com/citation-file-format/citation-file-format/blob/main/schema-guide.md
## - [x] LinkedIn Post: https://www.linkedin.com/posts/github_enhanced-citation-support-on-github-activity-6834161054352850944-LRDT
## - [x] Others:
##   - [x] https://guides.github.com/activities/citable-code/
##   - [x] https://docs.ropensci.org/cffr/articles/bibtex_cff.html
## - [x] Tools for working with CITATION.cff files
##   - All tools: https://github.com/citation-file-format/citation-file-format#tools-to-work-with-citationcff-files-wrench
##   - [x] doi2cff: 
##     - [x] GitHub: https://github.com/citation-file-format/doi2cff
##   - [x] cffconvert: 
##     - [x] PyPI: https://pypi.org/project/cffconvert/
##     - [x] GitHub: https://github.com/citation-file-format/cff-converter-python
##     - [x] Docker: https://github.com/citation-file-format/citation-file-format#validation-heavy_check_mark
##
##
## This CITATION.cff file was generated with cffinit.
## Visit https://bit.ly/cffinit to generate yours today!

GitHub Events

Total
  • Watch event: 4
Last Year
  • Watch event: 4

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 169
  • Total Committers: 3
  • Avg Commits per committer: 56.333
  • Development Distribution Score (DDS): 0.278
Past Year
  • Commits: 9
  • Committers: 2
  • Avg Commits per committer: 4.5
  • Development Distribution Score (DDS): 0.111
Top Committers
Name Email Commits
Sugato Ray r****o@g****m 122
Sugato Ray s****y@u****m 46
dependabot[bot] 4****]@u****m 1

Issues and Pull Requests

Last synced: 9 months ago

All Time
  • Total issues: 0
  • Total pull requests: 10
  • Average time to close issues: N/A
  • Average time to close pull requests: about 2 hours
  • Total issue authors: 0
  • Total pull request authors: 3
  • Average comments per issue: 0
  • Average comments per pull request: 2.2
  • Merged pull requests: 8
  • Bot issues: 0
  • Bot pull requests: 2
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
  • sugatoray (8)
  • imgbot[bot] (1)
  • dependabot[bot] (1)
Top Labels
Issue Labels
Pull Request Labels
dependencies (1)

Packages

  • Total packages: 2
  • Total downloads:
    • pypi 380 last-month
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 1
    (may contain duplicates)
  • Total versions: 13
  • Total maintainers: 1
pypi.org: genespeak

A library to encode text as DNA and decode DNA to text.

  • Versions: 9
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 380 Last month
Rankings
Dependent packages count: 10.1%
Stargazers count: 17.1%
Dependent repos count: 21.6%
Average: 24.8%
Forks count: 29.8%
Downloads: 45.2%
Maintainers (1)
Last synced: 12 months ago
conda-forge.org: genespeak

<a href="https://github.com/sugatoray/genespeak/"> <img src="https://raw.githubusercontent.com/sugatoray/genespeak/master/docs/assets/images/genespeak_banner_01.png" alt="genespeak-banner" /> </a> GeneSpeak allows you to encode regular text as DNA using base-pairs (`A`, `C`, `G`, `T`) and convert back to the original text. Text encoding is done for both `ascii` and `utf-8` characters based on the `strategy` keyword argument. PyPI: [https://pypi.org/project/genespeak/](https://pypi.org/project/genespeak/)

  • Versions: 4
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 34.0%
Average: 49.5%
Dependent packages count: 51.2%
Stargazers count: 51.9%
Forks count: 61.1%
Last synced: 5 months ago

Dependencies

requirements/docs.txt pypi
  • markdown-include >=0.6.0
  • mdx-include >=1.4.1
  • mdx_truly_sane_lists >=1.2
  • mkapi *
  • mkautodoc *
  • mkdocs *
  • mkdocs-autorefs >=0.3.1
  • mkdocs-awesome-pages-plugin >=2.5.0
  • mkdocs-bibtex >=1.0.0
  • mkdocs-coverage >=0.2.4
  • mkdocs-drawio-exporter >=0.8.0
  • mkdocs-enumerate-headings-plugin >=0.4.5
  • mkdocs-exclude >=1.0.2
  • mkdocs-gen-files >=0.3.3
  • mkdocs-git-revision-date-plugin >=0.3.1
  • mkdocs-include-markdown-plugin >=3.2.3
  • mkdocs-jupyter >=0.18.2
  • mkdocs-kroki-plugin >=0.2.0
  • mkdocs-macros-plugin >=0.6.0
  • mkdocs-markdownextradata-plugin >=0.2.4
  • mkdocs-markmap >=2.1.2
  • mkdocs-material ==8.1.3
  • mkdocs-material-extensions >=1.0.3
  • mkdocs-minify-plugin >=0.4.1
  • mkdocs-pdf-export-plugin >=0.5.9
  • mkdocs-redirects >=1.0.3
  • mkdocs-table-reader-plugin >=0.6
  • mkdocs-tooltips >=0.1.0
  • mkdocs-tooltipster-links-plugin >=0.1.0
  • mkdocstrings >=0.16.2
  • pygments *
  • pymdown-extensions >=9.0
pyproject.toml pypi
setup.py pypi