個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Chess with an AI opponent (minimax), offline, Romanian UI.
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗English · Română · Français · Italiano · Español · Português · Deutsch · Magyar
Version: 15.2.1 · Last updated: 2026-10-31
Interface languages: Română, English, Français, Italiano, Español, Português (PT), Deutsch, Magyar
An atlas/encyclopedia of chess variants: 706 variants and 299 lexicon entries, with playable engines for some of them.
Live app: https://chiuta.github.io/Sah-fara-frontiere/
New in 15.2.0: engine level 4 ("expert", depth 7, 1.5M-node cap); in a 51-game simulation against level 3 it scored 0.73 (Wilson 95% [0.59, 0.83]). Levels 0-3 are unchanged.
New in 15.1.0: difficulty and number-of-players filters in the atlas, and a new "Against the engine" tab in the Chess table (adjustable engine level, take-back, PGN download, resume from a PGN). See CHANGELOG.md.
Șah fără frontiere ("Chess without borders") is an atlas in a single HTML file (v14.6.4, last updated on 22 October 2026; the atlas content is dated 14 October 2026; made for the Atlantykron 2026 workshop) with 1005 entries: 706 chess variants (online, modern, historical, regional, geometric, fairy, large-board, with AI) and 299 lexicon terms (history, AI, players, openings). According to the "About this atlas" section, the file is generated from a Python script and a JSON data file, with no runtime dependencies, implemented in AI-assisted iterations.
sah-fara-frontiere. keys); on import the file is validated and confirmation is requested.They open from the "Chess table" button next to "Course", in a dialog with five tabs. Scope: all the new features concern standard chess (FIDE rules, own engine, validated by perft); the 706 variants in the atlas are not covered (they keep their "▶ Play" mode unchanged).
W key.Nf3, e2e4), the keys L (last move), S (status), M (pieces that can move), W (why can't I move); announcements in an aria-live region and, optionally, voice (Web Speech, if the browser has a voice; otherwise it says explicitly that there is none).The engine and its strength. The levels: easy = depth 1 with a choice among nearly equal moves; medium = depth 2; advanced = depth 5 with a node budget. In control matches (3 random openings × 2 colours, 160 half-moves): easy won 12–0 against random moves, advanced won 6–0 against medium and 6–0 against easy. Small samples: they indicate the order, not a measurable strength in Elo. Draw by threefold repetition, the 50-move rule and insufficient material are applied automatically. No clock.
Languages. The interface, the dialogs of the FFF kit and the Chess table follow the page language and are available in Romanian, English, French, Italian, Spanish, Portuguese, Hungarian and German; the selector in the controls bar (or the one in the table's Accessibility tab) switches the whole page. The atlas content is translated as follows: the rules text and the subtitle of all 1005 entries (706 variants + 299 lexicon entries) exist in all 8 languages, as do the course, the "About this atlas" section, the meta description and about 430 generic tags. Still in Romanian: about 4000 one-off tags (unique phrases, e.g. "960 positions"), some tags that are English names or terms (Lichess, Streaming, …) and, naturally, proper names (players, engines, products, organisations, openings) and acronyms (FIDE, NNUE…). The translations other than Romanian and English are automatic and not verified by native speakers.
Tests: node tests/fff-r8.test.mjs (Playwright, network blocked, 2 pages for P2P, axe, 1280×800 and 360×740) and node tests/engine.test.mjs (the engine in Node: perft, FEN, SAN, draws, mate in N, explanations).
/ focuses the search; R random variant; B variants for beginners; T switches the theme; A switches the text size; C opens the guided path; ? help; Esc closes the windows; Enter or Space opens the focused card; Tab / Shift+Tab navigation.localStorage, with the prefix sah-fara-frontiere. — the atlas state (sah-fara-frontiere.state:v2), the course (sah-fara-frontiere.curriculum:v1), the theme, text size, sound, notation and glyph style, the badges, game statistics, the player's ELO, the current game state and the "welcome"/seen-tour markers.sff_r8_ keys (announcement/voice preferences, tournament, daily streak, the cache of the problem of the day); the FFF kit adds backup (export/import/delete) and the "Transparency" window from the version number.fetch calls and no scripts/fonts loaded from external hosts. The sheets contain links to sources (for example Wikipedia, FIDE Handbook, Lichess, chessvariants.com), which open only if you click them. The application text states: "Works offline, no tracking, no ads".Download index.html (about 2.4 MB) and open it in a browser; it works without internet. Only the links to external sources require a connection.
Stable, version 15.2.0 (2026-10-27). The atlas (706 variants + 299 lexicon entries) is complete; playable engines cover part of the variants. The Chess table covers standard chess only. A unified local multiplayer mode across the games is planned, not implemented. Changes: CHANGELOG.md.
Everything runs from the single file index.html: no CDN, no external fonts or scripts, no tracking, no accounts. A service worker caches the app for offline start. The AI engines run locally in the browser; the optional two-player game uses WebRTC directly between the players (no server).
pointer:coarse); desktop is unchanged.Local storage keys now use the sah-fara-frontiere. prefix (FFF.store.migrate at startup, before any read): existing data is kept automatically, and old .fff.json backups can still be imported.
14.6.10 — 2026-10-22: Weight and DOM: the page falls from 8.4 MB to 3.2 MB and from about 22,500 to about 1,700 DOM nodes at start. The 1,005 cards are created as light skeletons (aria-label, tabindex) and their content is built only when they approach the viewport (IntersectionObserver, 1,400 px margin) and released when they move away, keeping their measured height so the scroll does not jump; search highlighting is applied at hydration. The content translations (en, fr, it, es, pt, de, hu; 5.3 MB) moved to i18n/vi18n-<lang>.js, loaded only for the chosen language (plus English as fallback); the service worker caches them and, once idle, the page downloads the rest in the background (skipped with Save-Data / slow connections), so the app stays fully offline; if a pack cannot be loaded a notice in the chosen language is shown. Touch targets of 44 px on coarse pointers for the achievements, about, welcome-banner and help buttons. New test: tests/lazy.test.mjs.
fff-kit 1.1.4: touch targets and minimum text size; touch targets and text size corrected.
app.json; CSP with recomputed hashes; backup and the "Transparency" window from the version number; tests tests/fff-r8.test.mjs and tests/engine.test.mjs.scroll-margin-top so they do not stay under the sticky bar.aria-live region); it respects prefers-reduced-motion.'unsafe-inline', 'wasm-unsafe-eval' and blob: for scripts (inline scripts are now authorized by SHA-256 hash); worker-src is 'none'.MIT — see the LICENSE file. The header in index.html and the interface text indicate the same license (an earlier "CC-BY-SA 4.0" mention in the interface was removed during the audit, 2026-10-11, to eliminate the contradiction).
Exception — third-party material: the summaries and descriptions of some variants rely on public sources (Wikipedia, FIDE, Lichess, chessvariants.com), indicated in the application as links and acknowledgements. The MIT license covers the author's original contribution (code, selection, own texts); any text taken or adapted from third parties remains under the source's license (e.g. CC BY-SA for Wikipedia) and must be checked by whoever reuses it.
Game names are trade names of their holders, used descriptively; the project is not affiliated with them.
Alexio — Alexandru-Ionuț Chiuță, contact: [email protected]. The application presents him as author, developer and musician, with mentions of the TROM project, Editura Tornada and Centrul StrING.
Șah fără frontiere is a single-file chess-variants atlas: 706 variants plus 299 lexicon entries, with search, filters, playable engines (local AI, PGN/FEN export, local ELO), a 7-day guided course, badges and CSV/BibTeX export. Since 14.4.0 a "Chess table" for standard chess adds two-player play over WebRTC (manual signalling, no server), a simple local analyzer, a deterministic daily mate puzzle, "why can't I move?" explanations, keyboard play with spoken announcements and a local Elo tournament (the 706 variants are not covered). Everything runs locally; progress is kept in localStorage (sah-fara-frontiere. keys) and no external requests were found in the code. Licensed MIT for the author's own contribution (see LICENSE); third-party-derived summaries keep their source licences.
Audit: 2026-10-10 — the "no network" claim verified (0 fetch/XHR/WebSocket, CSP connect-src 'self', only external <a> links); light-theme contrast and card semantics corrected (the tag buttons in cards are no longer nested inside a role="button"). The license was unified (2026-10-11) and later established as MIT, and LICENSE was added. Some variants are marked in the application as "experimental/synthetic" (no primary source): treat their rules as unverified.