WorldsEndless
WorldsEndless

Reputation: 1494

Connect Cider to Luminus +CLJS Figwheel repl

I've had pretty simple use of Cider REPL in the past; within a project's clj file I use cider-jack-in and I'm good to go (assuming the following in my .lein/profiles.clj

;; ~/.lein/profiles.clj
{:user {:plugins [[lein-localrepo "0.5.2"]
          [cider/cider-nrepl "0.10.0-SNAPSHOT"]]
    :dependencies [[org.clojure/tools.nrepl "0.2.7"]]
    }}

Now out of the box I do:

<user> Clojure/ 17:44$ lein new luminus wants-cider +cljs
Generating a Luminus project.
<user> Clojure/ 17:45$ cd wants-cider/
<user> wants-cider/ 17:45$ lein run
15-Sep-17 17:45:59 user-linuxbox INFO [wants-cider.core] - nREPL server started on port 7000
15-Sep-17 17:45:59 user-linuxbox INFO [wants-cider.handler] - 
-=[wants-cider started successfully using the development profile]=-
17:45:59.789 INFO  [org.projectodd.wunderboss.web.Web] (main) Registered web context /
15-Sep-17 17:45:59 user-linuxbox INFO [wants-cider.core] - server started on port: 3000

# new shell
<user> wants-cider/ 17:50$ lein figwheel
Figwheel: Starting server at http://localhost:3449
Focusing on build ids: app
Compiling "resources/public/js/app.js" from ["src-cljs" "env/dev/cljs"]...
Successfully compiled "resources/public/js/app.js" in 5.757 seconds.
Started Figwheel autobuilder
WARNING: unable to load "cemerick.piggieback/wrap-cljs-repl" middleware

Launching ClojureScript REPL for build: app

# ... insructions ...

Prompt will show when figwheel connects to your application
To quit, type: :cljs/quit
cljs.user=> 

From here, how can I connect my Cider REPL?

Upvotes: 4

Views: 1686

Answers (1)

zarkone
zarkone

Reputation: 1355

You must have figwheel nrepl options to be specified, in :profiles :dev section of project.clj:

 :profiles {:dev {
                   ;; ....
                   :figwheel {:nrepl-port 7888 }

Then connect to nrepl from CIDER:

C-c M-c <or> M-x cider-connect
;; enter figwheel host, port, in this case -- localhost, 7888
;; then, in appeared REPL buffer:
user> (use 'figwheel-sidecar.repl-api)
user> (cljs-repl)
cljs.user=> 

info: https://github.com/bhauman/lein-figwheel/wiki/Using-the-Figwheel-REPL-within-NRepl

Upvotes: 4

Related Questions