A JavaScript development environment for Emacs
Clone or download
Permalink
Failed to load latest commit information.
doc Fix invalid default value in documentation Sep 18, 2018
img Rename the project to Indium Apr 13, 2017
screenshots Update screenshots in the readme Aug 1, 2017
server Release v3.1.1 of the server component Sep 17, 2018
sphinx-doc Fix invalid default value in documentation Sep 18, 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 Convert Windows file paths before sending them to the server Sep 14, 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.