Web Pipeline For Flux Balance Analysis (Constraint Based Model).
This repository was created as a part of Google Summer of Code 2019.
This application makes use of docker and docker compose, so first install them. Learn more about this here.
Run the following commands to start the application:
docker-compose build
docker-compose up
-
Incase you run into errors and want to stop the network:
docker-compose down
- It will stop containers and removes containers, networks, volumes, and images created by
docker-compose up.
- It will stop containers and removes containers, networks, volumes, and images created by
After this open up a browser and go to http://localhost:3000
|- client -> Contains the code of the react client
|-cypress -> Unit tests for UI
|- src -> Source files of the react client
|- assets -> Images
|- components -> React components
|- store -> State Management store
|- server -> Contains the code of the node server
|- routes -> API routes
|- controllers -> API controllers
|- models -> Sequelize(SQL) models
|- config -> Configuration files for the database
|- pythonScripts -> Python scripts for parsing and analysing models
|- scripts -> scripts to handle backend architecture
|- docker-compose.yml -> Docker Compose files that runs the application using docker
|- package.json -> The main package.json governing the yarn workspaces
|- README.md -> The main documentation file. Also this file :)
Follow the instructions below to get the app up and running in development:
-
You need Node & Yarn to run this application. Download them here - Node, Yarn. Further you also need a server of a postgresql database running. Learn more about postgresql here.
-
First you will need to install the dependencies of the project. Do that by running this:
-
For the client
cd client yarn
-
For the server
cd server yarn
-
-
Next you have to setup an environment file (.env) with appropriate variables in the /server folder, an example .env would look like this:
SERVER_PORT = /* Specifiy a port here (Optional) */ DB_NAME = /* Your database name */ DB_USER = /* Your database user */ DB_PASSWORD = /* Your database user's password */ DB_HOST = /* Your database host (Optional) */
-
Then run the following command to start both the React Client and Node Server(concurrently):
yarn dev
-
To run unit tests:
- You can change configuration of cypress in
client/cypress.json
cd client yarn run cypress open
- You can change configuration of cypress in
-
You can download a SBML file from the following link incase you don't have a file which is formatted for constraint based models(FBA models).