create-just-dom
v1.3.1
Published
Scaffold a Vite app with just-dom, jd.config, and your choice of official plugins
Maintainers
Readme
create-just-dom
Scaffold a Vite app with just-dom, a ready-made jd.config (jd.config.ts or jd.config.js), and your choice of official plugins and CSS stack (plain CSS, Tailwind CSS v4, or Tailwind + DaisyUI).
Full documentation: App setup → Start a new project and Installation.
Usage
npm create just-dom@latest
npm create just-dom@latest my-app
npm create just-dom@latest . # scaffold into the current directory (must be empty)Interactive (default in a TTY): three separate keyboard-driven screens, in order: Language (TypeScript vs JavaScript) → CSS framework (none, Tailwind v4, or Tailwind + DaisyUI) → Plugins (multi-select, all optional). Use ↑/↓ to move, Space to toggle or pick, Enter to confirm.
Non-interactive (CI or scripts): use --yes or pass explicit flags:
| Flag | Effect |
|------|--------|
| --ts, --typescript | Vite vanilla-ts |
| --js, --javascript | Vite vanilla (.js files) |
| --plugins=<list> | Comma-separated plugins: router, signals, lucide |
| --no-plugins | Install just-dom only (no @just-dom/* plugins) |
| --css=<option> | none | tailwind | tailwind-daisyui |
| --no-css | Same as --css=none |
| --pnpm | Use pnpm add in the new folder |
| -y, --yes | Skip prompts (defaults: TypeScript, no plugins, no CSS framework) |
| -h, --help | Help |
npm create just-dom@latest my-app -- --yes
npm create just-dom@latest my-app -- --js --no-plugins --no-css
npm create just-dom@latest my-app -- --ts --plugins=router,lucide --css=tailwind --pnpmThen:
cd my-app
npm install # if Vite did not install deps yet
npm run devWith --css=tailwind or tailwind-daisyui, the CLI adds tailwindcss, @tailwindcss/vite, wires vite.config, and generates a starter style.css using Tailwind v4 (@import "tailwindcss"). DaisyUI adds the @plugin "daisyui/index.js" line.
If stdin is not a TTY and you omit flags, defaults are TypeScript, no plugins, and no CSS framework.
Monorepo development
From the just-dom repository root:
pnpm create:app ../path/to/my-appFrom any directory (including an empty folder under examples/…), pnpm create:app uses your current shell directory for . and for relative names—thanks to INIT_CWD—not only the repo root.
License
Same as the parent monorepo.
