Configuration overview
Configuration Schema
This page explains the schema structure of the lara.yaml configuration file and how its sections relate to each other.
Schema Overview
The lara.yaml file follows a hierarchical structure with these main components:
lara.yaml
├── version # Schema version
├── project # Project-wide settings
├── locales # Language settings
├── memories # Translation memory settings
├── glossaries # Terminology settings
└── files # File path and processing rules
Complete Schema Example
Below is a complete example showing all possible configuration sections:
# Schema version for backward compatibility
version: "1.0.0"
# Project-wide settings
project:
instruction: "Medical app for professionals. Use formal tone."
# Language configuration
locales:
source: en
target:
- es
- fr
- de
# Translation memory configuration
memories:
- mem_abc123
- mem_def456
# Glossary configuration
glossaries:
- gls_xyz789
- gls_uvw012
# File path and processing rules
files:
json:
include:
- "src/i18n/[locale]/common.json"
- "src/i18n/[locale]/pages.json"
exclude:
- "**/draft/**"
lockedKeys:
- "**/id"
- "config/*/url"
ignoredKeys:
- "internal/**"
fileInstructions:
- path: "src/i18n/[locale]/common.json"
instruction: "Common UI elements"
keyInstructions:
- path: "buttons/*"
instruction: "Keep short, max 20 chars"
keyInstructions:
- path: "**/error"
instruction: "Error messages, use formal tone"Schema Relations
The diagram below shows how the different configuration sections relate to each other:
┌─────────────────────┐ ┌────────────────────┐
│ project.instruction │ │ locales │
│ (global context) │ │ (language settings)│
└─────────────────────┘ └────────────────────┘
│ │
▼ ▼
┌─────────────────────────────────────────────────┐
│ │
│ translation process │
│ │
└─────────────────────────────────────────────────┘
▲ ▲
│ │
┌─────────────────┐ ┌───────────────────┐
│ memories │ │ files │
│ glossaries │ │ (paths & rules) │
│ (terminology) │ │ │
└─────────────────┘ └───────────────────┘
Configuration Inheritance
Configuration settings follow a specific inheritance pattern:
- Project level settings apply to all files and keys
- File level settings override project settings for specific files
- Key level settings override file settings for specific keys
This allows for progressive refinement of translation instructions and rules.
Updated 13 days ago
