IDE toolkit for Atom
JavaScript CoffeeScript CSS
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
demos update readme with demos Sep 17, 2015
docs cursor css Dec 27, 2017
keymaps misc bugfixes Dec 31, 2017
lib revert last commits Jul 12, 2018
menus misc bugfixes Dec 31, 2017
res new block highlight style Jul 23, 2015
scripts update katex to 0.9.0 May 17, 2018
spec fix specs May 25, 2017
styles revert last commits Jul 12, 2018
.gitignore cursor css Dec 27, 2017
.travis.yml fix travis for 1.19 Jun 17, 2017
CHANGELOG.md update changelog Dec 11, 2016
LICENSE.md cursor css Dec 27, 2017
README.md cursor css Dec 27, 2017
appveyor.yml update appveyor config Sep 23, 2016
package-lock.json Prepare 0.8.6 release Jul 12, 2018
package.json Prepare 0.8.6 release Jul 12, 2018

README.md

Ink

Build Status Build status Chat

Ink is a toolkit for building IDEs in Atom – in particular, it's aimed at providing the UI pieces necessary to build richly interactive, live environments for programming – inspired by the likes of SmallTalk, Lisp, LightTable, DevTools, Swift, and others.

Ink is currently used primarily from the julia-client plugin as an IDE for the Julia language, as well as the awesome proto-repl for Clojure. Although Ink is in an early state, people interested in getting it running with other languages are welcome to reach out.

Highlights

(These demos show off Ink as part of Julia since it's the most mature project using Ink, but there's nothing Julia-specific about Ink's design)

Evaluation of blocks and lines, with inline results, highlighting of the evaluated block, and loading indicators:

Smart tree views for complex results and data:

A rich console with the same support for results, as well as history, shell modes etc.:

Smart errors with live links to files in the backtrace, as well as highlighting of those lines:

In future Ink will also support UIs for debugging (e.g. breakpoints), graphics (e.g. plotting panes), documentation (e.g. single-keystroke access to inline docs) and profiling/coverage results (e.g. inline "progress bars" and metrics overlaid with the code).