Gatsby Material Kit React Starter is the adaptation of Material Kit React to Gatsby.
A proof-of-concept tool for explaining nurse rostering, based on the ArgOpt paradigm (K. Čyras, D. Letsios, R. Misener, F. Toni: Argumentation for Explainable Scheduling. 2019, AAAI), built upon ArgOpt implementation.
Participated at The Great Exhibition Road Festival and competed in British Computer Society (BCS) Specialist Group on AI (SGAI) Machine Intelligence Competition.
See video introducing the tool.
The following assumes execution via PowerShell (see e.g. for a basic tutorial)
Requirements:
- Python 3
- Node.js
- yarn
- GLPK solver
- download and extract the source (.zip) with executables (to e.g.
..\glpk-4.65
) - add the directory path (e.g.
..\glpk-4.65\w64
) with the relevant version executables to PATH (PC > Properties > Advanced System Settings (System Properties) > Advanced > Environment Variables > Path > Edit > New) glpsol
to check if the solver works- this may still not be enough for Python to be able to use GLPK, so the easiest fix is to locate the appropriate version of
glpsol.exe
(e.g. in..\glpk-4.65\w64
) and copy it to Python's Scripts directory (e.g.C:\Program Files (x86)\Python38-32\Scripts\
)
- download and extract the source (.zip) with executables (to e.g.
- flask (
pip install flask
) - virtualenv (
pip install virtualenv
)- to run the virtual environment script you'll need to have PowerShell Execution Policy set correctly, e.g.
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
- to run the virtual environment script you'll need to have PowerShell Execution Policy set correctly, e.g.
- pillow (
pip install pillow
) - pyomo (
pip install pyomo
)
- In ./
npm install
npm install -g gatsby-cli
yarn install
cd backend/aes-master/
virtualenv venv
venv/Scripts/activate
pip install -r requirements.txt
cd ../../frontend
yarn add react react-dom
- In /backend/aes-master/
venv/Scripts/activate
cd src/flask-app/
python -m flask run
to activate Python's virtual environment and run flask
- In /frontend/ (on a new terminal)
gatsby develop
to run gatsby
-
Access web app on http://localhost:8000/
-
Deactivate Python's venv after use
deactivate
- To rebuild the virtual environment:
python -m venv venv
cd backend/aes-master/
pip install -r requirements.txt
-
(2020-01-10) While installing from
requirements.txt
issues withgreenlet
may persist on e.g. Python 3.8. This may be because the required wheel is not on PyPi and has to build locally from the source. The latter requires a C compiler to develop Python extensions, e.g. Visual C++. However, another solution is to get the latest precompiled greenlet wheel (e.g. greenlet-0.4.15-cp38-cp38-win32.whl) and install if from the virtual environmentpip install ..\greenlet-0.4.15-cp38-cp38-win32.whl
just for this project. -
The virtual environment may complain about lacking packages, such as tornado, matplotlib etc. Just install them
pip install tornado
pip install matplotlib
pip install pyutilib
Requirements:
- Python 3
- yarn
- Node.js
- GLPK solver
- flask (
pip install flask
) - virtualenv (
pip install virtualenv
)
- In ./
npm install
npm install -g gatsby-cli
yarn install
cd backend/aes-master/
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
cd ../../frontend
yarn add react react-dom
- In /backend/aes-master/
source venv/bin/activate
cd src/flask-app/
python -m flask run
to activate Python's virtual environment and run flask
- In /frontend/ (on a new terminal)
gatsby develop
to run gatsby
-
Access web app on http://localhost:8000/
-
Deactivate Python's venv after use
deactivate