54c66efe9b
- Changed CLI usage instructions from `dart run cursor_gen` to `cursor_gen` for global activation. - Updated project-brief.yaml example and README to reflect new command usage. - Added app_context section in project-brief.yaml for theme variants and RBAC roles. - Fixed bundled template resolution for local and global installs to prevent 'Template not found' errors. - Version bump to 1.0.1 with corresponding updates in CHANGELOG and pubspec.yaml.
99 lines
2.2 KiB
Markdown
99 lines
2.2 KiB
Markdown
# cursor_gen
|
|
|
|
CLI that generates project-specific [Cursor](https://cursor.com) AI configuration for Flutter projects from a `project-brief.yaml` file (stack, architecture, routing, backends, testing, and more).
|
|
|
|
## Requirements
|
|
|
|
- Dart SDK `>=3.3.0 <4.0.0`
|
|
|
|
## Install
|
|
|
|
Install the CLI globally so you can run `cursor_gen` from any Flutter project.
|
|
|
|
**From pub.dev:**
|
|
|
|
```bash
|
|
dart pub global activate cursor_gen
|
|
```
|
|
|
|
**From Git:**
|
|
|
|
```bash
|
|
dart pub global activate --source git https://github.com/company/flutter-cursor-templates --git-path generator
|
|
```
|
|
|
|
**From a local checkout:**
|
|
|
|
```bash
|
|
cd flutter-cursor-templates/generator
|
|
dart pub global activate --source path .
|
|
```
|
|
|
|
If your shell cannot find `cursor_gen`, add Dart's global bin directory to your `PATH`:
|
|
|
|
```bash
|
|
export PATH="$PATH":"$HOME/.pub-cache/bin"
|
|
```
|
|
|
|
For zsh, add that line to `~/.zshrc` and restart your terminal.
|
|
|
|
**From a private Pub registry:** configure access first, then activate from that registry:
|
|
|
|
```bash
|
|
dart pub token add https://your-registry.example.com
|
|
dart pub global activate cursor_gen --hosted-url=https://your-registry.example.com
|
|
```
|
|
|
|
## Setup In Your Flutter Project
|
|
|
|
Create a `project-brief.yaml`:
|
|
|
|
```bash
|
|
cursor_gen --wizard
|
|
```
|
|
|
|
Or copy the example brief and edit it:
|
|
|
|
```bash
|
|
cp path/to/flutter-cursor-templates/example-project/project-brief.yaml .
|
|
```
|
|
|
|
Validate the brief, then generate `.cursor/`:
|
|
|
|
```bash
|
|
cursor_gen --validate
|
|
cursor_gen
|
|
```
|
|
|
|
## Usage
|
|
|
|
```bash
|
|
cursor_gen --help
|
|
cursor_gen --validate --brief project-brief.yaml
|
|
cursor_gen --brief project-brief.yaml --output .cursor
|
|
cursor_gen --refresh # regenerate while preserving custom/ and CURSOR:CUSTOM blocks
|
|
cursor_gen --wizard # interactive project-brief.yaml creator
|
|
```
|
|
|
|
## Minimal `project-brief.yaml`
|
|
|
|
```yaml
|
|
project:
|
|
name: MyApp
|
|
package: com.example.myapp
|
|
scale: medium
|
|
stack:
|
|
state_management: bloc
|
|
architecture: clean
|
|
routing: gorouter
|
|
platforms: [ios, android]
|
|
backend: firebase
|
|
auth: firebase_auth
|
|
```
|
|
|
|
Use `brief-schema.json` in this package for IDE validation and autocomplete of the full schema.
|
|
|
|
## Repository
|
|
|
|
For full monorepo layout, template library, and architecture notes, see the parent repository README.
|