{"id":26737442,"url":"https://github.com/fahadelahikhan/bouncing-ball-pygame","last_synced_at":"2025-03-28T02:50:48.093Z","repository":{"id":254603969,"uuid":"847028139","full_name":"fahadelahikhan/Bouncing-Ball-Pygame","owner":"fahadelahikhan","description":"Simple Pygame project simulating a bouncing ball with customizable physics and smooth animations. Ideal for beginners learning game development in Python.","archived":false,"fork":false,"pushed_at":"2025-03-13T09:41:28.000Z","size":2,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-13T10:33:57.622Z","etag":null,"topics":["2d-animation","beginner-projects","bouncing-ball","game-development","interactive-games","physics-simulation","pygame","pygame-tutorial","python","python-game"],"latest_commit_sha":null,"homepage":"","language":"Python","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/fahadelahikhan.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}},"created_at":"2024-08-24T16:35:25.000Z","updated_at":"2025-03-13T09:41:32.000Z","dependencies_parsed_at":"2024-08-24T18:09:39.344Z","dependency_job_id":null,"html_url":"https://github.com/fahadelahikhan/Bouncing-Ball-Pygame","commit_stats":null,"previous_names":["fahadelahikhan/bouncing-ball-pygame"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fahadelahikhan%2FBouncing-Ball-Pygame","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fahadelahikhan%2FBouncing-Ball-Pygame/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fahadelahikhan%2FBouncing-Ball-Pygame/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fahadelahikhan%2FBouncing-Ball-Pygame/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fahadelahikhan","download_url":"https://codeload.github.com/fahadelahikhan/Bouncing-Ball-Pygame/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245960690,"owners_count":20700780,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["2d-animation","beginner-projects","bouncing-ball","game-development","interactive-games","physics-simulation","pygame","pygame-tutorial","python","python-game"],"created_at":"2025-03-28T02:50:47.540Z","updated_at":"2025-03-28T02:50:48.089Z","avatar_url":"https://github.com/fahadelahikhan.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bouncing Ball Pygame 🎮\r\n\r\n![Python Version](https://img.shields.io/badge/python-3.8%2B-blue)\r\n![License](https://img.shields.io/badge/license-MIT-green)\r\n\r\nA Python implementation of a bouncing ball game using the Pygame library.\r\n\r\n## 📜 About\r\nThis project implements a simple physics-based bouncing ball game where players control a platform to bounce a ball and prevent it from falling off the screen. It's an excellent example of basic game development principles and physics simulation in Python using Pygame.\r\n\r\n## ✨ Features\r\n- Physics-based ball movement with realistic bouncing\r\n- Player-controlled platform with arrow key input\r\n- Score tracking and level progression\r\n- Lives system with game over conditions\r\n- Color-changing platform for visual feedback\r\n\r\n## 🚀 Quick Start\r\n\r\n### Installation\r\n1. Clone the repository:\r\n   ```bash\r\n   git clone https://github.com/fahadelahikhan/Bouncing-Ball-Pygame.git\r\n   cd Bouncing-Ball-Pygame\r\n   ```\r\n\r\n2. Install required dependencies:\r\n   ```bash\r\n   pip install pygame\r\n   ```\r\n\r\n3. Run the game:\r\n   ```bash\r\n   python main.py\r\n   ```\r\n\r\n### Basic Usage\r\n```python\r\n# The game is controlled via keyboard inputs\r\n# Use the LEFT and RIGHT arrow keys to move the platform\r\n# Prevent the ball from falling off the bottom of the screen\r\n# Each successful bounce increases your score\r\n```\r\n\r\n### Example Game Session\r\n```python\r\n# The ball starts at the center of the screen with random velocity\r\nball_pos = [400, 300]\r\nball_speed = [3.0, 3.5]\r\n\r\n# The platform starts at the bottom center of the screen\r\nplatform_pos = [350, 560]\r\n\r\n# As the player bounces the ball, the score increases\r\n# When the score reaches 10, the player advances to level 2\r\ncurrent_level = 2\r\n```\r\n\r\n## 📖 How It Works\r\nThe game implements basic physics principles:\r\n- The ball moves according to its velocity vector\r\n- When the ball hits a wall or the platform, its velocity is reflected\r\n- The platform can be moved horizontally using arrow keys\r\n- The game tracks score and lives, with increasing difficulty per level\r\n\r\n## ⚖️ License\r\nDistributed under the MIT License. See [LICENSE](LICENSE) for details.\r\n\r\n---\r\n\r\n\u003e **Note**: This implementation is for educational and entertainment purposes. The game logic and physics are simplified for demonstration purposes.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffahadelahikhan%2Fbouncing-ball-pygame","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffahadelahikhan%2Fbouncing-ball-pygame","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffahadelahikhan%2Fbouncing-ball-pygame/lists"}