{"id":19311079,"url":"https://github.com/boxuk/wp-packages","last_synced_at":"2025-11-15T14:08:45.509Z","repository":{"id":247967634,"uuid":"804367100","full_name":"boxuk/wp-packages","owner":"boxuk","description":null,"archived":false,"fork":false,"pushed_at":"2025-11-13T03:28:06.000Z","size":6880,"stargazers_count":2,"open_issues_count":10,"forks_count":0,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-11-13T05:31:25.877Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/boxuk.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-05-22T13:11:07.000Z","updated_at":"2025-11-11T09:16:44.000Z","dependencies_parsed_at":"2025-04-18T10:58:12.255Z","dependency_job_id":"d64a4452-0b4c-405e-819b-92ea99de08ef","html_url":"https://github.com/boxuk/wp-packages","commit_stats":null,"previous_names":["boxuk/wp-packages"],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/boxuk/wp-packages","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxuk%2Fwp-packages","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxuk%2Fwp-packages/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxuk%2Fwp-packages/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxuk%2Fwp-packages/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/boxuk","download_url":"https://codeload.github.com/boxuk/wp-packages/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxuk%2Fwp-packages/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":284566169,"owners_count":27027039,"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-11-15T02:00:06.050Z","response_time":57,"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":[],"created_at":"2024-11-10T00:27:35.431Z","updated_at":"2025-11-15T14:08:45.491Z","avatar_url":"https://github.com/boxuk.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BoxUK WP Packages Mono Repo\n\nThis is the BoxUK mono-repo for our WordPress packages. The [WordPress Skeleton](https://github.com/boxuk/wp-project-skeleton) uses these packages to add functionality. All packages provide their own documentation: \n\n## [📚 Read the docs](https://boxuk.github.io/wp-packages/)\n\n---\n\n## Working on the packages mono-repo \n\n### How to use\n\nThis mono repo allows you to develop any of the packages. To start a WordPress development environment to test against, either:\n\nrun `docker-compose up -d wordpress` to start the container \\\nor \\\nrun `bin/start`, which runs composer \u0026 npm installs, starts the container and runs npm start\n\nand you'll be able to access WordPress at [http://localhost:8000](http://localhost:8000). \n\nWe use [Monorepo Builder](https://github.com/symplify/monorepo-builder) tools to manage the mono-repo dependancies. \n\n### Structure\n\nEach of the packages within the `packages` directory is an individual package. These should be standalone, and any dependancies they have (with another package or external) should be loaded via composer. \n\n### Adding Dependancies\n\nDependancies for each package should be defined in the package's `composer.json` file. Once the file has been altered, from the root of the project run the following commands: \n\n```sh\n# Merge the dependancy tree\nbin/composer run mono:merge \n# Install your package\nbin/composer install \u003cpackage-name\u003e\n```\n\n### Adding a package\n\nTo create a package, you can run `bin/create-package \u003cpackage-name\u003e` and this will scaffold out all the necessary changes needed. In order for your package to be published, you'll also need to modify `/.github/workflows/packages.yml` to configure the package name and the target repository for publishing. This will automate pushing changes of the package out to the target repository, but you may need further work to ensure that repository is available via `composer` in your projects. \n\n### Tests\n\nAll packages need to have 100% test coverage. During CI they will be tested for this capability. \n\n### Javascript\n\nIf your package requires javascript, you can also setup a `package.json` file in the root of the package. Much like `composer.json`, this will be merged automatically at the root level. \n\nTo run `npm` commands directly in your package run `bin/npm -w packages/\u003cpackage-name\u003e` with your command. For example `bin/npm -w packages/iconography run test` would run tests specifically in the iconography package. \n\nCommands can also be run globally across all packages using `turbo`. This is setup so that if you run `bin/npm run test` it will run test in every package that has a `package.json` file with a `test` script. You should try to keep naming consistent across packages to support this work. All currently supported scripts in `turbo` are listed in the `turbo.json` file at the root. \n\nDuring CI, the `lint`, `test` and `build` NPM scripts are run to validate the package quality. You should ensure your package supports these. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboxuk%2Fwp-packages","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fboxuk%2Fwp-packages","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboxuk%2Fwp-packages/lists"}