Skip to content
Public alpha · CLI packages live · Studio optional

Getting Started

Node.js 22.13.0 or newer is the only required runtime. From any parent directory, run:

Terminal window
npm create srijika@latest my-app
cd my-app
npx @srijika/cli check
npx @srijika/cli dev

This creates a pinned React 19 + Vite + TypeScript project, installs its dependencies, validates the Srijika architecture, and starts the real application. Desktop Studio is not required.

For CI or a terminal-only setup that must not open another application:

Terminal window
npm create srijika@latest my-app -- --no-open

The starter is minimal and does not include TanStack Query by default. Opt in only when the application needs server caching or mutation lifecycle:

Terminal window
npm create srijika@latest my-app -- --react-query
Open the complete CLI guide

Keep one root package manager and give each Vite or Next.js application its own Srijika project contract. Srijika can discover the apps, generate VS Code and MCP routing, and aggregate architecture plus owner-test verification:

Terminal window
npx @srijika/cli workspace init . --dry-run
npx @srijika/cli workspace init .
npx @srijika/cli workspace check .
npx @srijika/cli workspace tests sync .
Open the monorepo guide

All surfaces follow the same Feature → Slot → Part contract and use the same scaffold and validation rules.

Terminal only

Create, extend, check, run, build, and preview the project with the published CLI. No desktop application is needed.

VS Code

Use generated tasks and the optional Srijika Language Support extension for structure-aware creation and diagnostics.

Codex or MCP

Generated MCP configuration lets an AI inspect, validate, preview, and safely scaffold the project without Studio.

Desktop Studio

Optionally open the same project for visual source selection, live application preview, UI hierarchy, contracts, and bounded visual edits.

Terminal window
npx @srijika/cli doctor
npx @srijika/cli check

doctor explains the detected Node version, optional Bun runtime, package manager, lockfile, and project scripts. check enforces required UI + Connector pairs and the progressive Connector → Hook → Store → Logic → API chain.

Terminal window
npx @srijika/cli add feature Dashboard --hook --store --logic --api --types
npx @srijika/cli add slot Summary --in src/features/dashboard --hook --logic
npx @srijika/cli add part MetricCard --in src/features/dashboard/slots/summary --types
npx @srijika/cli add shared-ui Button --types
npx @srijika/cli add shared-widget UserMenu --hook --store
npx @srijika/cli add shared-capability Auth --hook --store --logic --api --types

Use --dry-run to inspect the exact file plan before writing it. Existing files are never silently overwritten. Shared creation is limited to pure UI, UI+Connector Widget, or UI-less Headless Capability owners; arbitrary shared folders are rejected.

The following steps are for contributors working on the Srijika Studio repository—not for developers creating an application with the public CLI.

  • Node.js 22.22.1 (minimum declared and release-CI-tested version: 22.13.0)
  • pnpm 11.18.0
  • TypeScript 6.0.3
  • React 19.2.8
  • Rust 1.97.1
  • Tauri 2

From the repository root:

Terminal window
pnpm install --frozen-lockfile
pnpm dev

The browser editor runs at http://localhost:5173/. Browser mode is intentionally limited: it has no project-directory or process authority.

Run the complete desktop shell with:

Terminal window
pnpm tauri dev

Linux and WSL require the WebKitGTK and Tauri prerequisites listed in the canonical Development Setup reference.

Terminal window
pnpm verify

This includes the supported code-first browser lane and the two native core crates. Full-workspace Rust checks that include the Tauri shell still require the documented native dependencies.