{"id":26282315,"url":"https://github.com/ahmedyar7/sorting-visualizer","last_synced_at":"2025-08-24T18:35:37.227Z","repository":{"id":253221954,"uuid":"828170276","full_name":"ahmedyar7/Sorting-Visualizer","owner":"ahmedyar7","description":"Sorting Algorithms visualizes using python pygame \u0026 generators","archived":false,"fork":false,"pushed_at":"2025-03-23T15:33:56.000Z","size":37581,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-25T03:07:17.348Z","etag":null,"topics":["datastructures-algorithms","dsa","python","sorting","sorting-algorithms-implemented","sortingalgorithms","sortingvisualizer"],"latest_commit_sha":null,"homepage":"https://www.linkedin.com/feed/update/urn:li:activity:7246523843538763776/","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/ahmedyar7.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":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-07-13T10:25:42.000Z","updated_at":"2025-03-23T15:34:00.000Z","dependencies_parsed_at":"2025-06-25T03:07:18.234Z","dependency_job_id":"b0f6ca26-6d98-4160-9862-8db6567027b9","html_url":"https://github.com/ahmedyar7/Sorting-Visualizer","commit_stats":null,"previous_names":["ahmedyar7/sorting-visualizer"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ahmedyar7/Sorting-Visualizer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ahmedyar7%2FSorting-Visualizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ahmedyar7%2FSorting-Visualizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ahmedyar7%2FSorting-Visualizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ahmedyar7%2FSorting-Visualizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ahmedyar7","download_url":"https://codeload.github.com/ahmedyar7/Sorting-Visualizer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ahmedyar7%2FSorting-Visualizer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271922626,"owners_count":24844227,"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","status":"online","status_checked_at":"2025-08-24T02:00:11.135Z","response_time":111,"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":["datastructures-algorithms","dsa","python","sorting","sorting-algorithms-implemented","sortingalgorithms","sortingvisualizer"],"created_at":"2025-03-14T16:40:44.923Z","updated_at":"2025-08-24T18:35:37.202Z","avatar_url":"https://github.com/ahmedyar7.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sorting Visualizer 🧮\n\n## Overview 📃\n\nThis python project was inspired by **[Green Code Sorting Algorithm Video](\"https://www.youtube.com/watch?v=N4JVT3eVBP8\")**. This python program contain all the popular sorting algoritms visualization by using **`pygame`** and python **`generators`**\n\n# Sorting Algorithms 🧮\n\n| Bubble Sort                                    | Selection Sort                                       | Insertion Sort                            | Merge Sort                                   | Comb Sort                                  |\n| ---------------------------------------------- | ---------------------------------------------------- | ----------------------------------------- | -------------------------------------------- | ------------------------------------------ |\n| ![Bubble Sort](.assets/.img/bubble%20sort.png) | ![Selection Sort](.assets/.img/selection%20sort.png) | ![Insertion Sort](.assets/.img/image.png) | ![Merge Sort](.assets/.img/merge%20sort.png) | ![Comb Sort](.assets/.img/Comb%20sort.png) |\n\n| Radix Sort                                   | Counting Sort                                      | Quick Sort                                   | Heap Sort                                  | Shell Sort                                   |\n| -------------------------------------------- | -------------------------------------------------- | -------------------------------------------- | ------------------------------------------ | -------------------------------------------- |\n| ![Radix Sort](.assets/.img/radix%20sort.png) | ![Counting Sort](.assets/.img/Counting%20sort.png) | ![Quick Sort](.assets/.img/quick%20sort.png) | ![Heap Sort](.assets/.img/Heap%20sort.png) | ![Shell Sort](.assets/.img/shell%20sort.png) |\n\n## Depedencies 📦\n\n1. **Python** 🐍\n2. **Pygame** 🎮\n\n\u003cdiv align=\"center\"\u003e\n   \u003ca href=\"https://www.python.org/\"\u003e\n      \u003cimg src=\"https://img.shields.io/badge/Python-3776AB?logo=python\u0026logoColor=white\u0026style=for-the-badge\" height=\"50\" alt=\"python logo\"  /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://www.pygame.org/news\"\u003e\n      \u003cimg src=\"pygamenew.png\" height=\"50\" alt=\"python logo\"  /\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\n###\n\n```bash\npip install pygame\n\n```\n\n## Getting Started 🚀\n\n1. Download the Whole repository 📁 or\n2. Clone the Repository via git\n\n```bash\ngit clone https://github.com/ahmedyar7/Sorting-Visualizer.git\n\n```\n\n3. Make sure the dependencies are met ✅\n4. Run main.py file\n\n```bash\npython main.py\n```\n\n## Project Struture 🏗️\n\n1. **`sorting_algorithms.py`** 📜\n\n   - This file contain class `SortingAlgorithms` that contain the algorithms in form of methods\n\n2. **`draw_info.py`** 🖼️\n\n   - This file contain the information about the screen and bars rendering.\n\n3. **`visualization.py`** 🖍️\n\n   - This file contain class `Visualization` that contain two methods\n   - `draw()` contain rendering information about the controls/ options rendering and calls the `draw_list()` to draw the actual array\n   - `draw_list()` This contain the information about the rendering of the list on to the screen.\n\n4. **`program.py`** 🦾\n\n   - This file contain class `Program` that contain the actual driver code for the whole program, this file import stuff from all other program files.\n\n   - `play_sound() \u0026 stop_sound()` These function takes care of playing \u0026 stoping of sound\n   - `driver_program()` This function provides with the game loop and the keystrokes functionality to the program.\n\n5. **`main.py`** 🚦\n   - This file import the `Program` class and the run the object of that class\n\n## Contributions🤝\n\nContributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.\n\n- Fork the Project\n- Create your Feature Branch (`git checkout -b feature/AmazingFeature`)\n- Commit your Changes (`git commit -m 'Add some AmazingFeature'`)\n- Push to the Branch (`git push origin feature/AmazingFeature`)\n- Open a Pull Request\n\n## License ⚖\n\n[MIT LICENSE](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fahmedyar7%2Fsorting-visualizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fahmedyar7%2Fsorting-visualizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fahmedyar7%2Fsorting-visualizer/lists"}