{"id":26397702,"url":"https://github.com/yossef-ashraf/design-patterns","last_synced_at":"2025-06-18T00:35:26.618Z","repository":{"id":246395274,"uuid":"821001445","full_name":"yossef-ashraf/Design-Patterns","owner":"yossef-ashraf","description":"This repository contains a collection of solid \u0026 design patterns used in software engineering.","archived":false,"fork":false,"pushed_at":"2025-02-01T00:59:47.000Z","size":3018,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-03T08:04:26.228Z","etag":null,"topics":["design-patterns","docker","oop","php","phpunit-tests","solid"],"latest_commit_sha":null,"homepage":"","language":"PHP","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/yossef-ashraf.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-06-27T15:52:31.000Z","updated_at":"2025-03-27T10:28:10.000Z","dependencies_parsed_at":"2024-06-27T19:41:16.623Z","dependency_job_id":"44e33c72-047c-459c-9b9b-ba10cb1f0ca8","html_url":"https://github.com/yossef-ashraf/Design-Patterns","commit_stats":null,"previous_names":["yossef-ashraf/design-patterns"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/yossef-ashraf/Design-Patterns","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yossef-ashraf%2FDesign-Patterns","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yossef-ashraf%2FDesign-Patterns/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yossef-ashraf%2FDesign-Patterns/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yossef-ashraf%2FDesign-Patterns/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yossef-ashraf","download_url":"https://codeload.github.com/yossef-ashraf/Design-Patterns/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yossef-ashraf%2FDesign-Patterns/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260463062,"owners_count":23013225,"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":["design-patterns","docker","oop","php","phpunit-tests","solid"],"created_at":"2025-03-17T12:18:44.745Z","updated_at":"2025-06-18T00:35:21.603Z","avatar_url":"https://github.com/yossef-ashraf.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Design Patterns\n\nThis repository contains a collection of design patterns used in software engineering. This project aims to demonstrate how different design patterns can be applied to improve the structure and efficiency of software. The repository contains practical examples annotated in the programming language used for each design pattern mentioned.\n\n## Contents\n\n- **Creational Patterns**\n- **Structural Patterns**\n- **Behavioral Patterns**\n\n## Project Advantages\n\n- Real-life examples of each design pattern.\n- Detailed explanations of practical applications.\n- Clear and complete documentation for each part.\n\n## How to Use\n\n1. **Clone Repository:**\n    ```bash\n    git clone https://github.com/yossef-ashraf/Design-Patterns.git\n    ```\n\n2. **Browse Styles:**\n    Review the code and documentation to understand how to implement each design pattern.\n\n3. **Running Examples Locally:**\n    It is recommended to download the project and run it locally to try the code yourself.\n\n## Running the Project with Docker\n\n1. **Build the Docker Image:**\n    ```bash\n    docker build -t design-patterns .\n    ```\n\n2. **Run the Docker Container:**\n    ```bash\n    docker run -p 8000:80 design-patterns\n    ```\n\n    OR\n\n    **Run the Docker Container with Docker Compose:**\n    ```bash\n    docker-compose up --build\n    docker-compose up\n    ```\n\n3. **Shut Down the Docker Container:**\n    ```bash\n    docker-compose down\n    docker-compose down -v\n    ```\n\n    Access the project at `http://localhost:8000`.\n\n## Running the Project with PHP\n\n1. **Ensure PHP is Installed:**\n    Make sure you have PHP installed on your machine. You can download it from [here](https://www.php.net/downloads).\n\n2. **Navigate to the Project Directory:**\n    ```bash\n    cd Design-Patterns\n    ```\n\n3. **Start PHP Built-in Server:**\n    ```bash\n    php -S localhost:8000\n    ```\n\n    Access the project at `http://localhost:8000`.\n\n## Contribution\n\nWe welcome contributions to improve this project. If you would like to participate, please open an \"Issue\" or submit a \"Pull Request\".\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE).\n\n---\n\nWith Regards,  \n[Yossef Ashraf](https://github.com/yossef-ashraf)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyossef-ashraf%2Fdesign-patterns","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyossef-ashraf%2Fdesign-patterns","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyossef-ashraf%2Fdesign-patterns/lists"}