Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
doc Fix a link in the documentation Aug 17, 2018
img Rename the project to Indium Apr 13, 2017
screenshots Update screenshots in the readme Aug 1, 2017
server Bump Indium server version number Aug 16, 2018
sphinx-doc Fix a link in the documentation Aug 17, 2018
test Add regression tests for GH issue #166 Aug 21, 2018
.gitignore Ignore sphinx-doc/_build Apr 6, 2017
.gitlab-ci.yml Update the Makefile to handle the Node server Aug 14, 2018
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md Oct 10, 2017
CONTRIBUTING.md Fix typo in CONTRIBUTING.md. (#147) Feb 28, 2018
LICENSE Add LICENSE and readme Jun 8, 2016
Makefile Update the Makefile to handle the Node server Aug 14, 2018
indium-breakpoint.el Rewrite Indium to work as a client for the new server Aug 14, 2018
indium-chrome.el Rewrite Indium to work as a client for the new server Aug 14, 2018
indium-client.el Do not silence JSON reading error Aug 21, 2018
indium-debugger-litable.el Rewrite Indium to work as a client for the new server Aug 14, 2018
indium-debugger-locals.el Rewrite Indium to work as a client for the new server Aug 14, 2018
indium-debugger.el Update documentation Aug 14, 2018
indium-faces.el Update copyright years Jan 18, 2018
indium-inspector.el Rewrite Indium to work as a client for the new server Aug 14, 2018
indium-interaction.el Rewrite Indium to work as a client for the new server Aug 14, 2018
indium-list-sources.el Rewrite Indium to work as a client for the new server Aug 14, 2018
indium-nodejs.el Rewrite Indium to work as a client for the new server Aug 14, 2018
indium-render.el Rewrite Indium to work as a client for the new server Aug 14, 2018
indium-repl.el Rewrite Indium to work as a client for the new server Aug 14, 2018
indium-scratch.el Rewrite Indium to work as a client for the new server Aug 14, 2018
indium-seq-fix.el Update copyright years Jan 18, 2018
indium-structs.el Rewrite Indium to work as a client for the new server Aug 14, 2018
indium.el Add missing dependency on js2-refactor Aug 16, 2018
readme.md Remove test coverage support Aug 14, 2018

readme.md

Indium

MELPA Emacs build status Documentation Status Liberapay Gitter logo

A JavaScript development environment for Emacs.

Indium connects to a browser tab or nodejs process and provides many features for JavaScript development, including:

  • a REPL (with auto completion) & object inspection;
  • an inspector, with history and navigation;
  • a scratch buffer (M-x indium-scratch);
  • JavaScript evaluation in JS buffers with indium-interaction-mode;
  • a stepping Debugger, similar to edebug, or cider.

Documentation

Installation instruction and other documentation can be found on readthedocs.

WARNING: Indium 2.0 now uses a client/server architecture, see installation instuctions.

Screenshots

The stepping debugger

Debugger

The REPL with company-mode

REPL

The REPL showing clickable output

REPL

The inspector

Inspector

Missing features

Indium is young, here's a list of missing/wanted features

  • Code evaluation using C-x C-e from project JS buffers
  • Adding breakpoints (to remove the need for debugger statements)
  • Network inspector (could get inspiration from restclient.el)
  • DOM inspector
  • Start processes (chromium, node, grunt, gulp, etc.) from Emacs and attach a indium connection to it.

Backends

There is currently support for Chrom[e|ium] & nodejs. The firefox backend is in the TODO list.