arikrak/java_visualize
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
java_visualize: visualization for java
David Pritchard (daveagp@gmail.com), created May 2013
This is the frontend for a Java version of Philip Guo's Python visualizer.
Try it at:
http://cscircles.cemc.uwaterloo.ca/java_visualize/
Whereas the OPT repo contains both a frontend and backend, the setup
to make this work in Java consists of entirely replacing the backend,
and then tweaking the frontend only where needed.
INSTALLATION
We assume you have already installed (requires root access):
https://github.com/cemc/safeexec
https://github.com/daveagp/java_jail
See the instructions therein for details.
Next, in some folder accessible to your web server,
git clone https://github.com/daveagp/java_visualize
cd java_visualize
git clone https://github.com/marijnh/CodeMirror CodeMirror3
git clone https://github.com/cemc/OnlinePythonTutor
(alternatively, install CodeMirror3, OnlinePythonTutor as symlinks or subrepos.
note the name CodeMirror*3* and the *version* of the PythonTutor used.)
At this point, visiting
http://url-referencing-java_visualize/
should give you a beautiful (but non-working) frontend, and
http://url-referencing-java_visualize/java_safe_ram_maketrace.php
should give you a "http mangling" error.
Finally, edit the first few lines of
java_safe_ram_maketrace.php
(or use .cfg.php as described therein)
to indicate where you installed safeexec and java_jail
Now try the visualizer out!
MORE INFO
What's inside this directory:
-- index.html is a modified version of visualize.html
-- jv-frontend.js is a modified version of opt-frontend.js
-- java_safe_ram_maketrace.php connects the frontend to the backend
-- example-code is a directory full of example Java files to visualize
Note that in the entire frontend, only java_safe_ram_maketrace.php is a file
written in a server-side language. Everything else we use is static,
although OnlinePythonTutor has some server-side files that this Java
version does not use.
====
The modified files (index.html, jv-frontend.js) retain the MIT license
under which they were published in the OnlinePythonTutor repo.
The other files (java_safe_ram_maketrace.php, example-code/*) are released under
the GNU Affero General Public License, versions 3 or later. See LICENSE
or visit: http://www.gnu.org/licenses/agpl.html
Releases
No releases published
Languages
- JavaScript 49.7%
- Java 35.7%
- PHP 14.5%
- Python 0.1%