poly

package module
v0.31.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 31, 2024 License: MIT Imports: 0 Imported by: 0

README

(Poly)merase

PkgGoDev GitHub license Tests Test Coverage

Poly is a Go package for engineering organisms.

  • Fast: Poly is fast and scalable.

  • Modern: Poly tackles issues that other libraries and utilities just don't. From general codon optimization and primer design to circular sequence hashing. All written in a language that was designed to be fast, scalable, and easy to develop in and maintain. Did we say it was fast?

  • Reproducible: Poly is well tested and designed to be used in industrial, academic, and hobbyist settings. No more copy and pasting strings into random websites to process the data you need.

  • Ambitious: Poly's goal is to be the most complete, open, and well used collection of computational synthetic biology tools ever assembled. If you like our dream and want to support us please star this repo, request a feature, open a pull request, or sponsor the project.

Install

go get github.com/bebop/poly@latest

Documentation

Community

  • Discord: Chat about Poly and join us for game nights on our discord server!

Contributing

  • Code of conduct: Please read the full text so you can understand what we're all about and remember to be excellent to each other!

  • Contributor's guide: Please read through it before you start hacking away and pushing contributions to this fine codebase.

Sponsor

  • Sponsor: 🤘 Thanks for your support 🤘

License

  • MIT

  • Copyright (c) 2023 Timothy Stiles

Documentation

Overview

Package poly is a Go package for engineering organisms.

Synthetic biology has a software problem. I.E almost all of our field's software is slow, hard to maintain, and even harder to deploy.

Poly solves that problem by providing a highly tested suite of common functions for engineering organisms through a simple interface in Go.

The reason why Go was chosen is that it's a highly popular language with a simple syntax and a large ecosystem of packages that makes it *extremely* easy to learn, use, and deploy. It's also on average 25X faster and more energy efficient that Python.

Eventually we intend for poly to provide all the functionality needed such that users can use it to engineer proteins which they can then optimize and insert into their organisms of choice.

We've made great progress and are always looking for more support!

tl;dr

Poly is awesome.

Throw money at Tim's github sponsors page: https://github.com/sponsors/TimothyStiles

Browse our subpackages to find the functionality and documentation you need: https://pkg.go.dev/github.com/bebop/poly#section-directories

Directories

Path Synopsis
Package alphabet provides structs for defining biological sequence alphabets.
Package alphabet provides structs for defining biological sequence alphabets.
Package checks provides utilities to check for certain properties of a sequence.
Package checks provides utilities to check for certain properties of a sequence.
Package clone provides functions for cloning DNA sequences.
Package clone provides functions for cloning DNA sequences.
Package fold is a package for folding DNA and RNA sequences into secondary structures.
Package fold is a package for folding DNA and RNA sequences into secondary structures.
io
Package io provides utilities for reading and writing sequence data.
Package io provides utilities for reading and writing sequence data.
fasta
Package fasta contains fasta parsers and writers.
Package fasta contains fasta parsers and writers.
fastq
Package fastq contains fastq parsers and writers.
Package fastq contains fastq parsers and writers.
genbank
Package genbank provides genbank parsers and writers.
Package genbank provides genbank parsers and writers.
gff
Package gff provides gff parsers and writers.
Package gff provides gff parsers and writers.
pileup
Package pileup contains pileup parsers and writers.
Package pileup contains pileup parsers and writers.
polyjson
Package polyjson provides utilities to read and write poly.Sequence structs as JSON.
Package polyjson provides utilities to read and write poly.Sequence structs as JSON.
rebase
Package rebase contains a rebase parser for rebase data dump #31.
Package rebase contains a rebase parser for rebase data dump #31.
slow5
Package slow5 contains slow5 parsers and writers.
Package slow5 contains slow5 parsers and writers.
uniprot
Package uniprot provides an XML parser for Uniprot data dumps.
Package uniprot provides an XML parser for Uniprot data dumps.
Package primers provides utilities for creating primers and DNA barcodes.
Package primers provides utilities for creating primers and DNA barcodes.
pcr
Package pcr designs and simulates simple PCR reactions.
Package pcr designs and simulates simple PCR reactions.
Package random provides functions to generate random DNA, RNA, and protein sequences.
Package random provides functions to generate random DNA, RNA, and protein sequences.
Package search provides utilities for searching sequence data.
Package search provides utilities for searching sequence data.
align
Package align is a package for aligning (comparing) DNA, RNA, and protein sequences.
Package align is a package for aligning (comparing) DNA, RNA, and protein sequences.
align/matrix
Package matrix provides a variety of alignment scoring matrices for sequence alignment.
Package matrix provides a variety of alignment scoring matrices for sequence alignment.
bwt
Package bwt is a package for performing burrows-wheeler transforms on sequences.
Package bwt is a package for performing burrows-wheeler transforms on sequences.
mash
Package mash is for sketching sequence data to make it easier to compare to other sequence.
Package mash is for sketching sequence data to make it easier to compare to other sequence.
Package seqhash contains the seqhash algorithm.
Package seqhash contains the seqhash algorithm.
Package synthesis provides utilities for preparing DNA to be synthesized.
Package synthesis provides utilities for preparing DNA to be synthesized.
codon
Package codon is a package for optimizing codons for expression when synthesizing DNA.
Package codon is a package for optimizing codons for expression when synthesizing DNA.
fix
Package fix fixes synthetic DNA molecules in preparation for synthesis.
Package fix fixes synthetic DNA molecules in preparation for synthesis.
fragment
Package fragment optimally fragments DNA for GoldenGate systems.
Package fragment optimally fragments DNA for GoldenGate systems.
Package transform provides functions for transforming sequences.
Package transform provides functions for transforming sequences.
variants
Package variants contains a function for generating all variants of a sequence.
Package variants contains a function for generating all variants of a sequence.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL