scittle

Chris McCormick 2025-08-02T07:22:47.464579Z

@chaos I have a question about scittlets. I just finished implementing an nREPL in cljs-josh and then I noticed in the announcements channel you said scittlets has scittlets.dev.nrepl - I can't find any documentation about it. How do I use it? I'm very interested in the pack command by the way! Will check it out.

Chris McCormick 2025-08-02T07:26:55.842359Z

Also, can you see what I am doing wrong here? Can't seem to get it to bootstrap a new project.

$ npx scittlets new reagent/codemirror test-scittlets-codemirror
scittlets new [template]

Create a new app from TEMPLATE. If no template is provided, lists available templates.

Positionals:
  template  Template name                                                                                       [string]

Options:
      --version         Show version number                                                                    [boolean]
  -v, --verbose         Enable verbose logging                                                [boolean] [default: false]
  -W, --sec-win-ca      Load Windows system root certificates                                 [boolean] [default: false]
      --help            Show help                                                                              [boolean]
  -d, --directory       Override the default output directory for the template                                  [string]
  -l, --list-templates  List catalog templates                                                [boolean] [default: false]
  -r, --release         Catalog release version to use                                      [string] [default: "latest"]

Unknown argument: test-scittlets-codemirror
$ mkdir test-scittlets-codemirror
$ cd test-scittlets-codemirror/
$ npx scittlets new reagent/codemirror test-scittlets-codemirror
scittlets new [template]

Create a new app from TEMPLATE. If no template is provided, lists available templates.

Positionals:
  template  Template name                                                                                       [string]

Options:
      --version         Show version number                                                                    [boolean]
  -v, --verbose         Enable verbose logging                                                [boolean] [default: false]
  -W, --sec-win-ca      Load Windows system root certificates                                 [boolean] [default: false]
      --help            Show help                                                                              [boolean]
  -d, --directory       Override the default output directory for the template                                  [string]
  -l, --list-templates  List catalog templates                                                [boolean] [default: false]
  -r, --release         Catalog release version to use                                      [string] [default: "latest"]

Unknown argument: test-scittlets-codemirror

chaos 2025-08-02T09:38:03.839709Z

HI @chris358, to specify the output directory for the template instance, use the -d (--directory). Sorry about the confusion, I'll update it so the output directory becomes the second argument to new:

> npx scittlets new reagent/codemirror -d test-scittlets-codemirror

✴️ Running: scittlets new

📚 Using Catalog: v0.6.4

🛠️ Scaffolding new app from template: reagent/codemirror
📁 Creating app directory: D:\scitts\test-scittlets-codemirror
📄 Generating files:
 ↳ test-scittlets-codemirror\index.html
 ↳ test-scittlets-codemirror\codemirror_demo.cljs

✅ Your app is ready!

👉 Next steps:
1. Install Josh globally (if you haven't already):
   npm install -g cljs-josh

2. Navigate to the app directory:
   cd test-scittlets-codemirror

3. Start the development server:
   npx josh

Happy hacking! 🚀

chaos 2025-08-02T09:42:46.522669Z

The scittlets documentation can be found at the home page, I should also update the cli output to indicate this: https://ikappaki.github.io/scittlets/scittlets.html

Chris McCormick 2025-08-02T10:00:50.121899Z

Ah ok. The help said this: scittlets new <template-name> [output-dir]

Chris McCormick 2025-08-02T10:01:32.918159Z

The nREPL I'm adding to josh runs on node and doesn't require bb, so I guess that's the main differentiator.

chaos 2025-08-03T17:02:39.519709Z

Hi @chris358, thanks for the feedback and for pointing out the incorrect argument usage output! I've released scittlets cli v0.9.0 which replaces the new cmd's --diretory option with a second position output-dir argument. It also adds links to throughout the CLI output. The sci nREPL proxy written for babashka could in principle I think be implemented in cljs. Its only external dependencies are an HTTP server that forwards traffic to the browser over web sockets and bencode for handling nREPL traffic, which could likely be replaced in node with the Express server and bencode library: https://github.com/babashka/sci.nrepl/blob/main/src/sci/nrepl/browser_server.clj

Chris McCormick 2025-08-04T13:50:40.151749Z

Yep it can definitely be implemented in cljs because I did that already. 😀 https://github.com/chr15m/cljs-josh/blob/nrepl/josh.cljs#L32-L200 I should release this.

🔥 2