open-index/open-npm huggingface dataset:
npm package: @sprucelabs/spruce-skill-booter
Description: Loosely coupled classes and functions to make skill development faster! 🏎
Latest version: 77.0.21

<img src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-skill-booter/docs/images/hero.jpg">

<h1 align="center">
Spruce XP Documentation
</h1>
<h3 align="center">Spruce XP is an Experience Platform built to create unforgettable experiences and long-lasting relationships.
</h3>
<p align="center">
<img align="center" width="80%" src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-skill-booter/docs/images/bullets.jpg">
</p>
<img src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-skill-booter/docs/images/spacer.png">
<br />
<p align="center">
<img align="center" width="80%" src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-skill-booter/docs/images/sprucebot-message.png">
</p>

<br />
<p align="center">
<a href="https://developer.spruce.ai/#/"><img width="250" src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-skill-booter/docs/images/read-full-docs.png" /></a>
</p>

### Dependencies

[Arkit diagram here](docs/dependencies.md).
npm package: @sprucelabs/spruce-store-plugin
Description: Spruce Store! 🚀
Latest version: 77.0.21

<img src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-store-plugin/docs/images/hero.jpg">

<h1 align="center">
Spruce XP Documentation
</h1>
<h3 align="center">Spruce XP is an Experience Platform built to create unforgettable experiences and long-lasting relationships.
</h3>
<p align="center">
<img align="center" width="80%" src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-store-plugin/docs/images/bullets.jpg">
</p>
<img src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-store-plugin/docs/images/spacer.png">
<br />
<p align="center">
<img align="center" width="80%" src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-store-plugin/docs/images/sprucebot-message.png">
</p>

<br />
<p align="center">
<a href="https://developer.spruce.ai/#/"><img width="250" src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-store-plugin/docs/images/read-full-docs.png" /></a>
</p>

### Dependencies

[Arkit diagram here](docs/dependencies.md).
npm package: @sprucelabs/spruce-test-fixtures
Description: Spruce Test Fixtures! 🛋
Latest version: 77.0.21

# Spruce Test Fixtures

[![AI TDD Contributor](https://regressionproof.ai/badge.svg)](https://regressionproof.ai)

A comprehensive testing utilities package for Spruce that provides fixtures and helpers for unit and integration testing Spruce skills and applications.

## Features

### Base Test Class

`AbstractSpruceFixtureTest` extends AbstractSkillTest and provides lifecycle hooks for test setup/teardown.

```typescript
import { AbstractSpruceFixtureTest } from '@sprucelabs/spruce-test-fixtures'

export default class MyTest extends AbstractSpruceFixtureTest {
    @test()
    protected async canRunTest() {
        // Your test here
    }
}
```

### Core Fixtures

| Fixture | Description |
|---------|-------------|
| `OrganizationFixture` | Create and manage test organizations |
| `LocationFixture` | Create and manage test locations |
| `PersonFixture` | Create test persons, handle login/authentication |
| `SkillFixture` | Manage skill setup and configuration |
| `ViewFixture` | Test view controllers with mocked UI components |
| `StoreFixture` | Database store testing utilities |
| `RoleFixture` | Test role-based access control |
| `PermissionFixture` | Test permission handling |
| `MercuryFixture` | Mercury event client setup |

### Test Decorators

```typescript
import { fake, login, seed, install } from '@sprucelabs/spruce-test-fixtures'

export default class MyTest extends AbstractSpruceFixtureTest {
    @login()
    @seed('organizations', 1)
    @test()
    protected async canTestWithSeededData() {
        // Test runs with logged-in user and seeded organization
    }
}
```

| Decorator | Description |
|-----------|-------------|
| `@fake` | Fake API responses |
| `@login` | Login as specific user |
| `@seed` | Seed test data |
| `@install` | Handle skill installation |

### Spy & Mock Utilities

- **FakeAuthorizer** - Mock authorization for testing
- **SpyAuthenticator** - Spy on authentication calls
- **SpyViewControllerFactory** - Track view controller instantiation
- **TestRouter** - Route events in test environment
- **SpyMapUtil** - Spy on Map operations

## Development

```bash
# Install dependencies
yarn

# Build
yarn build.dev

# Run tests
yarn test
```

## Documentation

For comprehensive documentation, visit [developer.spruce.bot](https://developer.spruce.bot).
npm package: @sprucelabs/spruce-view-plugin
Description: Spruce View! 👾
Latest version: 62.0.24

<img src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-deploy-plugin/docs/images/hero.jpg">
<h1 align="center">
Spruce XP Documentation
</h1>
<h3 align="center">Spruce XP is an Experience Platform built to create unforgettable experiences and long-lasting relationships.
</h3>
<p align="center">
<img align="center" width="80%" src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-deploy-plugin/docs/images/bullets.jpg">
</p>
<img src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-deploy-plugin/docs/images/spacer.png">
<br />
<p align="center">
<img align="center" width="80%" src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-deploy-plugin/docs/images/sprucebot-message.png">
</p>

<br />
<p align="center">
<a href="https://developer.spruce.ai/#/"><img width="250" src="https://raw.githubusercontent.com/sprucelabsai/spruce-features-workspace/master/packages/spruce-deploy-plugin/docs/images/read-full-docs.png" /></a>
</p>

### Dependencies

[Arkit diagram here](docs/dependencies.md).