# Marketplace Large

A large marketplace fixture with 6+ plugins, deep CLAUDE.md content,
multiple hook event types, multiple MCP servers, and extensive shared
configuration. Intended to produce a strictly larger total-estimated-tokens
count than the small or medium fixtures.

## Plugins

- plugin-alpha — linting and static analysis
- plugin-beta — code formatting
- plugin-gamma — test runner and coverage
- plugin-delta — release automation and tagging
- plugin-epsilon — configuration auditing
- plugin-zeta — security scanning
- plugin-eta — documentation generation
- plugin-theta — dependency management

## Commands

- `npm run build` — Build all workspace packages
- `npm test` — Run the entire test suite
- `npm run lint` — Run all linters
- `npm run format` — Auto-format all source files
- `npm run release` — Cut a new release
- `npm run audit` — Security audit of dependencies
- `npm run docs:build` — Build documentation site
- `npm run docs:serve` — Serve documentation locally
- `npm run typecheck` — Type-check without emitting
- `npm run clean` — Remove build artifacts

## Architecture

The marketplace hosts multiple plugins, each self-contained. Inter-plugin
communication happens via well-defined contracts; no plugin imports from
another directly. Shared primitives live in a workspace package consumed
by every plugin.

## Conventions

- Conventional Commits with plugin scope: `feat(plugin-name): description`
- Semantic versioning per plugin, coordinated via a release-please-style flow
- Tests live alongside implementation files as `*.test.mjs`
- Zero runtime npm dependencies in hooks and scanners where possible

## Tooling

- Node.js ≥ 18 (ES Modules, node:test)
- TypeScript strict mode
- ESLint + Prettier
- Shared git hooks via `hooks/hooks.json`

## Release Process

Each plugin version-bumps independently. The marketplace root README and
per-plugin README are updated in the same commit as the version bump. A
tag of the form `{plugin}-v{semver}` is pushed to Forgejo alongside the
main branch commit.

## Shared Patterns

Shared conventions and helper patterns are defined in the imported files
below. Each import is a logical slice: one for naming conventions, one
for error-handling patterns, one for test patterns.

@.claude/shared-naming.md
@.claude/shared-errors.md
@.claude/shared-tests.md
