> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aiparlance.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Primeiros emitters

> Emitters oficiais do AI Parlance em prévia — PostgreSQL até a matriz completa

# Primeiros emitters

A Phase C do roadmap entregou os **primeiros emitters oficiais** (transpiladores) do AI Parlance. Eles vivem no monorepo como alvos em prévia — ainda não são pacotes no npm público, mas são pipelines reais AST → artefato que você roda com `aip emit`. A **Phase D** aprofunda TypeScript, OpenAPI e PostgreSQL rumo a um caminho feliz executável (ver [ROADMAP](https://github.com/eudameron/aiparlance/blob/main/ROADMAP.md)).

***

## O que “primeiro transpiler” significa aqui

Historicamente, o site de marketing só tinha um playground **ilustrativo**. A linguagem era só especificação.

Com a Phase C **M3–M6** e o follow-up da matriz, o projeto publica **dez emitters em prévia** a partir de um AST validado:

| Alvo               | Pacote                   | CLI                   |
| ------------------ | ------------------------ | --------------------- |
| **DDL PostgreSQL** | `@aiparlance/sql`        | `aip emit sql`        |
| **OpenAPI 3**      | `@aiparlance/openapi`    | `aip emit openapi`    |
| **TypeScript**     | `@aiparlance/typescript` | `aip emit typescript` |
| **Go**             | `@aiparlance/go`         | `aip emit go`         |
| **DDL MySQL**      | `@aiparlance/mysql`      | `aip emit mysql`      |
| **Workers**        | `@aiparlance/workers`    | `aip emit workers`    |
| **Python**         | `@aiparlance/python`     | `aip emit python`     |
| **PHP**            | `@aiparlance/php`        | `aip emit php`        |
| **Docs**           | `@aiparlance/docs`       | `aip emit docs`       |
| **Testes**         | `@aiparlance/tests`      | `aip emit tests`      |

PostgreSQL foi o **primeiro** emitter porque a documentação o trata como SQL principal. OpenAPI, TypeScript e Go fecharam a primeira onda multi-target; MySQL e o restante da matriz seguiram como MVPs em prévia.

Junto com `aip parse` e `aip validate` (Core + Infra + Security + Behavior), estas são as **ferramentas de referência**.

***

## Pipeline

```txt theme={null}
fonte .aip
  → parse (AST)
  → validate (regras MUST)
  → emit sql | openapi | typescript | go | mysql | workers | python | php | docs | tests
```

Uma spec validada alimenta todos os emitters em prévia. A nomenclatura (snake\_case, FK `*_id`, tabelas no plural) permanece alinhada entre alvos SQL, OpenAPI e tags `json` em Go.

***

## O que cada emitter produz

### PostgreSQL (`aip emit sql`)

* `CREATE EXTENSION IF NOT EXISTS pgcrypto`
* `CREATE TABLE` por `entity` (`id` implícito, timestamps; `deleted_at` com `soft_delete`)
* Tipos, `UNIQUE` / `NOT NULL`, `CHECK` de enum, FKs `belongs_to`
* `CREATE INDEX` a partir de `index`; `INSERT` a partir de `seed`

### OpenAPI 3 (`aip emit openapi`)

* Schemas `Entity` / `EntityCreate` / `EntityUpdate`
* Paths CRUD quando há `crud Entity` (respeita `api.prefix`)
* `securitySchemes` opcionais a partir de `app.auth`

### TypeScript / Go / MySQL / demais

Interfaces + guards; structs + stubs `net/http`; DDL MySQL (`database mysql`); stubs de workers, Python, PHP, docs e testes — profundidade MVP em prévia. Ver a [matriz de transpiladores](/pt/specification#transpiler-matrix).

***

## Experimente em um minuto

```bash theme={null}
git clone https://github.com/eudameron/aiparlance.git
cd aiparlance && npm ci && npm run build

node packages/cli/dist/cli.js emit sql examples/minimal.aip
node packages/cli/dist/cli.js emit openapi examples/minimal.aip
node packages/cli/dist/cli.js emit typescript examples/minimal.aip
node packages/cli/dist/cli.js emit go examples/minimal.aip
node packages/cli/dist/cli.js emit mysql examples/mysql-minimal.aip
node packages/cli/dist/cli.js emit workers examples/ops-reference.aip
```

Instalação completa e história CRUD: [Comece aqui](/pt/getting-started) · [Passo a passo CRUD](/pt/crud-walkthrough).

***

## Limites honestos (Prévia v0.1)

* A linguagem continua **rascunho**; a profundidade dos emitters varia por alvo.
* Exemplos full-tier **fazem parse e validate**; nem todo detalhe de Behavior/Security já aparece em todos os emitters (**Phase D** aprofunda TS / OpenAPI / SQL).
* Sem lock-in Nest/Express/Chi — emits TypeScript e Go permanecem finos.
* O playground do site continua **ilustrativo**.

Status da matriz: [Especificação § Matriz de transpiladores](/pt/specification#transpiler-matrix). Notas por emitter: [Emitters](/pt/emitters). Roadmap: [Phase D](https://github.com/eudameron/aiparlance/blob/main/ROADMAP.md).

***

## Relacionado

* [Comece aqui](/pt/getting-started)
* [Passo a passo CRUD](/pt/crud-walkthrough)
* [ROADMAP.md](https://github.com/eudameron/aiparlance/blob/main/ROADMAP.md)
* [CONTRIBUTING.md](https://github.com/eudameron/aiparlance/blob/main/CONTRIBUTING.md)
