Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 14 additions & 1 deletion .github/copilot-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,20 @@ cellix.registerAzureFunctionHandler('graphql', { route: 'graphql' }, graphHandle
### Essential Commands
```bash
# Initial setup (Node v22 required)
nvm use v22 && pnpm run clean && pnpm install && pnpm run build
# If mise is not installed, install it (see https://mise.jdx.dev/getting-started.html)
# Install mise (example):
# curl -fsSL https://get.mise.dev | sh
# For full onboarding steps, see apps/docs/docs/setup.md
# Activate mise (restart shell or run the shell-activation command shown by the installer)
# Install project tools and the Node version configured in mise.toml (node = 22.22.2)
mise install

# Ensure pnpm is available (recommended):
corepack enable && corepack prepare pnpm@10.30.1 --activate
# Alternative: npm i -g pnpm

# Clean, install dependencies, and build
pnpm run clean && pnpm install && pnpm run build

# Development startup
pnpm run dev # Builds all workspace packages, starts mock emulator services, backend Azure Functions entry point, and frontend React UI
Expand Down
1 change: 0 additions & 1 deletion .nvmrc

This file was deleted.

10 changes: 9 additions & 1 deletion apps/api/readme.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
nvm use v20
This package expects Node.js v22.22.2 (managed via the repository's mise.toml).
If mise is not installed, install it and activate it (see https://mise.jdx.dev/getting-started.html):

curl -fsSL https://get.mise.dev | sh
# See apps/docs/docs/setup.md for the canonical developer setup instructions
# Restart your shell or activate mise for your shell (e.g. eval "$(~/.local/bin/mise activate zsh)")

# Then install project tools and the Node version configured in the workspace:
mise install



Expand Down
4 changes: 3 additions & 1 deletion apps/docs/blog/2025-08-26-welcome/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,6 @@ CellixJs provides comprehensive examples for DDD implementation:

The documentation supports categorized content as well!

**Getting Started**: Clone the repository, run `npm run clean && npm install && npm run build`, then use `npm run dev` to start the full development environment. You can simulate the CI pipeline locally with `npm run verify`.
**Getting Started**: See the Developer Setup guide for full installation and onboarding steps: [Developer setup](/docs/setup)


38 changes: 27 additions & 11 deletions apps/docs/docs/intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,22 +40,38 @@ cd cellixjs



Install dependencies and build the project: (we recommend using NVM)
Prerequisites

Before you clone or build the project, install these tools and ensure they are available on your system:

- mise (Node version manager)
- macOS (recommended): brew install mise
- Fallback (any OS): curl https://mise.run | sh
- After installation, ensure mise is activated (restart your shell or run the activation command shown by the installer), e.g.:
eval "$(~/.local/bin/mise activate zsh)"
- Node.js: managed by mise. The workspace root mise.toml pins node = "22.22.2" — mise install will provision this version for the project
- pnpm: recommended via Corepack (preferred):
corepack enable && corepack prepare pnpm@10.30.1 --activate
or install globally: npm i -g pnpm (or brew install pnpm on macOS)
- Git (for cloning and pushing)
- Azure Functions Core Tools (func) — required for local Functions runtime; follow the official install guide linked above
- MongoDB (local or remote) or use Azurite for local Azure storage emulation (used by this repo)

Clone and Set up

```bash
# Install Node.js v22
nvm install v22
# Clone the repo
git clone https://github.com/CellixJs/cellixjs.git
cd cellixjs
```

# Install Latest NPM (v11+)
nvm install-latest-npm
For full developer onboarding (mise installation, Corepack/pnpm setup, build, and verification), see the Developer setup guide: [Developer setup](./setup.md)

# Use Node.js v22
nvm use v22

# Clean, install dependencies, and build
npm run clean
npm install
npm run build
pnpm run clean
pnpm install
pnpm run build
```

## Install VSCode plugins
Expand Down Expand Up @@ -140,7 +156,7 @@ pnpm exec portless trust
Run all verification steps (lint, build, test, sonarcloud quality gate):

```bash
npm run verify
pnpm run verify
```
Expected output:
```bash
Expand Down
37 changes: 37 additions & 0 deletions apps/docs/docs/setup.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# Developer setup

This document is the canonical developer setup guide for the repository. Other docs link here to avoid duplicated, drifting instructions.

## Canonical installer snippet

Prefer the Homebrew installation on macOS. Use the installer script as a fallback on other platforms.

```bash
# macOS (recommended)
brew install mise

# Fallback (cross-platform)
curl -fsSL https://get.mise.dev | sh
```

After installing, follow the installer's activation instructions (e.g. `eval "$(~/.local/bin/mise activate zsh)"`). Then, from the repository root:

```bash
# Install tools pinned in mise.toml (will provision Node 22.22.2)
mise install

# Enable Corepack and activate the pinned pnpm for this workspace
corepack enable && corepack prepare pnpm@10.30.1 --activate

# Install dependencies, build, and run project
pnpm run clean && pnpm install && pnpm run build
pnpm run dev

# Run full verification locally (lint, tests, Snyk, SonarCloud, etc.)
pnpm run verify
```

Notes:
- The workspace `mise.toml` pins Node = "22.22.2". `mise install` will provision the correct Node version for this repo.
- Prefer `brew install mise` on macOS. The `curl -fsSL https://get.mise.dev | sh` installer is a documented fallback.
- See https://mise.jdx.dev/getting-started.html for the official mise docs and platform-specific activation steps.
12 changes: 12 additions & 0 deletions mise.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# See https://mise.jdx.dev/schema/mise.json

[tools]
node = "22.22.2"
python = "3.13"

[settings]
auto_install = true

[env]
_.path = ["./node_modules/.bin"]
_.python.venv = { path = ".venv", create = true }
8 changes: 7 additions & 1 deletion packages/ocom/domain/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,13 @@ Recipe:


```shell
nvm use v20
# Ensure mise is installed. The workspace root mise.toml specifies node = "22.22.2".
# If mise is not installed, run:
# curl -fsSL https://get.mise.dev | sh
# See apps/docs/docs/setup.md for the canonical developer setup instructions
# Restart your shell or activate mise for your shell (e.g. eval "$(~/.local/bin/mise activate zsh)")

mise install

npm i -D jest @types/jest -w @ocom/domain
npm i -D eslint @eslint/js typescript-eslint -w @ocom/domain
Expand Down
Loading
Loading