Skip to content
Box execute is a npm package to compile/run codes (c,cpp,python) in a virtualized environment, Here virtualized environment used is a docker container. This packages is built to ease the task of running a code against test cases as done by websites used to practice algorithmic coding.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
api
bin
config
dockerfiles
examples
src
tests
.editorconfig API: Add api struture/configuration Feb 4, 2019
.eslintignore
.eslintrc.json
.gitignore
.npmignore Update package directory structure Jan 29, 2019
.npmrc
.travis.yml
CHANGELOG.md
LICENSE Add LICENSE May 1, 2018
README.md
package.json

README.md

Box Execute

Build Status npm 1.0.3 node >=6 dependencies null examples 5

What Is Box-Execute?

Box execute is an npm package to compile/run codes (c,cpp,python) in a virtualized environment, Here virtualized environment used is a docker container. This packages is built to ease the task of running a code against test cases as done by websites used to practice algorithmic coding.

Using Box-Execute

Box-Execute Structure

Language supported by Box-Execute are:

  • c
  • cpp
  • python 2
  • python 3

NOTE: Language support is to be extended.

For each language supported a docker container is present in which all the codes are executed to get the output.

Under the hood

Box-Execute utilises staging architecture in order to run a code an get the output.

  • Stage One:

Container for a particular language is checked for it's status and in case of container "absence" or "not running status" container is started or restarted based on the container status.

NOTE: This stage is executed in all conditions.

  • Stage Two

Source code file is copied in the running container.

NOTE: This stage is executed in all conditions.

  • Stage Three

This stage is only executed in case when source code file is "C" or "CPP" file. Used for compiling C/CPP code.

NOTE: This stage is executed only when source code file is in C/CPP

  • Stage Four

This is the final stage where code is executed to get the output. Streams are used to write data to STDIN.

NOTE: This stage is executed in all conditions.

Future Work

  • Update Error Return On Command Failure

  • Extend Language Support

  • Add CLI tool

  • Explore For Erroneous Conditions

You can’t perform that action at this time.