# Harmonic SaaS Documentation

> Comprehensive guides and references for Harmonic SaaS - a production-ready Nuxt Layer for building SaaS applications

This documentation site provides guides, references, and implementation details for using and extending Harmonic SaaS.

## 🚀 Quick Links

- **[Main Documentation Site](https://harmonic-saas.vernaillen.dev)** - Full documentation with search
- **[GitHub Repository](https://github.com/vernaillen/harmonic-saas)** - Source code and issues
- **[NPM Package](https://www.npmjs.com/package/@vernaillen/harmonic-saas)** - Published package

## 📚 Documentation Sections

### Getting Started
- **[Email Integration](./content/en/3.guides/1.email-integration.md)** - Set up Resend or SMTP email service
- **[Mailpit Setup](./content/en/3.guides/2.mailpit-setup.md)** - Local email testing with Mailpit

### Development
- **[Icons](./content/en/2.development/2.icons.md)** - Using icons in your application

### Testing
- **[E2E Quick Start](./content/en/4.testing/1.e2e-quick-start.md)** - Get started with Playwright tests
- **[Authentication Test Plan](./content/en/4.testing/2.authentication-test-plan.md)** - Test specifications
- **[Testing Summary](./content/en/4.testing/3.testing-summary.md)** - Test coverage overview
- **[CI/CD Workflow](./content/en/4.testing/4.ci-cd-workflow.md)** - GitHub Actions pipeline
- **[Database Setup](./content/en/4.testing/5.database-setup.md)** - Test database configuration

### Reference
- **[Implementation Roadmap](./content/en/5.reference/1.implementation-roadmap.md)** - Feature roadmap
- **[Language Update Guide](./content/en/5.reference/2.language-update-guide.md)** - Adding translations

## 🛠️ Running Documentation Locally

This documentation site is built with [Nuxt Content](https://content.nuxt.com) and [Nuxt UI](https://ui.nuxt.com).

### Development Server

```bash
# Install dependencies (from project root)
pnpm install

# Start docs development server
pnpm docs:dev
```

The documentation will be available at `http://localhost:3000`.

### Build for Production

```bash
# Build documentation
pnpm docs:build

# Preview production build
pnpm docs:preview
```

## 📝 Contributing to Documentation

Documentation files are written in Markdown with MDC (Markdown Components) syntax.

### File Structure

```
docs/
├── content/
│   └── en/                    # English content
│       ├── index.md           # Homepage
│       ├── 2.development/     # Development guides
│       ├── 3.guides/          # Setup guides
│       ├── 4.testing/         # Testing documentation
│       └── 5.reference/       # Reference materials
├── public/                    # Static assets
└── nuxt.config.ts            # Nuxt configuration
```

### Writing Documentation

1. Create or edit Markdown files in `content/en/`
2. Use frontmatter for metadata:
   ```yaml
   ---
   title: Page Title
   description: Page description for SEO
   navigation:
     icon: i-lucide-icon-name
   ---
   ```
3. Use MDC components for rich content (callouts, cards, code blocks)
4. Run `pnpm docs:dev` to preview changes

## 🌍 Multi-Language Support

This documentation supports multiple languages. Currently available:
- English (default)

To add a new language, create a new directory under `content/` (e.g., `content/fr/`) and mirror the English structure.

## 📄 License

[MIT License](../LICENSE)
