{"id":51444020,"url":"https://github.com/haydenk/symfony-poly-stack","last_synced_at":"2026-07-05T14:02:46.329Z","repository":{"id":350581345,"uuid":"1207432713","full_name":"haydenk/symfony-poly-stack","owner":"haydenk","description":"Full-featured Symfony 8 starter with web auth, JWT API, EasyAdmin, Scheduler, and swappable DB backends — runs in a devcontainer","archived":false,"fork":false,"pushed_at":"2026-04-11T01:54:29.000Z","size":164,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"develop","last_synced_at":"2026-04-11T03:26:12.771Z","etag":null,"topics":["api-platform","bootstrap","caddy","devcontainer","doctrine","easyadmin","jwt","mise","mysql","php","postgresql","rest-api","sqlite","starter-template","symfony","symfony8","webpack-encore"],"latest_commit_sha":null,"homepage":null,"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/haydenk.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":"2026-04-10T23:59:52.000Z","updated_at":"2026-04-11T01:58:29.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/haydenk/symfony-poly-stack","commit_stats":null,"previous_names":["haydenk/symfony-poly-stack"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/haydenk/symfony-poly-stack","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haydenk%2Fsymfony-poly-stack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haydenk%2Fsymfony-poly-stack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haydenk%2Fsymfony-poly-stack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haydenk%2Fsymfony-poly-stack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/haydenk","download_url":"https://codeload.github.com/haydenk/symfony-poly-stack/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haydenk%2Fsymfony-poly-stack/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35156520,"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-05T02:00:06.290Z","response_time":100,"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":["api-platform","bootstrap","caddy","devcontainer","doctrine","easyadmin","jwt","mise","mysql","php","postgresql","rest-api","sqlite","starter-template","symfony","symfony8","webpack-encore"],"created_at":"2026-07-05T14:02:45.508Z","updated_at":"2026-07-05T14:02:46.321Z","avatar_url":"https://github.com/haydenk.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Symfony Poly Stack\n\nA full-featured Symfony 8 / PHP 8.5 example application demonstrating web\nauthentication, a JWT REST API, an admin panel, database fixtures, and a scheduler —\nall running inside a devcontainer with swappable database backends\n(PostgreSQL, MySQL, SQLite).\n\n## Quick Start\n\nRequires [Docker](https://www.docker.com/) + [VS Code Dev Containers](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers)\n(or local PHP 8.5) and [mise](https://mise.jdx.dev/).\n\n```bash\n# 1. Open the project in its devcontainer\n# 2. Create .env — see docs/getting-started.md for the template\nmise run setup     # install deps, generate secrets, create DB, migrate\nmise run dev       # start Caddy + PHP-FPM + Scheduler → http://localhost:8000\nmise run db:seed   # optional: demo accounts (admin@example.com / password)\n```\n\n## Services\n\nPostgreSQL 18, MySQL 8.4, Redis 8, and Mailpit run alongside the app container and\nare reachable on `127.0.0.1` at their default ports; Caddy serves the app on\n`localhost:8000` and Mailpit's UI is on `localhost:8025`. Details in\n[docs/services.md](docs/services.md).\n\n\u003e **Upgrading from PostgreSQL 17?** Recreate the data volume:\n\u003e `docker volume rm symfony-poly-stack_postgres-data` — see\n\u003e [docs/services.md](docs/services.md#bundled-services).\n\n## Documentation\n\n| Topic | |\n|---|---|\n| [Getting Started](docs/getting-started.md) | Requirements, `.env` template, setup, dev server |\n| [Services \u0026 Devcontainer](docs/services.md) | Bundled services, networking, Codespaces support |\n| [Application Guide](docs/application.md) | Web routes, JWT API, admin panel |\n| [Database](docs/database.md) | Connections, backend switching, migrations, fixtures |\n| [Mise Tasks](docs/tasks.md) | Full task reference |\n| [Testing \u0026 Code Quality](docs/quality.md) | PHPUnit, PHPStan level 8, Rector, php-cs-fixer |\n| [Dagger CI](docs/dagger-ci.md) | Containerized quality suite (`mise ci`) |\n| [Architecture](docs/architecture.md) | Tech stack and project layout |\n\n## Everyday Commands\n\n```bash\nmise run test      # PHPUnit suite\nmise run quality   # lint + analyse + rector + test, concurrently\nmise run ci        # same suite in Dagger containers (run from the host)\nmise run db:use sqlite   # switch database backend\n```\n\nThe full list: [docs/tasks.md](docs/tasks.md).\n\n## License\n\nLicensed under the [GNU Affero General Public License v3.0 or later](LICENSE)\n(`AGPL-3.0-or-later`).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaydenk%2Fsymfony-poly-stack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhaydenk%2Fsymfony-poly-stack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaydenk%2Fsymfony-poly-stack/lists"}