# @sprouted/create-vibes

Create a new Vibes monorepo with a single command.

## Usage

```bash
npx @sprouted/create-vibes my-app
```

Or with options:

```bash
# Create a bare monorepo (no apps or examples)
npx @sprouted/create-vibes my-app --bare

# Create with specific apps
npx @sprouted/create-vibes my-app --apps mobile,api

# Create with examples included
npx @sprouted/create-vibes my-app --examples

# Use a specific package manager
npx @sprouted/create-vibes my-app --package-manager yarn
```

## What you get

- ✅ Vertical slice architecture
- ✅ pnpm workspace configuration
- ✅ TypeScript setup
- ✅ Development tools (vibe CLI)
- ✅ Documentation
- ✅ Optional starter apps (Expo, Vite, Go)
- ✅ Optional example features

## Interactive Mode

Running `npx @sprouted/create-vibes` will guide you through:

1. Project name
2. Package manager choice
3. Setup type (bare, with examples, with apps, or full)
4. App selection (if applicable)

## Testing

The CLI includes comprehensive tests:

```bash
# Run all tests
pnpm test

# Run unit tests only
pnpm run test:unit

# Run integration tests only
pnpm run test:integration

# Run shell-based CLI tests
pnpm run test:cli

# Quick local test before publishing
./test-local.sh
```

## Development

To work on create-vibes locally:

```bash
cd packages/create-vibes
pnpm install

# Test locally without publishing
./test-local.sh

# Link globally for development
pnpm link --global
```

Then use it:
```bash
create-vibes test-project
```

## CI/CD

Tests run automatically on:
- Push to main branch
- Pull requests
- Multiple OS (Ubuntu, macOS)
- Multiple Node versions (18, 20)