A tool that injects a ClojureScript Figwheel repl into webpages
chrepl allows you to quickly show a prospective client how your code can improve their website.
ClojureScript is a web programming language based on Clojure, which is derived from Lisp. Lisps have one of the most dynamic programming feedback tools available: the Read, Eval, Print, Loop; or REPL.
In the ClojureScript community, we like to build websites using the live feedback of a REPL. However, we normally compile our REPL functionality into a development version of our website which, in turn, connects back to our REPL server. This chrepl tool allows you to inject client-side REPL functionality into any website on any Chrome tab.
chrepl can be thought of as similar to tampermonkey, but with a live REPL and the full power of ClojureScript. You could even bring in casper.js and automate the web from the comfort of a REPL.
Start REPLing the internet by
1. Installing the clj tool (https://clojure.org/guides/getting_started#_clojure_installer_and_cli_tools)
2. Setting up a compatible project (https://github.com/johnmn3/chrepl-example)
Once this extension is installed, you can just click the "inject" button from the extension's popup and a REPL connection will be established.
Under the hood, chrepl uses the following libraries:
* Bruce Hauman's Figwheel REPL server and client
* Antonin Hildebrand's Chromex and Devtools
This tool is free to use for non-commercial purposes. For commercial use, or to simply contribute to the project, there is a subscription fee of $0.99 a month.
My name is John Newman and I enjoy making tools and libraries for the Clojure/Script community. The story on how this extension came about is pretty simple. Some of my client work involves producing self-contained artifacts that augment the behavior or appearance of existing, sometimes legacy websites. In order to effectively instrument and augment their site, I would usually need a locally running copy of their site that I could integrate a ClojureScript REPL into. This can sometimes take hours or days to get setup. If only I could inject a REPL into existing websites, I wouldn't need to develop against a locally running instance. Thus, chrepl was born. Now, I can jump on a Zoom or Skype call with a potential client and show them augmentations to their site (or any site they choose) right there, in the call. I'm pretty excited to use it in future client calls and I hope you will be too!
Check out the website https://chrepl.app for more information.