skills/shopify/translations/SKILL.md
Manage Shopify store translations with French as source language. Use when working with translation files, updating translations, or managing multi-language Shopify content. Triggers on "translate", "translations", "localization", "i18n", "French to German/Italian/English".
npx skillsauth add javeedishaq/ai-workflow-orchestrator shopify-translationsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Two separate translation systems - use the right one for each case.
| System | Use For | Location |
|--------|---------|----------|
| API Translations | Merchant-editable content, block settings | translations-to-edit.json |
| Locale Files | Hardcoded theme text, labels, buttons | shopify-theme/locales/*.json |
French (fr_original) as source → German, Italian, English.
{
"key": "section.page.json.heading:id",
"fr_original": "Design Gratuit",
"de_fixed": "Kostenlose Gestaltung",
"de_status": "completed",
"it_fixed": "Design Gratuito",
"it_status": "completed",
"en_fixed": "Free Design",
"en_status": "completed"
}
pending - Not yet translatedcompleted - Ready to publishverified - Reviewed and approvednpm run translations:myarmy:extract # Extract from Shopify
npm run translations:myarmy:review # Generate review report
npm run translations:myarmy:translate # Auto-translate (needs OPENAI_API_KEY)
npm run translations:myarmy:publish # Publish to Shopify
npm run translations:myarmy:backup # Create backup
npm run translations:myarmy:workflow # Full workflow
For hardcoded theme text only - stored in Git.
shopify-theme/locales/
├── en.default.json # English source
├── fr.json # French
├── de.json # German
└── it.json # Italian
{
"products": {
"benefits": {
"lifetime_guarantee": "Lifetime Guarantee",
"lifetime_description": "Yes, you read that right..."
}
}
}
{{ 'products.benefits.lifetime_guarantee' | t }}
{{ 'products.benefits.lifetime_description' | t: default: 'Fallback' }}
# Push locale files to production
shopify theme push --theme=185946079581 --store=087ffd-4a.myshopify.com \
--allow-live --only="locales/"
| Content Type | Use | |--------------|-----| | Section titles, labels | Locale files | | Error messages | Locale files | | Button text | Locale files | | Block settings content | API translations | | Product descriptions | API translations | | Merchant-editable text | API translations |
Always use:
DO:
DON'T:
SHOPIFY_ACCESS_TOKEN=shpat_...
SHOPIFY_STORE_DOMAIN=087ffd-4a.myshopify.com
OPENAI_API_KEY=sk-... # Optional, for auto-translation
tools
# Test Patterns Testing patterns for reliable, maintainable, and fast tests. > **Template Usage:** Customize for your test framework (Vitest, Jest, Playwright, etc.) and assertion library. ## Test Structure ```typescript // user.test.ts import { describe, it, expect, beforeEach, afterEach } from 'vitest'; import { userService } from '@/services/user.service'; import { createTestUser, cleanupTestData } from '@/tests/helpers'; describe('UserService', () => { let testUserId: string; befor
tools
# State Management Patterns Client-side state management patterns for modern applications. > **Template Usage:** Customize for your state library (React Query, Zustand, Jotai, Redux, etc.). ## State Categories | Type | Description | Solution | |------|-------------|----------| | **Server State** | Data from API/database | React Query, SWR | | **Client State** | UI state, user preferences | Zustand, Jotai, useState | | **Form State** | Form inputs, validation | React Hook Form, Formik | | **U
development
# Service Patterns Service layer patterns for clean architecture with proper error handling, logging, and type safety. > **Template Usage:** Customize for your ORM (Prisma, Drizzle, TypeORM, etc.) and logging solution. ## Result Type Pattern Never throw exceptions from services. Always return a Result type. ```typescript // lib/result.ts export type Result<T, E = Error> = | { success: true; data: T } | { success: false; error: E }; export function ok<T>(data: T): Result<T, never> { r
testing
# Row-Level Security Patterns Database security patterns for multi-tenant and user-scoped data. > **Template Usage:** Customize for your database (PostgreSQL, Supabase, etc.) and auth system. ## RLS Fundamentals ### Enable RLS on Tables ```sql -- Enable RLS (required before policies take effect) ALTER TABLE users ENABLE ROW LEVEL SECURITY; ALTER TABLE posts ENABLE ROW LEVEL SECURITY; ALTER TABLE comments ENABLE ROW LEVEL SECURITY; -- Force RLS for table owners too (recommended) ALTER TABLE