Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ Notes:

#### Localization files

- **New file bootstrap behavior**: New docs pages should be created in the default-language source tree (repo root) first. The translation pipeline may create the corresponding locale file with English bootstrap content before Lingo processes localized text. If Lingo reports `from cache` / `0 processed`, those new locale files can remain English until you re-run with scoped `--force` (see workflow below).
- `lingo/glossary.csv`: Terms that must stay fixed or use specific translations.
- `lingo/brand-voice.md`: Single brand voice used for all locales.
- `scripts/translate-docs-json.mjs`: Translates language-specific `docs.json` navigation labels directly in the source-of-truth `docs.json`. Prefer `npm run translate:docs-json -- --target <locale>`.
Expand Down Expand Up @@ -99,6 +100,29 @@ Use `npm run <script> -- <args>` when a script needs CLI flags (the `--` forward
| `mint:validate` | Mintlify `validate`. |
| `mint:broken-links` | Mintlify `broken-links` with anchor and snippet checks. |

#### Translation workflow for new files

When you add new docs pages and want translated locale copies, use this sequence:

1. Create/update the English source pages at repo root (for example `admin-api/endpoints/...`), and keep locale paths/filenames mirrored.
2. Ensure the new source paths are covered by `i18n.json` `buckets.mdx.include` (for example add `admin-api/endpoints/attributes/*.mdx` and `admin-api/endpoints/metrics/*.mdx` when introducing those folders).
3. Run a scoped generation pass:
- `npm run translate:generate -- --target es --paths <comma-separated English source path substrings>`
4. If new locale files are still English (Lingo output shows `from cache` and `0 processed`), rerun the same scoped command with `--force`:
- `npm run translate:generate -- --target es --paths <paths> --force`
5. Validate before merge:
- `npm run translate:validate`
- `npm run translate:localize-links:check`
- `npm run translate:sync-anchors:check`
- `npm run mint:validate`

Example for newly added Admin attributes and metrics endpoint pages:

- Delta run:
- `npm run translate:generate -- --target es --paths admin-api/endpoints/attributes,admin-api/endpoints/metrics`
- Force reprocess for those files only:
- `npm run translate:generate -- --target es --paths admin-api/endpoints/attributes,admin-api/endpoints/metrics --force`

#### Apply in Lingo.dev engine

1. Configure `LINGO_ENGINE_ID` as an environment variable/secret.
Expand Down
10 changes: 10 additions & 0 deletions admin-api/endpoints/attributes/create-attributes-in-bulk.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: Create attributes in bulk
openapi: openapi.yml post /attributes
---

import { RateLimitBadge } from "../../../components/rate-limit-badge.jsx";

**Rate Limits**

<RateLimitBadge tier={1} />
10 changes: 10 additions & 0 deletions admin-api/endpoints/attributes/delete-attributes-in-bulk.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: Delete attributes in bulk
openapi: openapi.yml delete /attributes
---

import { RateLimitBadge } from "../../../components/rate-limit-badge.jsx";

**Rate Limits**

<RateLimitBadge tier={1} />
10 changes: 10 additions & 0 deletions admin-api/endpoints/attributes/get-an-attribute.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: Get an attribute
openapi: openapi.yml get /attributes/{id}
---

import { RateLimitBadge } from "../../../components/rate-limit-badge.jsx";

**Rate Limits**

<RateLimitBadge tier={1} />
10 changes: 10 additions & 0 deletions admin-api/endpoints/attributes/list-attributes.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: List attributes
openapi: openapi.yml get /attributes
---

import { RateLimitBadge } from "../../../components/rate-limit-badge.jsx";

**Rate Limits**

<RateLimitBadge tier={1} />
10 changes: 10 additions & 0 deletions admin-api/endpoints/attributes/update-attributes-in-bulk.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: Update attributes in bulk
openapi: openapi.yml patch /attributes
---

import { RateLimitBadge } from "../../../components/rate-limit-badge.jsx";

**Rate Limits**

<RateLimitBadge tier={1} />
10 changes: 10 additions & 0 deletions admin-api/endpoints/metrics/create-metrics-in-bulk.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: Create metrics in bulk
openapi: openapi.yml post /metrics
---

import { RateLimitBadge } from "../../../components/rate-limit-badge.jsx";

**Rate Limits**

<RateLimitBadge tier={1} />
10 changes: 10 additions & 0 deletions admin-api/endpoints/metrics/delete-metrics-in-bulk.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: Delete metrics in bulk
openapi: openapi.yml delete /metrics
---

import { RateLimitBadge } from "../../../components/rate-limit-badge.jsx";

**Rate Limits**

<RateLimitBadge tier={1} />
10 changes: 10 additions & 0 deletions admin-api/endpoints/metrics/get-a-metric-by-id.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: Get a metric by ID
openapi: openapi.yml get /metrics/{id}
---

import { RateLimitBadge } from "../../../components/rate-limit-badge.jsx";

**Rate Limits**

<RateLimitBadge tier={1} />
10 changes: 10 additions & 0 deletions admin-api/endpoints/metrics/list-metrics.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: List metrics
openapi: openapi.yml get /metrics
---

import { RateLimitBadge } from "../../../components/rate-limit-badge.jsx";

**Rate Limits**

<RateLimitBadge tier={1} />
10 changes: 10 additions & 0 deletions admin-api/endpoints/metrics/update-metrics-in-bulk.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: Update metrics in bulk
openapi: openapi.yml patch /metrics
---

import { RateLimitBadge } from "../../../components/rate-limit-badge.jsx";

**Rate Limits**

<RateLimitBadge tier={1} />
Loading
Loading