Skip to content

helicopter88/klee-web

 
 

Repository files navigation

Klee Web

Try it out here!

CircleCI

Getting started on development

Make sure you have VirtualBox, Vagrant, and Ansible installed, using the links in this paragraph.

First clone the repo:

git clone https://github.com/klee/klee-web.git

Start the development virtual machine (this may take a while on the first run):

vagrant up

If the command fails during provisioning, you can retry using:

vagrant provision

After provisioning has completed, klee-web will be available at http://192.168.33.10

The klee/klee image is grabbed using docker pull when provisioning occurs.

In order to invoke KLEE (from within the virtual machine):

sudo docker run -t -v PATH_TO_SOURCE_DIR:/code klee/klee clang -I /home/klee/klee_src/include/klee/include -emit-llvm -c -g /code/FILE.c -o /code/FILE.bc
sudo docker run -t -v PATH_TO_SOURCE_DIR:/code klee/klee klee FILE.bc

In order to see any server side changes run (from within the virtual machine):

sudo supervisorctl reload

Running tests

Before submitting a pull request it's a good idea to run our test suite locally with the following command

$ vagrant ssh -c "/titb/run_tests.sh"

Building Frontend

Make sure you have Node and npm installed and that you are inside a machine with a deployed web role (e.g. after vagrant provision).

At the root-level directory:

$ npm install -g bower
$ npm install -g grunt-cli

Then:

$ npm install

Now that Grunt and Bower are installed, install the front-end packages with

$ bower install

Finally, let Grunt do the rest of the work (compiling/minifying SASS/JS etc), with

$ grunt

To watch for changes when modifying SASS, use

$ grunt watch

About

KLEE in the browser

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 42.3%
  • HTML 26.5%
  • JavaScript 17.2%
  • CSS 10.7%
  • C 2.7%
  • Shell 0.6%