{"id":34744641,"url":"https://github.com/stellarwp/tyson","last_synced_at":"2026-01-20T17:03:38.109Z","repository":{"id":273393195,"uuid":"918242829","full_name":"stellarwp/tyson","owner":"stellarwp","description":null,"archived":false,"fork":false,"pushed_at":"2025-07-09T11:01:58.000Z","size":451,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":11,"default_branch":"main","last_synced_at":"2025-11-23T15:07:45.229Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/stellarwp.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":"2025-01-17T14:35:31.000Z","updated_at":"2025-07-09T11:00:07.000Z","dependencies_parsed_at":"2025-01-20T17:32:47.984Z","dependency_job_id":"b0232449-f7e8-47a1-bfc4-c9425eb7b911","html_url":"https://github.com/stellarwp/tyson","commit_stats":null,"previous_names":["stellarwp/tyson"],"tags_count":15,"template":false,"template_full_name":null,"purl":"pkg:github/stellarwp/tyson","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stellarwp%2Ftyson","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stellarwp%2Ftyson/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stellarwp%2Ftyson/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stellarwp%2Ftyson/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stellarwp","download_url":"https://codeload.github.com/stellarwp/tyson/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stellarwp%2Ftyson/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28607624,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-20T16:10:39.856Z","status":"ssl_error","status_checked_at":"2026-01-20T16:10:39.493Z","response_time":117,"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":[],"created_at":"2025-12-25T04:29:58.344Z","updated_at":"2026-01-20T17:03:38.104Z","avatar_url":"https://github.com/stellarwp.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Tyson\n\nCreate and manage custom configurations to build projects with `@wordpress/scripts.`\n\n## This is not a wrapper of `@wordpres/scripts`\n\nTyson does not wrap `@wordpress/scripts` or its commands.\n\nInstead, it provides a utility to create and maintain customized configuration files for your project to allow you to\nuse `@wordpress/scripts` to build and package it.\n\nTyson comes with a number of **configuration presets** used by StellarWP teams.\n\nEach configuration preset is composed of **configuration schemas** and **tweaks**.\n\nConfiguration sets, schemas and tweaks might fit your use case or not. You are free to use them or ignore them.\n\n## Installation\n\nTo install `@stellarwp/tyson`, you can use `npm` or `yarn`.\n\nNavigate to your project directory and run one of the following commands:\n\nUsing `npm`:\n\n```bash\nnpm install @stellarwp/tyson --save-dev\n```\n\nUsing `yarn`:\n\n```bash\nyarn add @stellarwp/tyson --dev\n```\n\nWhile installing Tyson, and with it the `@wordpress/scripts` package, you might run into issues with incompatible\ndependencies, especially if your project is using old versions of libraries used by `@wordpress/scripts`.\nDealing with these incompatibilities is not something Tyson can do for you: each project is different and has its\nown quirks.\n\nTake courage in knowing that, once you've solved the issues, the hardest part is likely done.\n\n## Usage\n\nThis package provides a `tyson` binary that will be placed under your project's `bin/` folder when you install it.\n\nWhenever you need help or information about available options, you can run:\n\n```bash\nnode_modules/.bin/tyson --help\n```\n\n### Initializing a new project\n\nInitialize your custom `webpack.config.js` file using the default configuration:\n\n```bash\nnode_modules/.bin/tyson init\n```\n\nThe default configuration will scaffold a `webpack.config.js` file that will allow you to customize the behaviour\nof the [`@wordpress/scripts` library][1].\nBy default, `tyson` will not use any configuration preset and will scaffold a `webpack.config.js` file that will **not**\ncustomize the behaviour in any meaningful way, but it will provide commented examples of how you could do it using the\nfacilities provided by Tyson.\n\nBy default `@wordpress/scripts` will build [from the `/src` directory to the `/build` one][2].\n\nIf a `webpack.config.js` file already exists in your project, `tyson` will **not** overwrite it and will instead print\nthe contents of the file it would have written to the terminal, so that you can inspect it and decide whether you\nwant to use it.\n\nIf you want to force overwriting the existing file, you can use the `--force` option:\n\n```bash\nnode_modules/.bin/tyson init --force\n```\n\n## Development\n\nIf you want to work on the project, start by cloning it on your local machine:\n\n```bash\ngit clone git@github.com:stellarwp/tyson.git\ncd tyson\n```\n\nInstall the project dependencies using the Node version specified in the `.nvmrc` file that comes with the project (\nusing [`nvm`][3] is suggested):\n\n```bash\nnvm use\nnpm install\n```\n\nWhile you're working on the project, use the `start` script to recompile the package to the `/dist` directory on change:\n\n```bash\nnpm run start\n```\n\nUpdate the project as required, then run the `pre-commit` script to make sure all works as intended:\n\n```bash\nnpm run pre-commit\n```\n\nThe script will format, build and test your code to make sure it's ready to commit.\n\n### Testing with a real project\n\nWhile working on your changes, you might need to test them in a real project (e.g. a StellarWP product).  \nFor this purpose you can symlink `tyson` in your project.\nIn the `tyson` project root directory run:\n\n```bash\nnpm link\n```\n\nNavigate to your project root directory and run:\n\n```bash\nnpm link @stellarwp/tyson\n```\n\nOnce you've done this, you will be able to run `node_modules/.bin/tyson` from the root directory of the project you're \nusing to test `tyson`.\n\n## Releasing a new version\n\nTo release a new version of `tyson`, first merge your changes into the `main` branch with an approved PR passing **all** checks.  \n\nThen, run the following command to update the version in `package.json`:\n\n```bash\nnpm version [patch | minor | major]\n```\n\nor:\n\n```bash\nnpm version \u003cnext_version\u003e\n```\n\nYou can find more options with the `npm version` command documentation (`npm version --help`).\n\nPush the updated `package.json` file and let the automated workflow (`.github/workflows/publish.yml`) publish the new version.\n\n## Migration\n\nSpecific migration guides are available for each suite:\n\n* [TEC](docs/tec-migration.md)\n\n[1]: https://developer.wordpress.org/block-editor/reference-guides/packages/packages-scripts/#provide-your-own-webpack-config\n\n[2]: https://developer.wordpress.org/block-editor/reference-guides/packages/packages-scripts/#build\n\n[3]: https://github.com/nvm-sh/nvm\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstellarwp%2Ftyson","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstellarwp%2Ftyson","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstellarwp%2Ftyson/lists"}