@electrojs/cli
v1.0.8
Published
CLI for ElectroJS dev, code generation, build, and preview in Electron apps
Maintainers
Readme
@electrojs/cli
ElectroJS CLI for development, code generation, build, and preview.
Documentation: https://electrojs.myraxbyte.dev/
Installation
pnpm add -D @electrojs/cli @electrojs/codegen @electrojs/config @electrojs/runtime electron viteCommands
electro dev
Starts the full development environment:
- loads
electro.config.ts - runs code generation
- starts one Vite dev server per renderer view
- watches runtime and preload builds
- launches Electron
electro generate
Runs code generation only.
Outputs include:
.electro/generated/preload/*.gen.ts.electro/generated/runtime/registry.gen.tsruntime/electro-env.d.tsviews/*/electro-env.d.ts
electro build
Builds runtime, preload, and renderer output for production.
electro preview
Builds the app and launches the production output in Electron.
Config Shape
import { defineElectroConfig } from "@electrojs/config";
export default defineElectroConfig({
runtime: "runtime",
views: ["@views/main", "@views/settings"],
});ElectroJS expects a monorepo-style project:
runtimeis an explicit package specifierviewsis an explicit list of view package specifiers- each view package owns its own
view.config.ts
ElectroJS documents explicit package configuration as the supported path instead of auto-discovery-only single-repo setups.
Typical Layout
my-app/
├── electro.config.ts
├── pnpm-workspace.yaml
├── package.json
├── runtime/
│ ├── runtime.config.ts
│ └── src/main.ts
└── views/
├── main/
│ ├── view.config.ts
│ └── src/main.tsx
└── settings/Scaffold
Use the scaffold package to start a new project:
npm create electro@latest my-app