# Algebras AI + Github Actions

## GitHub Actions — Locale Checker

## Algebras Translation Status Action

A GitHub Action to check the status of your application's translations using the Algebras CLI.

#### Automated Translation Health Checks

This action is designed for NextJS projects with i18n framework for localization. It performs a health check to ensure all translations are in sync across different languages. If any translations are missing or outdated, the action will fail, highlighting issues in your CI/CD pipeline.

**Available Now \| MIT License**

## Quick Setup Guide

Get started with the Algebras Translation Status Action in minutes

#### Basic Workflow Example

```javascript
name: Check Translations

on:
  pull_request:
    branches: [ main ]
    paths:
      - '**/locale/**'
      - '**/translations/**'
      - '**/i18n/**'

jobs:
  translation-check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

- name: Algebras Translation Status
        uses: algebras-ai/locale-checker-action@main
```

#### Configuration Options

- **file_pattern:** Specify glob pattern for localization files
- **only-missing:** Only report missing keys (ignore outdated)

#### Requirements

- NextJS project with i18n framework
- Algebras CLI configuration
- Translation files in supported format

## Key Features

What makes this GitHub Action powerful for your translation workflow

#### Automated Health Checks

Automatically detect missing or outdated translations in your CI/CD pipeline

#### Flexible File Patterns

Support for custom glob patterns to match your project structure

#### Detailed Error Reporting

Clear error messages showing exactly which translations need attention

#### CI/CD Integration

Seamlessly integrates with GitHub Actions to prevent broken translations

#### Configurable Options

Customize behavior with options like only-missing or custom file patterns

#### Open Source

MIT licensed and fully open source for transparency and customization

## Example Outputs

See what the action reports when checking your translations

#### Success Case

```javascript
Loaded configuration: /path/to/.algebras.config
Available languages: en, fr, es, de
Source language: en
Running CI checks...
Scanning for translation files...
Found files by language: {'en': ['src/locales/en.json'], 'fr': ['src/locales/fr.json'], 'es': ['src/locales/es.json'], 'de': ['src/locales/de.json']}

Processing languages: fr, es, de
All translation keys are up-to-date! ✅
::notice::Translation status check passed! All translations are up-to-date.
```

#### Failure Case

```javascript
Loaded configuration: /path/to/.algebras.config
Available languages: en, fr, es, ru
Source language: en
Running CI checks...

CI Check: Found issues with translations:

Language 'ru': Missing keys:
* Features.feature6_description
* Features.feature6_title
* TodoForm.some_new_key_to_test

Language 'ru': Outdated keys:
* Features.feature1_title (Source updated: 2024-10-08, Target: 2024-10-03)
* Hero.title (Source updated: 2024-10-07, Target: 2024-10-03)

::error::Translation status check failed! Some translations are missing or outdated.
```

## Advanced Usage

Customize the action for your specific needs

#### Custom File Pattern

```javascript
- name: Algebras Translation Status
  uses: algebras-ai/locale-checker-action@main
  with:
    file_pattern: "src/locale/**/*.json"
```

#### Only Missing Keys

```javascript
- name: Algebras Translation Status
  uses: algebras-ai/locale-checker-action@main
  with:
    only-missing: true
```

#### Combined Configuration

```javascript
- name: Algebras Translation Status
  uses: algebras-ai/locale-checker-action@main
  with:
    file_pattern: "src/translations/**/*.json"
    only-missing: true
```

## Why Use This Action?

Benefits of integrating translation checks into your CI/CD pipeline

#### Prevent Broken Translations

Catch missing or outdated translations before they reach production, ensuring a consistent user experience across all languages.

#### Automated Quality Assurance

Automatically verify translation completeness and freshness as part of your pull request process, reducing manual review overhead.

#### Developer Productivity

Get immediate feedback on translation issues during development, allowing developers to fix problems before they become blockers.

#### Team Collaboration

Ensure all team members are aware of translation requirements and maintain consistency across different language versions of your application.

## Documentation & Support

Resources to help you get the most out of the GitHub Action

#### [GitHub Repository](https://github.com/algebras-ai/locale-checker-action)

View the source code, report issues, and contribute to the action development

#### [Release Notes](https://github.com/algebras-ai/locale-checker-action/releases)

Stay updated with the latest features and bug fixes

#### Get Help

Need assistance with the GitHub Action?

[Report Issues](https://github.com/algebras-ai/locale-checker-action/issues)

[Email Support](mailto:support@algebras.ai)
