Skip to content

Library for combinatorially specifying, constraining, and exploring genetic design spaces.

License

Notifications You must be signed in to change notification settings

Lattice-Automation/constellation-js

 
 

Repository files navigation

constellation-js

Build Status npm versionCoverage Status

Quickstart

npm install constellation-js
const constellation = require('constellation-js');
var langText = '{a . b}';
var categories = {'a': ['a1', 'a2'], 'b': ['b1']};
var numDesigns = 3;
var cycleDepth = 1

var result = constellation(langText, categories, numDesigns, cycleDepth);

Demos

node demos/server.js

Then view the demo in a browser at http://localhost:8082/.

Dependencies

Supported Operators

a
atom

a or b
or

a then b
then

zero-or-more a
zero

one-or-more a
one

Example

Specification

one-or-more (a or (a then (zero-or-more b)))

Part Categories

{"a": ["a1", "a2"],
"b": ["b1", "b2"]}

Results
Graph
screen shot 2018-01-07 at 5 24 17 pm

Designs:

[
	"a1,b1",
	"a1,b2",
	"a2,b1",
	"a2,b2",
	"a1",
	"a2"
]

Data Structures

Boundary Graph

Node Object

Example

{
  "id": "604571a7-9e38-4647-afd0-9546399480b5",
  "text": "root",
  "type": "root",
  "edges": [
    "b79407eb-95f0-4b78-99da-779f2c9cad46",
    "7f6ca2fb-ef67-4687-924c-4285de896877"]
}

About

Library for combinatorially specifying, constraining, and exploring genetic design spaces.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 99.3%
  • HTML 0.7%