@luciole-sh/create
v0.7.1
Published
Scaffolds a luciole starter application: bunx @luciole-sh/create my-app, npm init @luciole-sh my-app.
Maintainers
Readme
@luciole-sh/create
Scaffolds a luciole starter application: the Notes example, with its tooling (type-check, lint, format) configured.
bunx @luciole-sh/create my-app
npm init @luciole-sh my-app
bun create @luciole-sh my-appThe app includes AGENTS.md with the luciole block, CLAUDE.md with its @AGENTS.md import,
and skills in .agents/skills/ and .claude/skills/, with their .luciole-skills.json manifests,
at this release's version. They work before bun install. To create an app without this material:
bunx @luciole-sh/create my-app --no-skills
npm init @luciole-sh my-app -- --no-skillsThen, in my-app:
bun install
bun run devFrom an installed app’s root, ./node_modules/.bin/luciole init my-app runs this package at
the installed framework’s version and fails if the binary is absent. Outside an app,
bunx luciole.sh@<version> init my-app selects that release explicitly. Bun only.
The template is staged from examples/notes when the package is packed (prepack, see
scripts/stage.ts): every version is resolved, and the tooling configuration is inlined.
The staged directory is removed by postpack after the tarball is written; each pack stages it afresh. Nothing is read from a
repository when you run it.
The starter’s .bun-version pins Bun 1.4.4, the version tested by luciole CI. Its luciole
package dependencies deliberately use ^ ranges to receive compatible patch fixes; the app’s
lockfile pins the installed versions. Its lint configuration reports floating promises as
errors, including promises discarded with void: handle rejections with .catch(reportError),
where reportError shows the failure to the user.
