genespeak
A library to encode text as DNA and decode DNA to text.
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
Repository
A library to encode text as DNA and decode DNA to text.
Basic Info
Statistics
- Stars: 12
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 10
Topics
Metadata Files
README.md
GeneSpeak 🧬

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 | |
| Binder |
|
| SageMaker StudioLab |
|
| Deepnote |
|
| Kaggle |
|
Demo 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 📚
The genespeak docs are maintained here.
License 📑
The library is available under MIT license.
Citation 🔖
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 👇
[][#gh-sonarcloud-repo] [][#gh-sonarcloud-repo] [][#gh-sonarcloud-repo] [][#gh-sonarcloud-repo] [][#gh-sonarcloud-repo] [][#gh-sonarcloud-repo] [][#gh-ossf-codeql-repo]
Owner
- Name: Sugato Ray
- Login: sugatoray
- Kind: user
- Location: Wisconsin, USA
- Company: University of Wisconsin - Milwaukee
- Website: https://www.linkedin.com/in/sugatoray/
- Twitter: sugatoray
- Repositories: 50
- Profile: https://github.com/sugatoray
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
Top Committers
| Name | 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
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.
- Homepage: https://github.com/sugatoray/genespeak/
- Documentation: https://sugatoray.github.io/genespeak/
- License: MIT License
-
Latest release: 0.0.9
published almost 4 years ago
Rankings
Maintainers (1)
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/)
- Homepage: https://github.com/sugatoray/genespeak/
- License: MIT
-
Latest release: 0.0.9
published almost 4 years ago
Rankings
Dependencies
- 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