Cornerbloom ยท Mosaic Table SOURCE https://github.com/PiWebswiss/Blokus-Game Pinned commit 403204fe4055522ce7e97bc3436e94fb5454a6ad Observed November 8, 2026: 0 GitHub stars; latest commit February 19, 2026, 09:49 +01:00. MIT, Copyright (c) 2026 Louis Cavaleri. Full license in LICENSE.txt. Actual upstream code retained in rules.mjs: BASE_PIECES (the full set of 21 free polyominoes), clone, rotate, flip, normalize, transformVariants, newBoard, inBounds, hasCornerTouch, hasEdgeTouch, canPlace, place and allLegalPlacements, from src/js/app.js. Rules are parameterized by board size; the source's original 20x20 decision logic is unchanged. The 14x14 two-player compact table is this edition's adaptation with opposite corner starts. It is not presented as official Blokus Duo. Two to four players can use the original 20x20 table. The new state machine/UI adds native explicit placement confirmation, keyboard and touch aim controls, separate geometric rotation and reflection, a legal-preview hint, whole-human-round undo including computer replies, automatic blocked-player skipping, bounded computer scoring, local saves and inline end-of-match scoring. No upstream HTML, CSS, screenshots or bundled third-party runtime is reused. The computer's size/centrality preference is inspired by upstream, with a bounded local frontier proxy instead of the expensive mobility search. Score is covered area, as in the source, with no extra end bonuses. Every player has 21 shapes and 89 total squares. The source array's N/Z pentomino display names were corrected; geometry is unchanged. MECHANICS First shape covers its start corner. Later shapes must touch a friendly corner and cannot share friendly edges. Rival edge contact is permitted. No overlap or off-board tiles. A complete shape is used once. Blocked players are skipped automatically; the match ends when no player has a legal placement. Each placed square scores one; highest area wins, ties shared. This free-placement territory game is distinct from the existing Linkwood/LINKX gravity-drop connection game: there is no falling/support rule, and victory is final covered area rather than connecting opposite edges. ART One original 2x2 ceramic tile atlas generated with OpenAI's built-in GPT image tool. Four optimized local WebP assets: fern.webp (sage fern), rose.webp (coral flower), ripple.webp (blue wave), honey.webp (ochre bee). Artwork appears on each actual placed and previewed board square, shape tray cells, player score badges and mementos. No commercial Blokus art is used. Original new code is MIT; the upstream copyright/license is retained. RUNTIME Flat static HTML/CSS/ES modules with relative local assets. No backend, remote asset/API, credentials, authentication, popups, downloads or persistent server. Current match, undo snapshots and finished-table records remain in this device's localStorage. The hosting platform may inject its own overlay/telemetry outside the bundle. Metadata tags: github-source, game.