<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents**

- [ggen Documentation](#ggen-documentation)
  - [Quick Start](#quick-start)
  - [Documentation Structure](#documentation-structure)
  - [I Am...](#i-am)
    - [A New User](#a-new-user)
    - [An AI Developer](#an-ai-developer)
    - [A Template Author](#a-template-author)
    - [A Marketplace User](#a-marketplace-user)
  - [Common Tasks](#common-tasks)
    - [I want to...](#i-want-to)
  - [Contributing](#contributing)
  - [See Also](#see-also)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->

# ggen Documentation

Welcome to the ggen documentation! This documentation follows the [Diataxis framework](https://diataxis.fr/), organized into four categories: **Tutorials**, **How-to Guides**, **Reference**, and **Explanations**.

## Quick Start

**New to ggen?** Start here:

1. **[Getting Started Tutorial](tutorials/getting-started.md)** - Install ggen and generate your first code in 5 minutes
2. **[Installation Guide](how-to-guides/installation.md)** - Complete installation instructions
3. **[CLI Reference](reference/cli.md)** - All available commands

## Documentation Structure

This documentation follows the **Diataxis framework**, which organizes content into four types:

- **Tutorials**: Learning-oriented, step-by-step guides
- **How-to Guides**: Problem-oriented, task-based guides
- **Reference**: Information-oriented, complete documentation
- **Explanations**: Understanding-oriented, conceptual background

Each document type serves a different purpose and answers different questions.

## I Am...

### A New User
**I want to generate code from my domain model:**

→ **Start:** [Getting Started Tutorial](tutorials/getting-started.md) (5 minutes)
→ **Then:** [Ontology-to-Code Workflow](tutorials/ontology-to-code.md)
→ **Reference:** [CLI Commands](reference/cli.md)

### An AI Developer
**I'm integrating ggen into my AI pipeline:**

→ **Start:** [AI-Powered Generation Tutorial](tutorials/ai-powered-generation.md)
→ **Then:** [AI Commands Reference](reference/cli.md#ai-commands)
→ **Integrate:** [API Reference](reference/api.md)

### A Template Author
**I want to create custom code generation templates:**

→ **Start:** [Create Templates Guide](how-to-guides/create-templates.md)
→ **Then:** [Template Reference](reference/templates.md)
→ **Advanced:** [Template System Explanation](explanations/template-system.md)

### A Marketplace User
**I want to find/publish packages:**

→ **Start:** [Marketplace Workflow Tutorial](tutorials/marketplace-workflow.md)
→ **Then:** [Marketplace Commands](reference/cli.md#marketplace-commands)
→ **Note:** *Marketplace currently disabled (v2 migration in progress)*

---

## Common Tasks

### I want to...

- **Install ggen** → [Installation Guide](how-to-guides/installation.md)
- **Generate code from an ontology** → [Getting Started Tutorial](tutorials/getting-started.md)
- **Create a custom template** → [Create Templates Guide](how-to-guides/create-templates.md)
- **Use AI to generate ontologies** → [AI-Powered Generation Tutorial](tutorials/ai-powered-generation.md)
- **Find and install templates** → [Marketplace Workflow Tutorial](tutorials/marketplace-workflow.md)
- **Understand how it works** → [Architecture Explanation](explanations/architecture.md)
- **Troubleshoot a problem** → [Troubleshooting Guide](how-to-guides/troubleshoot.md)
- **See all commands** → [CLI Reference](reference/cli.md)

## Contributing

Found an error or want to improve the documentation? Contributions are welcome!

1. Check existing issues
2. Create a new issue or pull request
3. Follow the [Diataxis Guide](DATAXIS_GUIDE.md) for documentation structure

## See Also

- **[Main README](../README.md)** - Project overview
- **[CHANGELOG](../CHANGELOG.md)** - Version history
- **[Examples](../examples/)** - Example projects

