Jacquard is a Python tool for encoding files into DNA sequences and decoding them back. It is a modified Goldman algorithm [1] and adapted from the DNA script.
This repository provides a modified version of the Goldman code to encode and decode various types of digital data into DNA sequences. The program runs on Python 3. For more information on the original Goldman code, please refer to [1].
To install Jacquard, use the following command:
pip install git+https://github.com/textaDNA/Jacquard.gitAlternatively, you can install Jacquard using setup.py with the following command:
python setup.py installOnce installed, you can use the following commands in the terminal based on what you want to achieve:
dna [option] file-h, --help: Show the help message and exit.-e: Encode the file and save it as.dna.-s: Encode the file and save it as.splitted.zip.-d: Decode the.dnafile and save it as.decoded.-j: Decode the.splitted.zipfile and save it as.decoded.
To encode a file "quote":
dna -e /path/to/quote.txtThe resulting DNA string will be saved in the same directory. To decode it:
dna -d /path/to/quote.txt.dnaEnsure you provide the correct file extension according to the command you want to use.
In the textaDNA project, we have used this code to encode a short quote and the logo of the research center CiC Nanogune. The resulting sequenced files are then used to decode the files back. Illumina seuencing results of the DNA oligo pool obtained from the encoded quote can be found in the ENA repository, and here in Examples you can find the filtered representatives clusters and the zip file used to decode the message back.
This project is licensed under the MIT License. See the LICENSE file for details.