{"id":21524176,"url":"https://github.com/alcidesrc/php-skeleton","last_synced_at":"2026-04-09T19:02:35.499Z","repository":{"id":231340569,"uuid":"780958573","full_name":"AlcidesRC/php-skeleton","owner":"AlcidesRC","description":"A repository with a skeleton to build modern applications based on PHP","archived":false,"fork":false,"pushed_at":"2025-12-11T12:49:21.000Z","size":105,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-14T11:52:17.068Z","etag":null,"topics":["boiler","bootstrap","clean-code","php","quality-assurance","skeleton","tdd"],"latest_commit_sha":null,"homepage":"","language":"Makefile","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/AlcidesRC.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["AlcidesRC"],"custom":["http://www.paypal.me/AlcidesRC"]}},"created_at":"2024-04-02T13:39:03.000Z","updated_at":"2025-12-11T12:49:25.000Z","dependencies_parsed_at":"2024-04-03T16:30:52.306Z","dependency_job_id":"42210f5d-1d8e-4258-8603-adf19458a6d7","html_url":"https://github.com/AlcidesRC/php-skeleton","commit_stats":null,"previous_names":["fonil/php-skeleton","alcidesrc/php-skeleton"],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/AlcidesRC/php-skeleton","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlcidesRC%2Fphp-skeleton","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlcidesRC%2Fphp-skeleton/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlcidesRC%2Fphp-skeleton/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlcidesRC%2Fphp-skeleton/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AlcidesRC","download_url":"https://codeload.github.com/AlcidesRC/php-skeleton/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlcidesRC%2Fphp-skeleton/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28695528,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-23T15:57:05.722Z","status":"ssl_error","status_checked_at":"2026-01-23T15:56:27.656Z","response_time":59,"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":["boiler","bootstrap","clean-code","php","quality-assurance","skeleton","tdd"],"created_at":"2024-11-24T01:21:22.260Z","updated_at":"2026-04-09T19:02:35.460Z","avatar_url":"https://github.com/AlcidesRC.png","language":"Makefile","funding_links":["https://github.com/sponsors/AlcidesRC","http://www.paypal.me/AlcidesRC"],"categories":[],"sub_categories":[],"readme":"[![Continuous Integration](https://github.com/AlcidesRC/php-skeleton/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/AlcidesRC/php-skeleton/actions/workflows/ci.yml)\n\n# PHP Skeleton\n\n\n\u003e An application skeleton for modern PHP projects, PoC, side-projects... \n\n\n[TOC]\n\n\n## Summary\n\nThis repository contains an application skeleton following best practices.\n\n\n### Highlights\n\n- Minimalist project \n- Includes frequently used tools such as a **Linter**, **PHPStan**, **PHPUnit**, **CodeSniffer** and **VarDumper**.\n\n\n## Requirements\n\nTo use this repository you need:\n\n### Software\n\n- [Git](https://git-scm.com/) - The free and open source distributed version control system.\n\n## Built with\n\nThis project was built with [Dockerized PHP](https://github.com/alcidesrc/dockerized-php), a lightweight dockerized environment to build PHP applications. \n\n\n## Getting Started\n\nJust clone the repository into your preferred path:\n\n```bash\n$ mkdir -p ~/path/to/my-new-project \u0026\u0026 cd ~/path/to/my-new-project\n$ git clone git@github.com:alcidesrc/php-skeleton.git .\n```\n\n### Conventions\n\n#### Directory structure\n\n```text\n.\n├── app                 # Your application business logic goes here\n├── composer.json       # Application dependencies main file\n├── composer.lock       # Application dependencies locked file\n├── LICENSE\n├── Makefile\n├── phpcs.xml           # PHPCS configuration file\n├── phpstan.neon        # PHPStan configuration file\n├── phpunit.xml         # PHPUnit configuration file\n├── public              # Public folder\n├── README.md\n├── tests               # Tests folder\n└── vendor\n```\n\n#### Composer commands\n\nCustom commands are added to `composer.json` under the `scripts` section.\n\n##### Available commands\n\n| Command    | Description                                                                  |\n| ---------- |------------------------------------------------------------------------------|\n| `linter`   | Runs the linter in parallel mode                                             |\n| `phpcs`    | Runs **PHP Check Style** command following the PSR-12                        |\n| `phpcbf`   | Runs **PHP Code Beautifier** and **Fixer** command following the PSR-12      |\n| `phpstan`  | Runs **PHPStan** with the specs defined at `phpstan.neon` configuration file |\n| `phpunit`  | Runs **PHPUnit** with the specs defined at `phpunit.xml` configuration file  |\n| `tests`    | Runs **PHPUnit** without code coverage support                               |\n| `coverage` | Runs **PHPUnit** with **PCOV** code coverage support                         |\n\n#### Makefile\n\nAdditionally a *Makefile* is provided with frequently used commands:\n\n```bash\n~/path/to/my-new-project$ make\n\n╔════════════════════════════════════════════════════════════════════════════════════════════════╗\n║                                                                                                ║\n║ \t                                 .: AVAILABLE COMMANDS :.                                    ║\n║                                                                                                ║\n╚════════════════════════════════════════════════════════════════════════════════════════════════╝\n\n· composer-dump                  Composer: executes \u003ccomposer dump-auto\u003e inside the container\n· composer-install               Composer: executes \u003ccomposer install\u003e inside the container\n· composer-remove                Composer: executes \u003ccomposer remove\u003e inside the container\n· composer-require-dev           Composer: executes \u003ccomposer require --dev\u003e inside the container\n· composer-require               Composer: executes \u003ccomposer require\u003e inside the container\n· composer-update                Composer: executes \u003ccomposer update\u003e inside the container\n· check-syntax                   QA: executes \u003ccheck-syntax\u003e inside the container\n· check-style                    QA: executes \u003ccheck-style\u003e inside the container\n· fix-style                      QA: executes \u003cfix-style\u003e inside the container\n· phpstan                        QA: executes \u003ccomposer phpstan\u003e inside the container\n· test                           QA: executes \u003ccomposer test\u003e inside the container\n· coverage                       QA: executes \u003ccomposer coverage\u003e inside the container\n\n```\n\n##### Installing Dependencies\n\n```bash\n$ make composer-install\n```\n\n##### Running the Test Cases\n\n```bash\n$ make test\n```\n\n#### Volumes\n\n##### Coverage report in HTML\n\nCoverage report in HTML is generated on a root folder `/.coverage`\n\n\u003e [!TIP]\n\u003e\n\u003e If you want the report is generated on a different path, just update accordingly the `composer.json` file under the section `scripts`  \n\n\n## Security Vulnerabilities\n\nPlease review our security policy on how to report security vulnerabilities:\n\n**PLEASE DON'T DISCLOSE SECURITY-RELATED ISSUES PUBLICLY**\n\n### Supported Versions\n\nOnly the latest major version receives security fixes.\n\n### Reporting a Vulnerability\n\nIf you discover a security vulnerability within this project, please [open an issue here](https://github.com/alcidesrc/php-skeleton/issues). All security vulnerabilities will be promptly addressed.\n\n## License\n\nThe MIT License (MIT). Please see [LICENSE](./LICENSE) file for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falcidesrc%2Fphp-skeleton","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falcidesrc%2Fphp-skeleton","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falcidesrc%2Fphp-skeleton/lists"}