# للمطوّرين والوكلاء

> واجهة قابلة للتكرار تعمل على جهازك. تستخدم الأدوات المرئية الشيفرة نفسها.

[JSON Schema · v1](https://paperoom.yunusemrevurgun.com/api/schema.json) · [JSON examples](https://paperoom.yunusemrevurgun.com/api/examples.json) · [JSON result](https://paperoom.yunusemrevurgun.com/api/sample-word-search.json) · [ES module](https://paperoom.yunusemrevurgun.com/assets/api.mjs)

## طريقة الاستخدام

استورد وحدة ES العامة في المتصفح أو نزّل api.mjs وgenerators.mjs وlocales.mjs معًا لبيئة JavaScript تدعم Intl.Segmenter. لا يتطلب إنشاء لعبة مفتاحًا أو حسابًا أو ذكاءً اصطناعيًا مدفوعًا أو طلبًا إلى الخادم.

```js
import {generate} from '/assets/api.mjs';
const result = generate({
  tool: 'word-search', language: 'en', seed: 'garden-42',
  settings: {text: 'GARDEN\nFLOWER\nTREE', size: 12,
    difficulty: 'easy', includeKey: true}
});
console.log(result.pack.grid, result.pack.placements);
```

## المدخلات والمخرجات

tool: bingo أو tombala أو word-search أو cards. language: en أو es أو ar أو pt أو zh أو fr. seed: من ١ إلى ٦٤ محرفًا. settings: إعدادات اختيارية؛ راجع المخطط والأمثلة. يمكن كتابة الأعداد كأعداد JSON؛ القيم المنطقية true/false. الإعدادات الافتراضية مترجمة. تشمل النتيجة الإعدادات والمعرّف وpack: إما cards/caller أو grid/placements/words. يبدأ r وc من الصفر؛ dr وdc خطوتا الصف والعمود. يوفّر GameError حقلي code وdata. تفشل المدخلات غير الصالحة دون إسقاط كلمات.

## التكرار والروابط الثابتة

تعطي الشيفرة v1 والبذرة واللغة والإعدادات نفسها النتيجة ذاتها. احفظ الإصدار والمدخلات؛ قد تختلف إصدارات لاحقة. تقبل الروابط seed والإعدادات البسيطة فقط. لا حاجة لوضع الكلمات الخاصة في عنوان URL. استخدم ملفات إعدادات JSON للمحتوى الخاص. تنطبق حدود النموذج نفسها.

[BINGO · seed=paperoom-demo](https://paperoom.yunusemrevurgun.com/ar/bingo/?mode=75&count=8&seed=paperoom-demo)

## تصدير PDF محليًا

في المتصفح استورد createPDF من /assets/pdf.mjs وlocales من /assets/locales.mjs. مرّر {pack:result.pack, current:{...result.settings,id:result.id}, tool:result.tool,t:locales[result.language]} ثم استدعِ doc.save("games.pdf"). تُحمّل الشيفرة والخطوط من هذا الموقع عند الحاجة، دون إرسال محتوى اللعبة. يعرض كل من الطباعة وPDF بيانات المجموعة نفسها.

## جميع الألعاب القابلة للطباعة

تغطي الدالة generate() نفسها جميع الألعاب في الموقع. اقرأ tools للاطلاع على القائمة، وfields(tool) لإعدادات اللعبة، وtext(tool, language) لنصوصها. ولجميع الألعاب ما عدا المولّدات الأربعة الأصلية، تُعيد layout(result) صفحات متجهة بالمليمترات، وترسم toSVG(page) إحداها بصيغة SVG.

يوجد كتالوج يمكن للآلات قراءته لجميع الألعاب، مع فئاتها ومناطقها وصفحاتها بست لغات، على المسار /api/games.json. وتوجد أدلة نصية عادية لنماذج اللغة على /llms.txt و/llms-full.txt، وتربط كل صفحة في رأسها بنسخة Markdown (index.md).

`tool`: `bingo`, `tombala`, `word-search`, `cards`, `alquerque`, `battleship`, `bulls-and-cows`, `checkers`, `crossword`, `dice-scores`, `dominoes`, `dots-and-boxes`, `exquisite-corpse`, `fortune-teller`, `gomoku`, `goose`, `hangman`, `hex`, `letter-grid`, `loteria`, `ludo`, `mancala`, `maze`, `memory`, `nine-mens-morris`, `nonogram`, `paper-dice`, `paper-soccer`, `raffle-tickets`, `royal-ur`, `scavenger-hunt`, `score-sheets`, `secret-code`, `snakes-and-ladders`, `stop`, `sudoku`, `telephone`, `tic-tac-toe`, `word-scramble`, `xiangqi`

```js
import {generate,layout,toSVG} from 'https://paperoom.yunusemrevurgun.com/assets/api.mjs';
const result=generate({tool:'sudoku',language:'ar',seed:'demo',settings:{size:9,difficulty:'easy'}});
const svg=layout(result).map(toSVG); // vector pages, millimetres
```

---
Languages: [English](https://paperoom.yunusemrevurgun.com/developers/index.md) · [Español](https://paperoom.yunusemrevurgun.com/es/developers/index.md) · [العربية](https://paperoom.yunusemrevurgun.com/ar/developers/index.md) · [Português](https://paperoom.yunusemrevurgun.com/pt/developers/index.md) · [中文](https://paperoom.yunusemrevurgun.com/zh/developers/index.md) · [Français](https://paperoom.yunusemrevurgun.com/fr/developers/index.md)
Page: https://paperoom.yunusemrevurgun.com/ar/developers/ · Paperoom by Yunus Emre Vurgun · https://paperoom.yunusemrevurgun.com/llms.txt
