SnapCode is a full-featured Java IDE that runs in the browser. It is free, modern, powerful, tailored for education and is the fastest and easiest way to start writing and sharing Java code. SnapCode offers modern coding features, support for Java REPL (Read-Eval-Print-Loop), support for working with projects in the cloud and full-featured library support for UI, graphics, charting, 3D and more. The full list of compelling advantages includes:
SnapCode is the only full Java IDE that runs in the browser.
Run SnapCode Now
Additionally, SnapCode can be embedded in an HTML page. Any HTML element can be made runnable and editable with only one line of code. See this page for more details:
Embed SnapCode in HTML Page
And here is an example page showing a Java tutorial with SnapCode enhanced code blocks:
Learn Java Tutorial
SnapCode has everything you expect from a modern IDE to make writing code fast and easy:
SnapCode allows you to avoid boilerplate code and evaluates code snippets as you type for instant feedback.
Java REPL support is optional - full Java is supported, and can be auto-generated, for when code needs to be portable and compliant.
SnapCode is built using the SnapKit and SnapCharts libraries giving access to advanced application features.
Because the best line of code is the one you don't have to write, UI is almost always created using the with the integrated UI builder and stored in simple XML files ('.snp' files). Simply create/save a .snp file with the same name as your custom controller class, and the default controller.createUI() method will load it.
Learn the basic concepts of coding in a visual way, by drag and drop. More available here.
Java Markdown (JMD) is a simple extension of standard markdown that adds a new "Runnable block". Simply surround Java code in a standard markdown file with the delimiter '~~~', and code inside that block is compiled, executed and displayed. There is support for a simple show(anything) method that tells the viewer what to display in the block. The parameter can be anything: text, images, views, UI components, charts, etc.
# Java Markdown - run live Java code in a document
~~~
show("Hello World");
~~~
Java Markdown files are edited in SnapCode and can be a part of a full Java project to draw from supporting classes, packages and external library depnencies. JMD can be viewed as a stand-alone browser page or inside SnapCode. This feature is still in development with many improvements to come. Click on this image to see Java Markdown in action:
SnapCode also has an integrated help system to quickly find templates for almost any kind of code.
Many features are on the immediate roadmap:
This project is built with the following tools: