{"id":13549136,"url":"https://github.com/cedaro/satispress","last_synced_at":"2025-05-14T13:04:38.375Z","repository":{"id":12572081,"uuid":"15242628","full_name":"cedaro/satispress","owner":"cedaro","description":"Expose installed WordPress plugins and themes as Composer packages.","archived":false,"fork":false,"pushed_at":"2025-04-09T12:32:34.000Z","size":1571,"stargazers_count":533,"open_issues_count":17,"forks_count":52,"subscribers_count":14,"default_branch":"develop","last_synced_at":"2025-05-13T17:30:45.471Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/cedaro.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"docs/security.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"custom":["https://paypal.me/bradyvercher"]}},"created_at":"2013-12-17T02:03:48.000Z","updated_at":"2025-04-27T04:55:22.000Z","dependencies_parsed_at":"2024-03-16T20:26:20.184Z","dependency_job_id":"a68312fa-c7b1-4f27-a85d-5774f7b0a312","html_url":"https://github.com/cedaro/satispress","commit_stats":{"total_commits":384,"total_committers":18,"mean_commits":"21.333333333333332","dds":"0.26041666666666663","last_synced_commit":"33eaa99a54fa326af00bfcb932c1a55efb7ded49"},"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cedaro%2Fsatispress","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cedaro%2Fsatispress/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cedaro%2Fsatispress/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cedaro%2Fsatispress/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cedaro","download_url":"https://codeload.github.com/cedaro/satispress/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254149947,"owners_count":22022851,"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":[],"created_at":"2024-08-01T12:01:18.638Z","updated_at":"2025-05-14T13:04:38.325Z","avatar_url":"https://github.com/cedaro.png","language":"PHP","funding_links":["https://paypal.me/bradyvercher"],"categories":["PHP"],"sub_categories":[],"readme":"# SatisPress\n\nFacilitate modern best practices for managing WordPress websites by automating Composer support for private plugins and themes.\n\n## What is Composer?\n\nWhen managing a WordPress site, multiple environments are usually needed for developing or testing code before deploying it to the live server. This requires being able to easily replicate the site and its dependencies between environments, which is where [Composer](https://getcomposer.org/) comes in.\n\nComposer allows for defining a project's dependencies, where they come from, how to access them, and then installing them from their source.\n\nFor WordPress sites, dependencies are usually plugins and themes, and even WordPress itself. Essentially, a single file (`composer.json`) can be shared with another developer and they can rebuild the entire site structure from it.\n\nComposer connects to repositories \u0026mdash; directories that tell it where to find dependencies (packages) and how they should be handled.\n\n[Packagist](https://packagist.org/) is the main Composer repository for PHP packages and [WordPress Packagist](https://wpackagist.org/) provides access to plugins and themes hosted in the directories on WordPress.org.\n\n## What's the problem?\n\nMost commercial plugins and themes (also known as packages) aren't publicly available, so they can't be installed with Composer.\n\nSome common workarounds include:\n\n* Checking the plugin or theme in alongside custom project code in your version control system\n* Creating a separate private repository for each plugin or theme and manually updating it as new versions are released\n\nNeither option is ideal and can be a hassle to maintain over time.\n\nFurthermore, access is usually restricted with proprietary licensing schemes that make it difficult to download releases programmatically.\n\n## How does SatisPress help?\n\nSatisPress creates a dynamically updated Composer repository that provides access to private plugins and themes and makes new releases available automatically.\n\nAfter installing SatisPress (it's a standard WordPress plugin):\n\n1. Choose the plugins and themes that you want to manage\n2. SatisPress zips the currently installed versions and stores them in a cache directory\n3. When an update for a managed plugin or theme becomes available, SatisPress downloads and saves it alongside previously cached releases\n4. A Composer repository is generated that can be included in your `composer.json` file to download any cached plugin or theme\n\nThere are several possible workflows, but SatisPress allows you to manage private plugins and themes in a standard WordPress installation, leveraging the built-in update process to handle the myriad licensing schemes that would be impossible to account for outside of WordPress.\n\nIt's the missing piece for managing WordPress websites with Composer.\n\n## What if I don't use Composer?\n\nSatisPress can still benefit you since it makes releases downloadable directly from your admin panel, so you don't need to log in to vendors' sites to download updates.\n\nOftentimes vendors only provide access to the latest release, so you're stuck if something breaks and you didn't save the previous version. With SatisPress, you can download previously cached releases to rollback if needed and compare the code to see what changed.\n\n## Documentation\n\nFor installation notes, information about usage, security, and more, see the [documentation](docs/index.md).\n\n## Credits\n\nCreated by [Brady Vercher](https://www.cedaro.com/) and supported by [Gary Jones](https://gamajo.com).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcedaro%2Fsatispress","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcedaro%2Fsatispress","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcedaro%2Fsatispress/lists"}