{"id":51570399,"url":"https://github.com/boopi7/iam_2d_game","last_synced_at":"2026-07-10T19:01:55.307Z","repository":{"id":328962331,"uuid":"1117505125","full_name":"Boopi7/IAM_2D_Game","owner":"Boopi7","description":null,"archived":false,"fork":false,"pushed_at":"2025-12-16T13:00:53.000Z","size":87,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-17T20:51:45.112Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Boopi7.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"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-12-16T12:06:42.000Z","updated_at":"2025-12-16T13:00:58.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Boopi7/IAM_2D_Game","commit_stats":null,"previous_names":["dravynn/iam_2d_game","boopi7/iam_2d_game"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/Boopi7/IAM_2D_Game","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boopi7%2FIAM_2D_Game","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boopi7%2FIAM_2D_Game/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boopi7%2FIAM_2D_Game/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boopi7%2FIAM_2D_Game/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Boopi7","download_url":"https://codeload.github.com/Boopi7/IAM_2D_Game/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boopi7%2FIAM_2D_Game/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35339931,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-10T02:00:06.465Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2026-07-10T19:01:54.140Z","updated_at":"2026-07-10T19:01:55.278Z","avatar_url":"https://github.com/Boopi7.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# IAM: The Awakening 🎮\n\nA modern Mario-style side-scrolling platformer web game built with **TypeScript**, **React**, and **Tailwind CSS**. Play as \"I Am\", a divine hero sent to restore balance to a broken world by collecting IAM tokens and giving them back to the people.\n\n## 🎮 Game Features\n\n### Core Gameplay\n- **Side-Scrolling Platformer**: Classic Mario-style gameplay with smooth physics\n- **3 Levels**: Each with unique challenges and increasing difficulty\n- **IAM Token Collection**: Collect coins throughout levels to unlock barriers\n- **Obstacles**: Navigate spikes, pits, platforms, and barriers\n- **Win Condition**: Collect all coins and reach the flag to complete levels\n- **Final Awakening**: Complete all levels to \"give back\" IAM tokens and restore balance\n\n### Controls\n- **Desktop**: \n  - `A` / `←` - Move left\n  - `D` / `→` - Move right\n  - `W` / `↑` / `Space` - Jump\n- **Mobile**: \n  - On-screen directional buttons\n  - Jump button\n\n### Game Mechanics\n- **Physics**: Gravity, jumping, friction, and collision detection\n- **Barriers**: Collect required coins to open barriers blocking your path\n- **Level Progression**: Unlock new levels by completing previous ones\n- **Local Storage**: Progress automatically saved (IAM count, unlocked levels)\n- **Camera**: Smooth camera follows player horizontally\n\n## 🛠️ Tech Stack\n\n- **Framework**: Next.js 14 (React)\n- **Language**: TypeScript\n- **Styling**: Tailwind CSS\n- **State Management**: Zustand with localStorage persistence\n- **Animations**: Framer Motion\n- **Physics**: Custom game loop with requestAnimationFrame\n\n## 📦 Project Structure\n\n```\n├── app/\n│   ├── page.tsx              # Main game page\n│   ├── layout.tsx            # Root layout\n│   └── globals.css           # Global styles\n├── components/platformer/\n│   ├── Player.tsx            # Player character component\n│   ├── Coin.tsx              # Collectible coin component\n│   ├── Obstacle.tsx          # Obstacles (spikes, platforms, etc.)\n│   ├── GameCanvas.tsx        # Main game canvas with camera\n│   ├── HUD.tsx               # Heads-up display\n│   ├── WinScreen.tsx         # Victory screen\n│   ├── LevelSelect.tsx       # Level selection UI\n│   └── MobileControls.tsx    # Mobile touch controls\n├── hooks/\n│   └── usePlatformerPhysics.ts  # Game physics and collision detection\n├── store/\n│   └── platformerStore.ts    # Zustand game state store\n└── types/\n    └── platformer.ts         # TypeScript type definitions\n```\n\n## 🚀 Getting Started\n\n1. **Install dependencies**:\n```bash\nnpm install\n```\n\n2. **Run development server**:\n```bash\nnpm run dev\n```\n\n3. **Open** [http://localhost:3000](http://localhost:3000) in your browser\n\n## 🎯 Game Levels\n\n### Level 1: The Awakening 🌳\n- **Coins Required**: 10\n- **Description**: Begin your journey to restore balance\n- **Features**: Basic platforms, spikes, and your first barrier\n\n### Level 2: The Descent 💎\n- **Coins Required**: 15\n- **Description**: Navigate through treacherous paths\n- **Features**: More complex platforming, pits, and increased difficulty\n\n### Level 3: The Awakening ⛰️\n- **Coins Required**: 20\n- **Description**: Give back to restore balance\n- **Features**: Most challenging level with complex platforming and many obstacles\n\n## 🎨 Design Features\n\n- **Clean UI**: Modern, futuristic aesthetic\n- **Dark/Light Mode**: Toggle between themes\n- **Responsive**: Works on desktop and mobile\n- **Smooth Animations**: Framer Motion for polished feel\n- **Visual Feedback**: Coin collection, level completion, win screen\n\n## 🔮 Future Enhancements\n\n- Story intro and lore pop-ups per level\n- IAM staking to unlock hidden worlds\n- Stellar wallet connection for on-chain IAM tracking\n- Leaderboard and multiplayer race mode\n- Custom avatars (NFT-ready)\n- Sound effects and background music\n- More levels and power-ups\n- Enemy AI and combat system\n\n## 📝 Gameplay Tips\n\n1. **Collect Coins**: You need to collect the required number of coins to open barriers\n2. **Watch for Spikes**: Touching spikes resets the level\n3. **Avoid Pits**: Falling into pits resets the level\n4. **Platform Timing**: Some platforms require precise jumps\n5. **Complete All Levels**: Finish all 3 levels to achieve \"The Awakening\"\n\n## 🎮 How to Play\n\n1. Use arrow keys or WASD to move\n2. Jump with W, Space, or Up arrow\n3. Collect all coins in a level\n4. Reach the flag at the end to complete the level\n5. Complete all levels to restore balance!\n\n## 📄 License\n\nThis project is open source and available for personal use.\n\n---\n\n**Built with ❤️ using Next.js, React, TypeScript, and Tailwind CSS**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboopi7%2Fiam_2d_game","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fboopi7%2Fiam_2d_game","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboopi7%2Fiam_2d_game/lists"}