{"id":48133891,"url":"https://github.com/cheesejaguar/seejeh","last_synced_at":"2026-04-04T16:42:52.749Z","repository":{"id":333185964,"uuid":"1041254064","full_name":"cheesejaguar/seejeh","owner":"cheesejaguar","description":"Bringing the traditional 7×7 Seejeh board game to the web. Players place stones, then move and capture using custodian rules, chaining captures for big swings. With bilingual support and smooth design, it’s a modern way to enjoy an ancient strategy classic.","archived":false,"fork":false,"pushed_at":"2026-01-17T22:37:05.000Z","size":544,"stargazers_count":0,"open_issues_count":5,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-18T06:53:12.990Z","etag":null,"topics":["github-spark","seejeh","vibe-coding"],"latest_commit_sha":null,"homepage":"https://seejeh.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cheesejaguar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-20T08:02:45.000Z","updated_at":"2026-01-17T22:37:10.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/cheesejaguar/seejeh","commit_stats":null,"previous_names":["cheesejaguar/seejeh"],"tags_count":null,"template":false,"template_full_name":"github/spark-template","purl":"pkg:github/cheesejaguar/seejeh","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cheesejaguar%2Fseejeh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cheesejaguar%2Fseejeh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cheesejaguar%2Fseejeh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cheesejaguar%2Fseejeh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cheesejaguar","download_url":"https://codeload.github.com/cheesejaguar/seejeh/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cheesejaguar%2Fseejeh/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31405745,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T10:20:44.708Z","status":"ssl_error","status_checked_at":"2026-04-04T10:20:06.846Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["github-spark","seejeh","vibe-coding"],"created_at":"2026-04-04T16:42:47.660Z","updated_at":"2026-04-04T16:42:52.741Z","avatar_url":"https://github.com/cheesejaguar.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Seejeh 7×7 - Traditional Board Game\n\nA faithful implementation of the ancient Egyptian board game Seejeh (also known as Seega) built with React, TypeScript, and Vite. Features authentic 7×7 rules, bilingual Arabic/English support, and customizable rule variants.\n\n![Seejeh Game Screenshot](https://via.placeholder.com/800x400?text=Seejeh+7x7+Game)\n\n## 🎮 Quick Start\n\n```bash\n# Install dependencies\nnpm install\n\n# Start development server\nnpm run dev\n\n# Run tests\nnpm test\n\n# Build for production\nnpm run build\n```\n\nThe game will be available at `http://localhost:5173`\n\n## 🎯 Game Rules\n\n### Overview\nSeejeh is a two-player strategy game played on a 7×7 board. Players compete to capture opponent stones through strategic placement and movement.\n\n### Gameplay Phases\n\n#### 1. Placement Phase\n- Players alternate placing **2 stones per turn**\n- Total of 48 stones (24 per player)\n- **Cannot place in center cell** during this phase\n- Continue until all stones are placed\n\n#### 2. Movement Phase\n- Move **one stone orthogonally** (one step only)\n- **No diagonal moves or jumping**\n- Capture opponent stones via custodian capture\n- Continue until one player is reduced to 7 or fewer stones\n\n### Capture Rules\n\n**Custodian Capture**: Sandwich one or more contiguous opponent stones between your pieces along orthogonal lines. All sandwiched stones are captured and removed.\n\n**Chain Captures**: If your move captures stones, you may continue moving the same piece to make additional captures. You can stop the chain at any time.\n\n**Safe Center**: The center cell is marked and stones placed there **cannot be captured**.\n\n### Win Condition\nReduce your opponent to **7 or fewer stones** to win immediately.\n\n### Special Rules\n\n**Blockade**: If a player has no legal moves, the opponent removes one of the blocked player's stones, then the blocked player continues.\n\n## ⚙️ Rule Variants\n\nThe game includes toggleable rule variants:\n\n- **First Move Center**: First movement must enter the center cell\n- **Anti-Shuttle**: Prevents repetitive back-and-forth movement\n- **Blockade Removal**: Enable/disable blockade resolution\n\n## 🌍 Language Support\n\n- **English** (LTR layout)\n- **Arabic** (RTL layout) \n- Full interface translation\n- Culturally appropriate typography\n\n## 🛠️ Technical Features\n\n- **Pure TypeScript** game engine with comprehensive tests\n- **Responsive design** - works on desktop and mobile\n- **Keyboard navigation** - full accessibility support\n- **Local persistence** - games auto-save to localStorage\n- **Zero dependencies** for game logic\n- **Hot-seat multiplayer** (two players, one device)\n\n## 🏗️ Architecture\n\n### Core Components\n\n- **Game Engine** (`src/lib/rules.ts`) - Pure functions for game logic\n- **State Management** (`src/state/gameStore.ts`) - Zustand store for UI state\n- **Board Component** (`src/components/Board.tsx`) - Interactive game board\n- **I18n System** (`src/i18n/`) - Bilingual support with RTL\n\n### Key Design Principles\n\n- **Pure functions** for all game logic (no side effects)\n- **Immutable state** updates\n- **Comprehensive error handling**\n- **Separation of concerns** (UI vs game logic)\n- **Accessibility first** design\n\n## 🧪 Testing\n\nRun the test suite:\n\n```bash\nnpm test\n```\n\nTests cover:\n- ✅ Valid/invalid moves and placements\n- ✅ Single and multi-stone captures\n- ✅ Chain capture mechanics\n- ✅ Win condition detection\n- ✅ Blockade scenarios\n- ✅ Rule variant enforcement\n- ✅ Center cell immunity\n\n## 🚀 Deployment\n\n### Vercel (Recommended)\n```bash\nnpm run build\n# Upload dist/ folder to Vercel\n```\n\n### Netlify\n```bash\nnpm run build\n# Drag dist/ folder to Netlify deploy\n```\n\n### GitHub Pages\n```bash\nnpm run build\n# Configure Pages to serve from dist/ folder\n```\n\n## 📚 Historical Background\n\nSeejeh (Arabic: سيجة) is one of the world's oldest strategy games, with archaeological evidence dating back thousands of years in ancient Egypt. The game spread throughout North Africa and the Middle East, with regional variations in rules and board sizes.\n\nThe 7×7 variant implemented here represents the classical form as documented in historical sources and modern game research.\n\n## 🔗 Sources \u0026 References\n\n- Bell, R.C. (1979). *Board and Table Games from Many Civilizations*\n- [Wikipedia: Seega](https://en.wikipedia.org/wiki/Seega)\n- Murray, H.J.R. (1952). *A History of Board-Games Other Than Chess*\n\n## 📄 License\n\nMIT License - feel free to use this code for learning, modification, or commercial projects.\n\n## 🤝 Contributing\n\nContributions welcome! Areas for improvement:\n\n- Additional rule variants\n- AI opponent implementation\n- Online multiplayer support\n- Enhanced accessibility features\n- Performance optimizations\n\n---\n\n*Built with ❤️ using React, TypeScript, and modern web standards*","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcheesejaguar%2Fseejeh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcheesejaguar%2Fseejeh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcheesejaguar%2Fseejeh/lists"}