A library to encode text as DNA and decode DNA to text.
Project description
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
pip install genespeak
Install with conda
conda install -c conda-forge genespeak
Quickstart ⚡
See the quickstart guide here.
| Service | Link/Badge |
|---|---|
| Colab | |
| Binder | |
| SageMaker StudioLab |
Demo App ✨
You can play around with GeneSpeak in this streamlit app: https://tinyurl.com/genespeak-demo
Usage ✋
import genespeak as gp
print(f'{gp.__name__} version: {gp.__version__}')
schema = "ATCG" # (1)
strategy = "ascii" # (2)
text = "Hello World!"
dna = gp.text_to_dna(text, schema=schema)
text_from_dna = gp.dna_to_text(dna, schema=schema)
print(f'Text: {text}\nEncoded DNA: {dna}\nDecoded Text: {text_from_dna}\nSuccess: {text == text_from_dna}')
Output
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.
@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 |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file genespeak-0.0.9.tar.gz.
File metadata
- Download URL: genespeak-0.0.9.tar.gz
- Upload date:
- Size: 12.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
349bf672831c431c9201911c16fe80a820375fc8c1b7669f746ecc8905b1ca6d
|
|
| MD5 |
8cc620593994ada9baf6a0e554357bb0
|
|
| BLAKE2b-256 |
9da58ec8af5e8fa45735dde253d21bca035e8fe97bce86cfc8e2ef7599af4543
|
File details
Details for the file genespeak-0.0.9-py3-none-any.whl.
File metadata
- Download URL: genespeak-0.0.9-py3-none-any.whl
- Upload date:
- Size: 9.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aeef7240c6e4e8cedc5b3078e96383890838a9fecbb7d832ca6fd225160e9940
|
|
| MD5 |
9bcfcf424428777b13e7220550d2dd1d
|
|
| BLAKE2b-256 |
a5a29371181544c8b6a82ba452a245ea94ce3c2f7db56d56b827b96f0894d713
|