{"id":18748,"library":"reset-framework-cli","title":"Reset Framework CLI","description":"The official command-line tool for building, developing, and packaging applications with Reset Framework. Current stable version is 1.2.5, with a release cadence aligned with the core framework (published after schema, backend, and SDK packages). Key differentiators: it orchestrates the full lifecycle (create, dev, build, package, doctor), optionally compiles the runtime from source via CMake/Ninja, and remains thin by delegating platform logic to separate runtime packages. Requires Node.js >=20.19.0.","status":"active","version":"1.2.5","language":"javascript","source_language":"en","source_url":null,"tags":["javascript"],"install":[{"cmd":"npm install reset-framework-cli","lang":"bash","label":"npm"},{"cmd":"yarn add reset-framework-cli","lang":"bash","label":"yarn"},{"cmd":"pnpm add reset-framework-cli","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Schema package is required for config validation and must be published before the CLI.","package":"@reset-framework/schema","optional":false},{"reason":"Backend package provides runtime server logic; must be published before the CLI.","package":"@reset-framework/backend","optional":false},{"reason":"SDK package provides frontend bridge; must be published before the CLI.","package":"@reset-framework/sdk","optional":false},{"reason":"Required for source builds (--runtime-source); includes CMake-based runtime source.","package":"@reset-framework/native","optional":true}],"imports":[{"note":"This is a CLI tool, not a library. Use npx or global install.","symbol":"reset-framework-cli","correct":"npx reset-framework-cli create-app my-app"},{"note":"The package exposes a binary, not a JavaScript module. Use child_process.exec or similar.","wrong":"Assuming the CLI is importable as a module","symbol":"bin","correct":"package.json: { \"bin\": { \"reset-framework-cli\": \"./bin/cli.js\" } }"},{"note":"The command is `create-app`, not `new` or `init`.","wrong":"reset-framework-cli new my-app","symbol":"create-app","correct":"reset-framework-cli create-app my-app"}],"quickstart":{"code":"# Install globally\nnpm install -g reset-framework-cli\n\n# Create a new project\nreset-framework-cli create-app my-app\n\n# Change directory and start development\ncd my-app\nreset-framework-cli dev\n\n# Build for production\nreset-framework-cli build\n\n# Package the desktop app\nreset-framework-cli package\n\n# Verify setup\nreset-framework-cli doctor","lang":"javascript","description":"Demonstrates installing the CLI globally, creating a new app, running dev server, building, packaging, and running diagnostics."},"warnings":[{"fix":"Update Node.js to version 20.19.0 or later.","message":"Node.js version must be >=20.19.0. Running with an older version will fail with engine validation error.","severity":"breaking","affected_versions":"<20.19.0"},{"fix":"Install CMake (>=3.15), Ninja, Git, and a C++ compiler (e.g., GCC, Clang, MSVC).","message":"Source build requires CMake, Ninja, Git, and a native compiler toolchain. Missing any will cause cryptic build errors.","severity":"gotcha","affected_versions":">=1.0"},{"fix":"Use the CLI via npx or global install, or invoke the binary from child process.","message":"The CLI is not a library and should not be imported or required directly. Attempting to require('reset-framework-cli') returns an object, but no stable API is provided.","severity":"deprecated","affected_versions":">=1.0"},{"fix":"Ensure at least 5GB free space and a stable internet connection. Consider using an existing vcpkg toolchain if available.","message":"First source build bootstraps vcpkg into ~/.reset-framework-cli/vcpkg, which downloads and compiles dependencies. This can take significant time and disk space.","severity":"gotcha","affected_versions":">=1.0"},{"fix":"Ensure @reset-framework/runtime-* package for your platform is installed. Use --runtime-source to compile from source if no bundled runtime is available.","message":"Runtime packages are platform-specific. The CLI will fail if no bundled runtime package exists for the current OS/architecture.","severity":"gotcha","affected_versions":">=1.0"},{"fix":"Align versions with the core framework release. Check peer dependencies or publish order documentation.","message":"The CLI must be published after @reset-framework/schema, @reset-framework/backend, and @reset-framework/sdk. Installing a mismatched version can cause runtime errors.","severity":"breaking","affected_versions":">=1.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Install the missing package: npm install @reset-framework/schema or ensure it's in the project's node_modules.","cause":"The CLI requires the schema package to be installed as a dependency or globally.","error":"Error: Cannot find module '@reset-framework/schema'"},{"fix":"Install globally: npm install -g reset-framework-cli. Alternatively, use npx reset-framework-cli.","cause":"The CLI is not installed or not in PATH.","error":"Error: reset-framework-cli: command not found"},{"fix":"Update Node.js to >=20.19.0. Suppress with NODE_NO_WARNINGS=1 if desired.","cause":"The CLI uses experimental loaders; this warning is non-fatal but may cause issues on older Node versions.","error":"node: --experimental-loader is experimental. (Use `node --experimental-loader ...`)"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}