Skip to content
/ scout Public

Using High-Level Design Constraints to Automatically Generate Design Alternatives

License

Notifications You must be signed in to change notification settings

uwplse/scout

Repository files navigation

Scout

MacOS Install Instructions.

XCode Setup (if not already installed)

Install XCode through the app store installer.

After installing XCode, install the XCode developer tools using the command:

xcode-select --install

Repo Setup

Clone the Scout repository from GitHub.

git clone https://github.com/uwplse/scout.git
cd scout

Python Setup

Make sure you have Python 3 installed (3.5 or higher).

Install 'virtualenv' through the command

pip install virtualenv 

Create the virtual environment

virtualenv --python=python3.X scout

Activate the virtual environment

source scout/bin/activate

Install Python packages

pip install -r requirements.txt

Install Z3

*** Make sure you have the Python virtual environment created above still activated when you build/install Z3.

Clone Z3 into the same directory as scout. 

The structure should be: 
	GitHub/
		scout
		z3

git clone https://github.com/Z3Prover/z3 
cd z3
python scripts/mk_make.py --python # Compile Z3 with Python bindings 
cd build
make    # (Takes ~20 minutes on a standard MacBook Pro)
make install

Compiling the web application

Install NodeJS and npm if you do not already have them.

https://www.npmjs.com/get-npm

OR

brew install node

Install the npm packages for building the web application.

cd scout 
cd static
npm install 
npm run watch # Build the web page and watch for changes to the JS code

If you want to just build the web application without watching for changes to the JS:

cd scout
cd static 
npm run build

Running the Scout server

cd scout
./run.sh

Opening Scout

Open http://localhost:5000/

Deploying Scout to a Docker machine on Heroku

Instructions TBD

xd_plugin_diversity

This is an xd plugin that we used to export a JSON tree with the data required for measuring spatial diversity across pairs of layouts in the evaluation. The plugin prints a JSON tree to the console, which needs to be copied to another file to run the analysis scripts. S

About

Using High-Level Design Constraints to Automatically Generate Design Alternatives

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published