Skip to content

AxlLind/wasm-sandbox-demo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

98 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WebAssembly Sandbox Demo

This is a demo created to showcase the security and sandbox execution of WebAssembly. It is a basic TicTacToe website where any user is allowed to upload code compiled to WASM that implements a bot that plays TicTacToe. Due to the built in sandboxing of WebAssembly this is safe.

To find out more about the related security and the project as a whole you can read our report here. This was done as a project in the course DD2525 Language-Based Security at KTH.

Screenshots

landing-page

tictactoe

Running locally

The backend

The backend is hosted in a Docker container. It requires docker to be installed on your system. Once it is you can start the backend by running the following commands.

$ cd backend
$ docker-compose up

The frontend

The frontend is a Create React App application. Before running it you need to install the required dependencies via npm install. You can run the frontend server via the following commands.

$ cd frontend
$ npm install
$ npm start

Deploying to Heroku

See HerokuDeployment.md for how to deploy this app to Heroku, a cloud hosting platform.