chrepl

A tool that injects a ClojureScript Figwheel repl into webpages

什么是chrepl?

chrepl是由http://chrepl.app开发的Chrome扩展程序,该扩展的主要功能是“A tool that injects a ClojureScript Figwheel repl into webpages”。

扩展截图

screenshot

下载chrepl扩展crx文件

下载chrepl扩展crx格式的文件,手动将Chrome插件安装到浏览器中,也可以将crx文件分享给朋友,轻松安装Chrome插件。

扩展使用说明

                        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.                    

扩展基本信息

名称 chrepl chrepl
ID ablpgchfbbfachdiakmieocbdgflgfjj
官方URL https://chrome.google.com/webstore/detail/ablpgchfbbfachdiakmieocbdgflgfjj
简介 A tool that injects a ClojureScript Figwheel repl into webpages
文件大小 4.95 MB
安装次数 41
当前版本 0.5.2
更新时间 2019-03-18
上架时间 2019-03-14
评分 5.00/5 共1次评分
开发者 http://chrepl.app
电子邮箱 [email protected]
付费类型 free
扩展官网 https://chrepl.app
帮助页面URL https://clojurians.zulipchat.com/#narrow/stream/187685-chrepl
隐私政策页面URL https://chrepl.app
支持的语言 en-US
manifest.json
{
    "update_url": "https:\/\/clients2.google.com\/service\/update2\/crx",
    "name": "chrepl",
    "version": "0.5.2",
    "description": "A tool that injects a ClojureScript Figwheel repl into webpages",
    "browser_action": {
        "default_title": "chrepl",
        "default_popup": "popup.html",
        "default_icon": {
            "24": "images\/fuel24.png",
            "48": "images\/fuel48.png"
        }
    },
    "icons": {
        "16": "images\/fuel16.png",
        "48": "images\/fuel48.png",
        "128": "images\/fuel128.png"
    },
    "content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'",
    "background": {
        "page": "background.html",
        "persistent": true
    },
    "permissions": [
        "storage",
        "activeTab"
    ],
    "content_scripts": [
        {
            "matches": [
                ""
            ],
            "js": [
                "compiled\/content.js"
            ],
            "run_at": "document_end"
        }
    ],
    "manifest_version": 2
}