# Projects

**URL:** https://clojureverse.org/c/projects/24.md

[Latest](https://clojureverse.org/latest.md) · [Categories](https://clojureverse.org/categories.md) · [Tags](https://clojureverse.org/tags.md)

---

## [About the Projects category](https://clojureverse.org/t/about-the-projects-category/636)

<div class="topic-metadata">

**Author:** [@plexus](https://clojureverse.org/u/plexus)\
**Replies:** 0\
**Last updated:** [November 5, 2017, 2:46pm UTC](https://clojureverse.org/t/about-the-projects-category/636 "2017-11-05T14:46:42Z")

</div>

Project-specific categories (a.k.a. mailing lists). If you’d like a category for your project then post a request in #community-center:clojureverse-meta.

---

## [Shadow-cljs 3.4.x Updates](https://clojureverse.org/t/shadow-cljs-3-4-x-updates/14873)

<div class="topic-metadata">

**Author:** [@thheller](https://clojureverse.org/u/thheller)\
**Replies:** 0\
**Last updated:** [April 11, 2026, 12:00pm UTC](https://clojureverse.org/t/shadow-cljs-3-4-x-updates/14873 "2026-04-11T12:00:13Z")

</div>

I just released the shadow-cljs 3.4.1version which includes a few changes I want to highlight. On the surface not much changes, but quite a few internal changes happened. npm-deps is now manual :npm-deps can be specifie…

---

## [Understanding why (kaocha.repl/run 'my.ns-test) doesn't run my tests](https://clojureverse.org/t/understanding-why-kaocha-repl-run-my-ns-test-doesnt-run-my-tests/14818)

<div class="topic-metadata">

**Author:** [@teodorlu](https://clojureverse.org/u/teodorlu)\
**Replies:** 2\
**Last updated:** [January 6, 2026, 4:46pm UTC](https://clojureverse.org/t/understanding-why-kaocha-repl-run-my-ns-test-doesnt-run-my-tests/14818 "2026-01-06T16:46:31Z")

</div>

Goal I want to use kaocha.repl to run tests inside a library. The REPL has been started from an application that uses the library with a :local/root dependency. kaocha.repl/run not running what I expect I was surprised…

---

## [Kaocha - Clearer reporting](https://clojureverse.org/t/kaocha-clearer-reporting/5761)

<div class="topic-metadata">

**Author:** [@grierson](https://clojureverse.org/u/grierson)\
**Replies:** 2\
**Last updated:** [August 22, 2025, 8:23pm UTC](https://clojureverse.org/t/kaocha-clearer-reporting/5761 "2025-08-22T20:23:13Z")

</div>

Are there any options/reporters that… Clear output before tests run in --watch mode? 1.1 So that old outputs don’t interfere with the latest output Use aviso/pretty with Kaocha? For pretty stacktraces? 2.1 Clear, sho…

---

## [Shadow-cljs 2.25.2 looking for testers](https://clojureverse.org/t/shadow-cljs-2-25-2-looking-for-testers/10206)

<div class="topic-metadata">

**Author:** [@thheller](https://clojureverse.org/u/thheller)\
**Replies:** 11\
**Last updated:** [August 3, 2023, 4:07pm UTC](https://clojureverse.org/t/shadow-cljs-2-25-2-looking-for-testers/10206 "2023-08-03T16:07:39Z")

</div>

Update: Fixed a couple issues, try 2.25.2 I don’t usually do these release announcements, but I just released version 2.25.2 of shadow-cljs and it includes a fairly significant change, where I’d like to crowdsource some…

---

## [Is there a way to have tests run within milliseconds of saving a file?](https://clojureverse.org/t/is-there-a-way-to-have-tests-run-within-milliseconds-of-saving-a-file/9817)

<div class="topic-metadata">

**Author:** [@tommy-mor](https://clojureverse.org/u/tommy-mor)\
**Replies:** 1\
**Last updated:** [February 27, 2023, 10:14pm UTC](https://clojureverse.org/t/is-there-a-way-to-have-tests-run-within-milliseconds-of-saving-a-file/9817 "2023-02-27T22:14:48Z")

</div>

there are a bunch of filewatcher libraries, and the emacs repl and test runner could probably share the same process?

---

## [Cancelling tests that take too long](https://clojureverse.org/t/cancelling-tests-that-take-too-long/4360)

<div class="topic-metadata">

**Author:** [@Miikka](https://clojureverse.org/u/Miikka)\
**Replies:** 2\
**Last updated:** [December 26, 2022, 3:43pm UTC](https://clojureverse.org/t/cancelling-tests-that-take-too-long/4360 "2022-12-26T15:43:41Z")

</div>

Does Kaocha have a way for cancelling tests that run too long? Especially with asynchronous code you can have tests that never finish. For example, I just had a test like this: (deftest promise-test (let \[my-promise (…

---

## [Use ESM with node & shadow-cljs](https://clojureverse.org/t/use-esm-with-node-shadow-cljs/9363)

<div class="topic-metadata">

**Author:** [@iGEL](https://clojureverse.org/u/iGEL)\
**Replies:** 3\
**Last updated:** [September 22, 2022, 10:18am UTC](https://clojureverse.org/t/use-esm-with-node-shadow-cljs/9363 "2022-09-22T10:18:46Z")

</div>

Hello there! I have to admit that I fail at requiring a ESM module in our node js app - The goal is to render parts of our apps on the server side. We have three builds: dev using :target :node-script - This is the o…

---

## [Shadow-grove: A CLJS-native solution for browser based web frontends](https://clojureverse.org/t/shadow-grove-a-cljs-native-solution-for-browser-based-web-frontends/9099)

<div class="topic-metadata">

**Author:** [@thheller](https://clojureverse.org/u/thheller)\
**Replies:** 0\
**Last updated:** [July 9, 2022, 9:04am UTC](https://clojureverse.org/t/shadow-grove-a-cljs-native-solution-for-browser-based-web-frontends/9099 "2022-07-09T09:04:11Z")

</div>

I have been meaning to drop the experimental label from all of this for a while now. A few people have expressed interest in this and asked for a formal release so here it is. I have used this for many years now, so I’…

---

## [Promise handling in CLJS using js-await](https://clojureverse.org/t/promise-handling-in-cljs-using-js-await/8998)

<div class="topic-metadata">

**Author:** [@thheller](https://clojureverse.org/u/thheller)\
**Replies:** 5\
**Last updated:** [June 1, 2022, 10:07am UTC](https://clojureverse.org/t/promise-handling-in-cljs-using-js-await/8998 "2022-06-01T10:07:23Z")

</div>

Recently I had to write some code using Promises and thought it was time for some syntax sugar. So I added a very simplistic macro to basically emulate what JS await does while actually mapping to traditional Promise .th…

---

## [How do you use Shadow-CLJS UI](https://clojureverse.org/t/how-do-you-use-shadow-cljs-ui/8614)

<div class="topic-metadata">

**Author:** [@jacekschae](https://clojureverse.org/u/jacekschae)\
**Replies:** 0\
**Last updated:** [February 6, 2022, 5:10pm UTC](https://clojureverse.org/t/how-do-you-use-shadow-cljs-ui/8614 "2022-02-06T17:10:39Z")

</div>

Here there, I wanted to find out how are you using Shadow-CLJS UI. Could you please share your screenshot in this issue? I would like to implement dark mode but thought it might be helpful to understand how people use it…

---

## [How do you automatically create multiple modules based on the files in a folder](https://clojureverse.org/t/how-do-you-automatically-create-multiple-modules-based-on-the-files-in-a-folder/8421)

<div class="topic-metadata">

**Author:** [@teez](https://clojureverse.org/u/teez)\
**Replies:** 1\
**Last updated:** [December 13, 2021, 6:04am UTC](https://clojureverse.org/t/how-do-you-automatically-create-multiple-modules-based-on-the-files-in-a-folder/8421 "2021-12-13T06:04:49Z")

</div>

Not sure if this use case is supported, or even if it’s a sane one. Basically, I want JS specific to each page. I will have .cljc file for each page. I basically want this file compiled into its own module. So for exampl…

---

## [Modify dev builds to fit inside enterprisey function as a service runtime](https://clojureverse.org/t/modify-dev-builds-to-fit-inside-enterprisey-function-as-a-service-runtime/8368)

<div class="topic-metadata">

**Author:** [@orolle](https://clojureverse.org/u/orolle)\
**Replies:** 3\
**Last updated:** [November 19, 2021, 6:08am UTC](https://clojureverse.org/t/modify-dev-builds-to-fit-inside-enterprisey-function-as-a-service-runtime/8368 "2021-11-19T06:08:12Z")

</div>

In good clojure tradition, I sneaked in some clojure code into my customers enterprise environment. I use shadow-cljs to generate a :node-library from my cljs code. This library is deployed to an enterprisey function as…

---

## [Webworker as a library's dependency](https://clojureverse.org/t/webworker-as-a-librarys-dependency/8277)

<div class="topic-metadata">

**Author:** [@nek](https://clojureverse.org/u/nek)\
**Replies:** 3\
**Last updated:** [October 17, 2021, 7:14pm UTC](https://clojureverse.org/t/webworker-as-a-librarys-dependency/8277 "2021-10-17T19:14:25Z")

</div>

Hello people, Is there any way to use a Web Worker defined in a library as a dependency? I guess not directly, but maybe there are some workarounds. The question comes from the fact, that at the moment I have to use th…

---

## [Generating ES Modules (Browser, Deno, ...)](https://clojureverse.org/t/generating-es-modules-browser-deno/6116)

<div class="topic-metadata">

**Author:** [@thheller](https://clojureverse.org/u/thheller)\
**Replies:** 26\
**Last updated:** [September 7, 2021, 3:35pm UTC](https://clojureverse.org/t/generating-es-modules-browser-deno/6116 "2021-09-07T15:35:25Z")

</div>

ECMAScript Modules (also known as ES Modules or just ESM) were introduced quite a while ago but never were usable with CLJS in a convenient way. A new :target :esm in shadow-cljs attempts to change that by bundling the g…

---

## [Modern JS with CLJS: class and template literals](https://clojureverse.org/t/modern-js-with-cljs-class-and-template-literals/7450)

<div class="topic-metadata">

**Author:** [@thheller](https://clojureverse.org/u/thheller)\
**Replies:** 10\
**Last updated:** [June 14, 2021, 9:23am UTC](https://clojureverse.org/t/modern-js-with-cljs-class-and-template-literals/7450 "2021-06-14T09:23:20Z")

</div>

I added the ability to create JS class and more recently support for JS template strings (optionally tagged) to shadow-cljs. I think they’d be useful additions to CLJS core at some point, but they’ll definitely need more…

---

## [New Build Reports with Dependency Traces](https://clojureverse.org/t/new-build-reports-with-dependency-traces/7653)

<div class="topic-metadata">

**Author:** [@thheller](https://clojureverse.org/u/thheller)\
**Replies:** 1\
**Last updated:** [May 22, 2021, 8:06pm UTC](https://clojureverse.org/t/new-build-reports-with-dependency-traces/7653 "2021-05-22T20:06:13Z")

</div>

Last weekend I rewrote the build report feature a little bit. In the process I added a new feature that will show why certain files were included in a build in a simplistic shortest path graph trace. Basically most sour…

---

## [Using original JS source maps](https://clojureverse.org/t/using-original-js-source-maps/6469)

<div class="topic-metadata">

**Author:** [@mapidentity](https://clojureverse.org/u/mapidentity)\
**Replies:** 9\
**Last updated:** [September 2, 2020, 9:26pm UTC](https://clojureverse.org/t/using-original-js-source-maps/6469 "2020-09-02T21:26:53Z")

</div>

shadow-cljs allows using arbitrary JS files as documented in 12.2.3. JavaScript Dialects. For source maps, shadow-cljs appears to create new ones from the generated (and included) JS files. Is it possible to pass the sou…

---

## [Feedback wanted on new clj-kondo macroexpansion feature](https://clojureverse.org/t/feedback-wanted-on-new-clj-kondo-macroexpansion-feature/6043)

<div class="topic-metadata">

**Author:** [@borkdude](https://clojureverse.org/u/borkdude)\
**Replies:** 13\
**Last updated:** [June 21, 2020, 6:26pm UTC](https://clojureverse.org/t/feedback-wanted-on-new-clj-kondo-macroexpansion-feature/6043 "2020-06-21T18:26:11Z")

</div>

Clj-kondo is a linter based on static analysis. This means it doesn’t eval any code. Therefore clj-kondo can be very fast, but it also comes with some limitations with regards to macros that have irregular syntax compare…

---

## [Status Update - Inspect, cljs\_eval](https://clojureverse.org/t/status-update-inspect-cljs-eval/6074)

<div class="topic-metadata">

**Author:** [@thheller](https://clojureverse.org/u/thheller)\
**Replies:** 18\
**Last updated:** [June 17, 2020, 1:27pm UTC](https://clojureverse.org/t/status-update-inspect-cljs-eval/6074 "2020-06-17T13:27:58Z")

</div>

Hey everyone, quite a few things have happened in shadow-cljs I and wanted to highlight some of the recent additions/changes. All features mentioned here are available in 2.10.5+. Inspect The main feature I worked on f…

---

## [Introducing shadow-cljs Inspect](https://clojureverse.org/t/introducing-shadow-cljs-inspect/5012)

<div class="topic-metadata">

**Author:** [@thheller](https://clojureverse.org/u/thheller)\
**Replies:** 24\
**Last updated:** [May 7, 2020, 8:02pm UTC](https://clojureverse.org/t/introducing-shadow-cljs-inspect/5012 "2020-05-07T20:02:43Z")

</div>

With shadow-cljs 2.8.67 I released the first preview of the shadow-cljs “Inspect” feature. My first goal for this is to provide a console.log equivalent experience for all platforms. console.log in combination with some…

---

## [Building cannot resolve \`http2\` module for \`:browser\` target](https://clojureverse.org/t/building-cannot-resolve-http2-module-for-browser-target/5836)

<div class="topic-metadata">

**Author:** [@dbr.sh](https://clojureverse.org/u/dbr.sh)\
**Replies:** 3\
**Last updated:** [April 25, 2020, 4:19pm UTC](https://clojureverse.org/t/building-cannot-resolve-http2-module-for-browser-target/5836 "2020-04-25T16:19:40Z")

</div>

Hello! I’m brand new, but have been banging my head against the wall with this. I’m trying to build with the aws-amplify npm packge. I get this error when compiling with :target :browser: The required JS dependency "htt…

---

## [Invalid test namespace fails silently?](https://clojureverse.org/t/invalid-test-namespace-fails-silently/5529)

<div class="topic-metadata">

**Author:** [@tomafro](https://clojureverse.org/u/tomafro)\
**Replies:** 2\
**Last updated:** [March 2, 2020, 11:13am UTC](https://clojureverse.org/t/invalid-test-namespace-fails-silently/5529 "2020-03-02T11:13:32Z")

</div>

I accidentally introduced a syntax error (just a typo in the namespace declaration) into a test namespace in our test suite. Running the suite with Kaocha didn’t raise an error or fail the test run - it just silently ign…

---

## [Create web app with shadow-cljs and Svelte](https://clojureverse.org/t/create-web-app-with-shadow-cljs-and-svelte/4720)

<div class="topic-metadata">

**Author:** [@dawran6](https://clojureverse.org/u/dawran6)\
**Replies:** 3\
**Last updated:** [August 12, 2019, 8:52pm UTC](https://clojureverse.org/t/create-web-app-with-shadow-cljs-and-svelte/4720 "2019-08-12T20:52:20Z")

</div>

Greetings everyone! I found Svelte very interesting and started to experiment it with ClojureScript. For those who don’t know, the elevator pitch of Svelte is: Svelte is a radical new approach to building user interfa…

---

## [Failures running browser tests](https://clojureverse.org/t/failures-running-browser-tests/5226)

<div class="topic-metadata">

**Author:** [@markdingram](https://clojureverse.org/u/markdingram)\
**Replies:** 17\
**Last updated:** [December 27, 2019, 10:44am UTC](https://clojureverse.org/t/failures-running-browser-tests/5226 "2019-12-27T10:44:08Z")

</div>

I’m struggling to get a reliable setup working for browser cljs tests. I’ve created a test repo here: https://github.com/markdingram/kaocha-browser npm install && clojure -m kaocha.runner :node-cljs works as expected so…

---

## [I can't get a client repl to run on windows 10/64 pro](https://clojureverse.org/t/i-cant-get-a-client-repl-to-run-on-windows-10-64-pro/4861)

<div class="topic-metadata">

**Author:** [@tyohDeveloper](https://clojureverse.org/u/tyohDeveloper)\
**Replies:** 6\
**Last updated:** [September 19, 2019, 7:06pm UTC](https://clojureverse.org/t/i-cant-get-a-client-repl-to-run-on-windows-10-64-pro/4861 "2019-09-19T19:06:47Z")

</div>

No matter how I launch a repl, I can never get a prompt. boot repl boot repl --client lein repl lein repl :start They all refuse to take input. The --client thing seems promising, but never gives me a prompt. I just si…

---

## [Base.js and deps.js wrong paths](https://clojureverse.org/t/base-js-and-deps-js-wrong-paths/4747)

<div class="topic-metadata">

**Author:** [@Artemy\_Pogosov](https://clojureverse.org/u/Artemy_Pogosov)\
**Replies:** 1\
**Last updated:** [August 21, 2019, 8:48am UTC](https://clojureverse.org/t/base-js-and-deps-js-wrong-paths/4747 "2019-08-21T08:48:40Z")

</div>

If I manually add a slash in paths to base and deps js files, then the error is gone. But the chestnut\_app.js file is located in the “compiled” folder, so after a new command (start) it breaks my application again. i…

---

## ["Upgrading" the react-native support](https://clojureverse.org/t/upgrading-the-react-native-support/4669)

<div class="topic-metadata">

**Author:** [@thheller](https://clojureverse.org/u/thheller)\
**Replies:** 25\
**Last updated:** [August 17, 2019, 3:52pm UTC](https://clojureverse.org/t/upgrading-the-react-native-support/4669 "2019-08-17T15:52:06Z")

</div>

Hey everyone, over the next few weeks I’ll be working on a couple of updates for the react-native integration in shadow-cljs. While it already works quite well it has some issues that can be improved and I wanted to giv…

---

## [Why kaocha dynamically add test files into classpath?](https://clojureverse.org/t/why-kaocha-dynamically-add-test-files-into-classpath/4661)

<div class="topic-metadata">

**Author:** [@darkleaf](https://clojureverse.org/u/darkleaf)\
**Replies:** 1\
**Last updated:** [August 6, 2019, 8:00am UTC](https://clojureverse.org/t/why-kaocha-dynamically-add-test-files-into-classpath/4661 "2019-08-06T08:00:43Z")

</div>

Why kaocha dynamically add test files into classpath?

---

## [Kaocha-cljs not seeing test cases](https://clojureverse.org/t/kaocha-cljs-not-seeing-test-cases/4537)

<div class="topic-metadata">

**Author:** [@jkrasnay](https://clojureverse.org/u/jkrasnay)\
**Replies:** 8\
**Last updated:** [July 15, 2019, 10:49pm UTC](https://clojureverse.org/t/kaocha-cljs-not-seeing-test-cases/4537 "2019-07-15T22:49:15Z")

</div>

Hi, I’m having trouble getting kaocha-cljs working. My tests.edn is as follows: ﻿#kaocha/v1 {:tests \[{:id :unit :source-paths \["src/main/clj"\] :test-paths \["src/test/clj"\]} {:id :unit-cljs …

[Next page](https://clojureverse.org/c/projects/24.md?page=1)
