{"id":13405082,"url":"https://github.com/contao/contao","last_synced_at":"2025-11-12T21:48:58.058Z","repository":{"id":37235757,"uuid":"144819408","full_name":"contao/contao","owner":"contao","description":"Contao Open Source CMS","archived":false,"fork":false,"pushed_at":"2025-05-08T08:08:53.000Z","size":120289,"stargazers_count":368,"open_issues_count":420,"forks_count":164,"subscribers_count":39,"default_branch":"5.x","last_synced_at":"2025-05-08T09:23:18.811Z","etag":null,"topics":["cms","contao","monorepo","php","symfony"],"latest_commit_sha":null,"homepage":"https://contao.org","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/contao.png","metadata":{"funding":{"custom":"https://to.contao.org/donate"},"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-15T07:18:30.000Z","updated_at":"2025-05-08T08:08:56.000Z","dependencies_parsed_at":"2022-08-03T07:45:19.788Z","dependency_job_id":"42998890-a1cb-4604-8c97-30a756124213","html_url":"https://github.com/contao/contao","commit_stats":{"total_commits":22600,"total_committers":131,"mean_commits":"172.51908396946564","dds":"0.19743362831858402","last_synced_commit":"d5acf5330bab54f75cf6d1112f8298d1010e2964"},"previous_names":[],"tags_count":367,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/contao%2Fcontao","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/contao%2Fcontao/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/contao%2Fcontao/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/contao%2Fcontao/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/contao","download_url":"https://codeload.github.com/contao/contao/tar.gz/refs/heads/5.x","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254140756,"owners_count":22021219,"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":["cms","contao","monorepo","php","symfony"],"created_at":"2024-07-30T19:01:55.481Z","updated_at":"2025-11-12T21:48:58.053Z","avatar_url":"https://github.com/contao.png","language":"PHP","funding_links":["https://to.contao.org/donate"],"categories":["PHP"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\u003cimg src=\"https://contao.org/files/contao/logo/contao-logo-corporate.svg\" alt\u003e\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://github.com/contao/contao/actions\"\u003e\u003cimg src=\"https://github.com/contao/contao/actions/workflows/ci.yml/badge.svg?branch=5.x\" alt\u003e\u003c/a\u003e\n\u003ca href=\"https://codecov.io/gh/contao/contao\"\u003e\u003cimg src=\"https://codecov.io/gh/contao/contao/branch/5.x/graph/badge.svg\" alt\u003e\u003c/a\u003e\n\u003ca href=\"https://packagist.org/packages/contao/contao\"\u003e\u003cimg src=\"https://img.shields.io/packagist/v/contao/contao.svg\" alt\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n## About\n\nContao is a powerful open source CMS that allows you to create professional websites and scalable web applications.\nVisit the [project website](https://contao.org) for more information.\n\n## Purpose\n\nThe purpose of this package is to develop the Contao bundles in a monorepo. Use it when you want to create a pull\nrequest or report an issue.\n\nThe monorepo is automatically split into separate packages:\n\n * [CalendarBundle](https://github.com/contao/calendar-bundle)\n * [CommentsBundle](https://github.com/contao/comments-bundle)\n * [CoreBundle](https://github.com/contao/core-bundle)\n * [FaqBundle](https://github.com/contao/faq-bundle)\n * [ListingBundle](https://github.com/contao/listing-bundle)\n * [MakerBundle](https://github.com/contao/maker-bundle)\n * [ManagerBundle](https://github.com/contao/manager-bundle)\n * [NewsBundle](https://github.com/contao/news-bundle)\n * [NewsletterBundle](https://github.com/contao/newsletter-bundle)\n\n**Please do not use `contao/contao` in production**! Use the split packages instead.\n\n## Platinum partners\n\nThanks to our platinum partners for helping us fund the development of Contao.\n\n\u003ca href=\"https://postyou.de\"\u003e\u003cimg src=\"https://contao.org/files/uploads/partner-logos/6889-postyou.svg\" width=\"300\" alt\u003e\u003c/a\u003e\n\n## Development\n\nTo create a pull request and to test your changes within a running Contao application, it is the easiest to use the\n[Contao Managed Edition](https://github.com/contao/managed-edition). Start by installing it in your current directory:\n\n```bash\ncomposer create-project --no-install contao/managed-edition \u003cdirectory\u003e \u003cbranch\u003e\n```\n\nReplace `\u003cdirectory\u003e` with the directory where you want to install the Managed Edition (use `.` for the current\ndirectory). Replace `\u003cbranch\u003e` with `5.x-dev` if you want to add a new feature, or with `\u003clts-version\u003e.x-dev` (currently\n`5.3.x-dev`) if you want to fix a bug.\n\nThen adjust the `require` section in your `composer.json` file, so Composer loads the monorepo instead of the individual\nbundles:\n\n```json\n\"require\": {\n    \"php\": \"^8.3\",\n    \"contao/contao\": \"5.x-dev\"\n},\n```\n\nAgain, use `5.x-dev` if you want to add a new feature or `\u003clts-version\u003e.x-dev` if you want to fix a bug.\n\nNext, install the dependencies:\n\n```bash\ncomposer update\n```\n\nComposer automatically clones the Git repository into the `vendor/contao/contao` folder. You can complete the setup by\nrunning `vendor/bin/contao-setup` on the command line.\n\nAny changes you make in `vendor/contao/contao` will be tracked via Git, so you can submit your pull request directly\nfrom your application.\n\n## Running scripts\n\nFirst install the code quality tools in `vendor/contao/contao`:\n\n```bash\ncomposer update\ncomposer bin all install\n```\n\nThen run the code quality scripts via Composer:\n\n```bash\ncomposer all\n```\n\nYou can also run the scripts separately:\n\n```bash\ncomposer rector\ncomposer ecs\ncomposer service-linter\ncomposer monorepo-tools\ncomposer unit-tests\ncomposer functional-tests\ncomposer phpstan\ncomposer depcheck\n```\n\nUse the `--` argument to pass additional flags to the underlying commands:\n\n```bash\ncomposer unit-tests -- --filter CoreBundle\ncomposer ecs -- --clear-cache\n```\n\n## Functional tests\n\nTo set up the functional tests, create a database named `contao_test`:\n\n```bash\nmysql -e \"CREATE DATABASE contao_test\"\n```\n\nIf your database uses credentials, copy the file `core-bundle/phpunit.xml.dist` to `core-bundle/phpunit.xml` and adjust\nthe following line:\n\n```xml\n\u003cphp\u003e\n    \u003cenv name=\"DATABASE_URL\" value=\"mysql://root@localhost:3306/contao_test\" /\u003e\n\u003c/php\u003e\n```\n\nThen run the functional tests via Composer:\n\n```bash\ncomposer functional-tests\n```\n\n## Node.js\n\nTo build the assets, you need a Node.js version \u003e= 18.12. Then run these commands:\n\n```bash\nnpm ci\nnpm run build\n```\n\n## End-to-end tests\n\nThe Contao end-to-end tests are availabe as an [NPM package](https://www.npmjs.com/package/contao-e2e-tests). You can\ninstall and run them like this:\n\n```bash\nnpm install contao-e2e-tests --save-dev\nnpx contao-e2e-tests\n```\n\n## License\n\nContao is licensed under the terms of the LGPLv3.\n\n## Sponsors\n\n * Thanks to [JetBrains](https://www.jetbrains.com/?from=Contao) for kindly providing licenses for their products.\n * Thanks to [Blackfire](https://www.blackfire.io) for kindly providing a free open source subscription.\n * This project is tested with [BrowserStack](https://www.browserstack.com).\n\n## Getting support\n\nVisit the [support page](https://to.contao.org/support) to learn about the available support options.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcontao%2Fcontao","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcontao%2Fcontao","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcontao%2Fcontao/lists"}