Skip to content
Merged
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
4 changes: 2 additions & 2 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ jobs:
- name: Checkout code
uses: actions/checkout@v4

- name: Use Node.js 20.x
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: "20.x"
node-version-file: ".node-version"
cache: "npm"

- name: Install dependencies
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/manual-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
node-version-file: ".node-version"
cache: "npm"
registry-url: "https://registry.npmjs.org"

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/preview-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
node-version-file: ".node-version"
cache: "npm"
registry-url: "https://registry.npmjs.org"

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ jobs:
- name: Checkout code
uses: actions/checkout@v4

- name: Use Node.js 20.x
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: "20.x"
node-version-file: ".node-version"
cache: "npm"

- name: Install dependencies
Expand Down
27 changes: 27 additions & 0 deletions .github/workflows/typecheck.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Typecheck

on:
push:
branches: [main]
pull_request:
branches: [main]

jobs:
typecheck:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version-file: ".node-version"
cache: "npm"

- name: Install dependencies
run: npm ci

- name: Run typecheck
run: npm run typecheck
1 change: 1 addition & 0 deletions .node-version
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
20.19.0
14 changes: 11 additions & 3 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ The Base44 CLI is a TypeScript-based command-line tool built with:
- **@clack/prompts** - Interactive user prompts and UI components
- **Zod** - Schema validation for API responses, config files, and user inputs
- **TypeScript** - Primary language
- **tsdown** - Bundler (powered by Rolldown, the Rust-based Rollup successor)

### Project Structure
- **Package**: `base44` - Single package published to npm
Expand Down Expand Up @@ -111,14 +112,21 @@ import { entityResource } from "@core/resources/entity/index.js";
## Development

```bash
npm run build # tsc && tsc-alias
npm run dev # tsx for development
npm test # vitest
npm run build # tsdown - bundles to single file in dist/cli/index.js
npm run typecheck # tsc --noEmit - type checking only
npm run dev # tsx for development
npm test # vitest
```

### Node.js Version

This project requires Node.js >= 20.19.0. A `.node-version` file is provided for fnm/nodenv.

## File Locations

- `cli/plan.md` - Implementation plan
- `cli/AGENTS.md` - This file
- `cli/src/core/` - Core module
- `cli/src/cli/` - CLI commands
- `cli/tsdown.config.ts` - Build configuration
- `cli/.node-version` - Node.js version pinning
Loading