Show HN: REPL-Driven Development for JavaScript

44
Show HN: REPL-Driven Development for JavaScript

noun: skerrick
the smallest bit.
“there’s not a skerrick of food in the house”

⚠️ IMPORTANT ⚠️

THIS PROJECT IS IN ALPHA STATE!
I WOULD APPRECIATE IT IF YOU REPORT ANY BUGS/ISSUES YOU FIND. MAYBE EVEN CONTRIBUTE PATCHES/FIXES IF YOU HAVE THE TIME 😉

Why should I care?

  • REPL-driven development for Javascript
    • Programming in tiny increments – Apply patches to your running program without having to restart it
    • Tell me more!

Inspired by (check them out!):

  • SLIME: The Superior Lisp Interaction Mode for Emacs
  • CIDER: The Clojure(Script) Interactive Development Environment that Rocks!
  • Calva: integrated REPL powered environment for enjoyable and productive Clojure and ClojureScript development in Visual Studio Code

(but for Javascript!)

VSCode

Documentation

Emacs

Demos

Basic

Basic usage

Module support

Module support

Requirements

  • node/npm installed and accessible by Emacs

Installation

  • skerrick isn’t in MELPA yet. You can clone this repo and evaluate skerrick.el in the meantime or use straight. For example, if you use Doom:
(package! skerrick
  :recipe (:host github :repo "anonimitoraf/skerrick"))

Configuration

Configuration Desc Default
skerrick-server-port Port to run the skerrick server on 4321
skerrick-result-overlay-face Face used to display evaluation results
skerrick-result-overlay-char-count-trunc Results with char count longer than this are truncated 120

Usage

Command Desc
skerrick-install-or-upgrade-server-binary Needs to be run on the very first install of skerrick. Or when you want to upgrade.
skerrick-start-server Starts the server. Note that your current buffer will be evaluated, so you probably want to run this command while being on your program’s entry point file.
skerrick-stop-server Stops the server.
skerrick-eval-region Evaluates the selected region. Shows the eval result as an overlay. Stdout/stderr get written to the buffer *skerrick-stdout-stderr*.

Write a plug-in for your editor/IDE!

TODO

Read More

Charlie Layers
WRITTEN BY

Charlie Layers

Fill your life with experiences so you always have a great story to tell