GSL (Genotype Specification Language) is a programming language developed by Amyris for the rapid design of high level DNA components. GSL is an open-source project, written in F# and is available on Git here.
This GSL Editor extension provides an interface to execute GSL code within the Genetic Constructor, and render the results as block constructs. It currently supports the S288C, BY4741 and BY4742 genomes. To use a specific genome in your GSL code, preceed your code with a valid #refgenome
statement (eg. To refer to genes from the S288C genome, use #refgenome S288C
). More information on the GSL syntax here.
Install the module dependencies via npm.
npm install
For a debuggable, non minified build run
npm run debug
Or, or for a minified production build run
npm run release
This will build the client into ./dist/index.js
.
For fast development, use...
npm run watch
This builds the debug version of the client (./dist/index.js
) and continues to watch the project for changes, recompiling on all changes.
It is recommended that you use npm link
as documented here for faster development.
First, update the version in package.json and tag your code using the following command:
npm run version patch -m "Upgrade to %s for reasons"
npm push origin master
npm push --tags
Then publish your new version to npm with:
npm publish
Now you can reference the new version number in GC.
This consists of a stand-alone client package compiled into the Genetic Constructor application.
To learn more about the Genotype Specification Language, you could look at the documentation here or in the GSL respository here.
Alt + Space
lists the available keywords, snippets and Genes.Ctrl + Shift + S
lists the available snippets.Cmd + F
orCtrl + F
brings up the search bar.Cmd + Enter
runs the code in the editor.