book-translation skill
Translate "The Interactive Book of Prompting" chapters and UI strings to a new language
Is the book-translation skill safe?
Clean: nothing in its files matched our rules. We read 1 file in the folder on 2026-11-10.
No findings.
Install the book-translation skill
A skill is a folder. Copy it into your agent's skills folder and the agent loads it when the task matches its description.
git clone --depth 1 https://github.com/f/prompts.chat.git /tmp/prompts.chat mkdir -p ~/.claude/skills cp -r /tmp/prompts.chat/.windsurf/skills/book-translation ~/.claude/skills/book-translation
In the Claude apps, zip the folder and upload it from the Skills settings. The folder on GitHub
The instructions your agent would load
SKILL.md as published, without the frontmatter. Read it on GitHub
Book Translation Skill
This skill guides translation of book content for The Interactive Book of Prompting at prompts.chat.
Overview
The book has 31 chapters across 7 parts. Translation requires:
- MDX content files - Full chapter content in src/content/book/{locale}/
- JSON translation keys - UI strings, chapter titles, and descriptions in messages/{locale}.json
Prerequisites
Before starting, identify:
- Target locale code (e.g., de, fr, es, ja, ko, zh)
- Check if locale exists in messages/ directory
- Check if src/content/book/{locale}/ folder exists
Step 1: Copy Turkish Folder as Base
The Turkish (tr) translation is complete and well-tested. Copy it as your starting point instead of translating from English:
mkdir -p src/content/book/{locale}
cp -r src/content/book/*.mdx src/content/book/{locale}/
cp src/components/book/elements/locales/en.ts src/components/book/elements/locales/{locale}.ts⚠️ IMPORTANT: After copying, you MUST register the new locale in src/components/book/elements/locales/index.ts:
- Add import: import {locale} from "./{locale}";
- Add to locales object: {locale},
- Add to named exports: export { en, tr, az, {locale} };
This is faster because:
- Turkish and many languages share similar sentence structures
- All JSX/React components are already preserved correctly
- File structure is already set up
- You only need to translate the prose, not recreate the structure
Step 2: Translate MDX Content Files
Edit each copied file in src/content/book/{locale}/ to translate from Turkish to your target language.
Process files one by one:
Chapter List (in order)
MDX Translation Guidelines
- Preserve all JSX/React components - Keep , , className, etc. unchanged
- Preserve code blocks - Code examples should remain in English (variable names, keywords)
- Translate prose content - Headings, paragraphs, lists
- Keep Markdown syntax - ##, bold, italic, links
- Preserve component imports - Any import statements at the top
Step 3: Translate JSON Keys
In messages/{locale}.json, translate the "book" section. Key areas:
Book Metadata
"book": {
"title": "The Interactive Book of Prompting",
"subtitle": "An Interactive Guide to Crafting Clear and Effective Prompts",
"metaTitle": "...",
"metaDescription": "...",
...
}Chapter Titles (book.chapters)
"chapters": {
"00a-preface": "Preface",
"00b-history": "History",
"00c-introduction": "Introduction",
...
}Chapter Descriptions (book.chapterDescriptions)
"chapterDescriptions": {
"00a-preface": "A personal note from the author",
"00b-history": "The story of Awesome ChatGPT Prompts",
...
}Part Names (book.parts)
"parts": {
"introduction": "Introduction",
"foundations": "Foundations",
"techniques": "Techniques",
"advanced": "Advanced Strategies",
"bestPractices": "Best Practices",
"useCases": "Use Cases",
"conclusion": "Conclusion"
}Interactive Demo Examples (book.interactive.demoExamples)
Localize example text for demos (tokenizer samples, temperature examples, etc.):
"demoExamples": {
"tokenPrediction": {
"tokens": ["The", " capital", " of", " France", " is", " Paris", "."],
"fullText": "The capital of France is Paris."
},
"temperature": {
"prompt": "What is the capital of France?",
...
}
}Book Elements Locales (REQUIRED)
⚠️ DO NOT SKIP THIS STEP - The interactive demos will not work in the new language without this.
Translate the locale data file at src/components/book/elements/locales/{locale}.ts:
- Temperature examples, token predictions, embedding words
- Capabilities list, sample conversations, strategies
- Tokenizer samples, builder fields, chain types
- Frameworks (CRISPE, BREAK, RTF), exercises
- Image/video prompt options, validation demos
Then register it in src/components/book/elements/locales/index.ts:
import {locale} from "./{locale}";
const locales: Record<string, LocaleData> = {
en,
tr,
az,
{locale}, // Add your new locale here
};
export { en, tr, az, {locale} }; // Add to exportsUI Strings (book.interactive., book.chapter., book.search.*)
Translate all interactive component labels and navigation strings.
Step 4: Verify Translation
- Run the check script:
node scripts/check-translations.js- Start dev server and test:
npm run dev- Navigate to /book with the target locale to verify content loads
Reference: English Translation
The English (en) translation is complete and serves as the base template for all new translations:
- MDX files: src/content/book/.mdx — copy this files to src/content/book/{locale}/.mdx
- JSON keys: messages/en.json → book section — use as reference for structure
Recommended Workflow
- Copy src/content/book/.mdx to src/content/book/{locale}/.mdx
- Copy the "book" section from messages/en.json to messages/{locale}.json. Translate these in multiple agentic session instead of single time (token limit may exceed at once)
- Edit each file, translating English → target language
- Keep all JSX components, code blocks, and Markdown syntax intact
Quality Guidelines
- Consistency: Use consistent terminology throughout (e.g., always translate "prompt" the same way)
- Technical terms: Some terms like "AI", "ChatGPT", "API" may stay in English
- Cultural adaptation: Adapt examples to be relevant for the target audience where appropriate
- Natural language: Prioritize natural-sounding translations over literal ones
More skills from f/prompts.chat
- Aprompt-lookupActivates when the user asks about AI prompts, needs prompt templates, wants to search for prompts, or mentions prompts.chat. Use for discovering, retrieving, and improving prompts.
- Askill-lookupSearch, retrieve, and install Agent Skills from the prompts.chat registry using MCP tools. Use when the user asks to find skills, browse skill catalogs, install a skill for Claude, or extend Claude's capabilities with reusable AI agent components.
- Awidget-generatorGenerate customizable widget plugins for the prompts.chat feed system