Documentation ¶
Index ¶
- func Annotate(cmd *cobra.Command, args []string)
- func Features(flags *Flags, conf *config.Config) [][]*Frag
- func FeaturesCmd(cmd *cobra.Command, args []string)
- func FragmentFindCmd(cmd *cobra.Command, args []string)
- func FragmentsCmd(cmd *cobra.Command, args []string)
- func Sequence(flags *Flags, conf *config.Config) [][]*Frag
- func SequenceCmd(cmd *cobra.Command, args []string)
- func SequenceFindCmd(cmd *cobra.Command, args []string)
- type Backbone
- type EnzymeDB
- type FeatureDB
- type Flags
- type Frag
- type Output
- type Primer
- type Solution
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Annotate ¶
Annotate is for annotating a plasmid sequence given the features in the feature database. If an output path is provided, the annotated plasmid is writen to that file. Otherwise, the feature matches are written to stdout.
func Features ¶
Features assembles a plasmid with all the Features requested with the 'repp Features [feature ...]' command repp assemble Features p10 promoter, mEGFP, T7 terminator
func FeaturesCmd ¶
FeaturesCmd accepts a cobra commands and assembles a plasmid containing all the features
func FragmentFindCmd ¶
FragmentFindCmd logs the building fragment with the name passed.
func FragmentsCmd ¶
FragmentsCmd accepts a cobra commands and assembles a list of building fragments in order
func SequenceCmd ¶
SequenceCmd takes a cobra command (with its flags) and runs plasmid.
func SequenceFindCmd ¶
SequenceFindCmd is for BLAST'ing a sequence against the dbs and finding matches
Types ¶
type Backbone ¶
type Backbone struct { // URL of the backbone fragment's source URL string `json:"url"` // Seq is the sequence of the backbone (unlinearized) Seq string `json:"seq"` // Enzymes is the list of enzymes names used to linearize the backbone Enzymes []string `json:"enzymes"` // cutsites are the indexes where the backbone was cleaved Cutsites []int `json:"recognitionIndex"` // Strands of each cut direction. True if fwd, False if rev direction Strands []bool `json:"strands"` }
Backbone is for information on a linearized backbone in the output payload
type EnzymeDB ¶
type EnzymeDB struct {
// contains filtered or unexported fields
}
EnzymeDB is a struct for accessing repps enzymes db.
type FeatureDB ¶
type FeatureDB struct {
// contains filtered or unexported fields
}
FeatureDB is a struct for accessing repps features db
func NewFeatureDB ¶
func NewFeatureDB() *FeatureDB
NewFeatureDB returns a new copy of the features db
type Flags ¶
type Flags struct {
// contains filtered or unexported fields
}
Flags contains parsed cobra Flags like "in", "out", "dbs", etc that are used by multiple commands.
type Frag ¶
type Frag struct { // ID is a unique identifier for this fragment ID string `json:"id,omitempty"` // type of the fragment in string representation for export Type string `json:"type"` // Cost to make the fragment Cost float64 `json:"cost"` // URL, eg link to a plasmid's addgene page URL string `json:"url,omitempty"` // fragment/plasmid's sequence Seq string `json:"seq,omitempty"` // sequence of a pcr fragment after PCR's addition of bp PCRSeq string `json:"pcrSeq,omitempty"` // primers necessary to create this (if pcr fragment) Primers []Primer `json:"primers,omitempty"` // contains filtered or unexported fields }
Frag is a single building block stretch of DNA for assembly
type Output ¶
type Output struct { // Target's name. In >example_CDS FASTA its "example_CDS" Target string `json:"target"` // Target's sequence TargetSeq string `json:"seq"` // Time, ex: "2018-01-01 20:41:00" Time string `json:"time"` // Execution is the number of seconds it took to execute the command Execution float64 `json:"execution"` // Solutions builds Solutions []Solution `json:"solutions"` // Backbone is the user linearized a backbone fragment Backbone *Backbone `json:"backbone,omitempty"` }
Output is a struct containing design results for the assembly.
type Primer ¶
type Primer struct { // Seq of the primer (in 5' to 3' direction) Seq string `json:"seq"` // Strand of the primer; true if top strand, false if complement Strand bool `json:"strand"` // Penalty score Penalty float64 `json:"penalty"` // PairPenalty score from primer3 PairPenalty float64 `json:"pairPenalty"` // Tm of the primer Tm float64 `json:"tm"` // GC % max GC float64 `json:"gc"` // Range that the primer spans on the fragment Range ranged `json:"-"` }
Primer is a single Primer used to create a PCR fragment
type Solution ¶
type Solution struct { // Count is the number of fragments in this solution Count int `json:"count"` // Cost estimated from the primer and sequence lengths Cost float64 `json:"cost"` // Fragments used to build this solution Fragments []*Frag `json:"fragments"` }
Solution is a single solution to build up the target plasmid.