PHPackages                             sitewards/setup - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. sitewards/setup

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

sitewards/setup
===============

Sitewards Setup

v2.0.1(9y ago)761[18 issues](https://github.com/sitewards/setup/issues)2MITPHP

Since Feb 1Pushed 9y ago3 watchersCompare

[ Source](https://github.com/sitewards/setup)[ Packagist](https://packagist.org/packages/sitewards/setup)[ RSS](/packages/sitewards-setup/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (3)Dependencies (4)Versions (4)Used By (2)

Sitewards Setup
===============

[](#sitewards-setup)

[![Build Status](https://camo.githubusercontent.com/6634257411ad4af9bc318a9aa0569dd8c8ef7c248cf9bb77e1939c79fe5d883b/68747470733a2f2f7472617669732d63692e6f72672f7369746577617264732f73657475702e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/sitewards/setup)[![Scrutinizer Code Quality](https://camo.githubusercontent.com/ce60e7df10ac16f2d43c136315cf59bc8735df1bb4ecfe00b17b10ff6d8c1b3f/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f7369746577617264732f73657475702f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/sitewards/setup/?branch=master)

This is a module that allows a developer to import and export content and configuration via the command line to any framework, as long as a bridge module for that framework has been built.

Architecture
------------

[](#architecture)

The service layer in our generic Setup module implements the following:

1. An implementation of `src/Sitewards/Setup/Service/Page/ExporterInterface.php`,

- Which is making a use of the PageRepository where we retrieve the requested page(s). We then serialize and dump this content to a file.

2. An implementation of `src/Sitewards/Setup/Service/Page/ImporterInterface.php`,

- Which is making a use of the PageRepository where we try to store the given page(s), after deserializing the content we found inside the `pages.json` file.

Each bridge requires the following:

1. An implementation of `src/Sitewards/Setup/Application/BridgeInterface.php`,

- The only required method currently is the `getPageRepository()` which serves as a factory method. The method should return your implementation of the `PageRepositoryInterface`. Although not required, we highly suggest that you as well bootstrap the system in use at this point. Please check the `initMagento()` methods in the Magento1 and Magento2 bridges to see a practical example of that.

2. An implementation of `src/Sitewards/Setup/Domain/Page/PageRepositoryInterface.php`,

- The purpose of this implementation is to give a way to the Setup module to communicate with the underlying system. The `findByIds` and `findAll` methods are used for retrieving the page(s), no matter where they come from (database, filesystem, etc.). The `import` method is used for storing the page(s) into the system.

3. An implementation of `bin/setup`

- This file acts as the bootstrap point for the bridge module where you would simply instantiate the application and feed it with your implementation of the `Sitewards\Setup\Application\BridgeInterface`

Bridge
------

[](#bridge)

To build a bridge you need to use the interface `src/Sitewards/Setup/Domain/Page/PageRepositoryInterface.php` and create an implementation of this interface for your system of choice.

**Current bridges**

1. Magento 1 ()
2. Magento 2 ()

Issues
------

[](#issues)

To learn about issues, click [here](https://github.com/sitewards/setup/issues). To open an issue, click [here](https://github.com/sitewards/setup/issues/new).

Authors
-------

[](#authors)

- David Manners
- Darko Poposki

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 61.9% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~4 days

Total

3

Last Release

3382d ago

Major Versions

v1.0.0 → v2.0.02017-02-10

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1398594?v=4)[Tobias Zander](/maintainers/airbone42)[@airbone42](https://github.com/airbone42)

---

Top Contributors

[![dpoposki](https://avatars.githubusercontent.com/u/10155725?v=4)](https://github.com/dpoposki "dpoposki (26 commits)")[![dmanners](https://avatars.githubusercontent.com/u/1572836?v=4)](https://github.com/dmanners "dmanners (16 commits)")

---

Tags

bridgephputility

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/sitewards-setup/health.svg)

```
[![Health](https://phpackages.com/badges/sitewards-setup/health.svg)](https://phpackages.com/packages/sitewards-setup)
```

###  Alternatives

[symfony/maker-bundle

Symfony Maker helps you create empty commands, controllers, form classes, tests and more so you can forget about writing boilerplate code.

3.4k111.1M568](/packages/symfony-maker-bundle)[phpro/soap-client

A general purpose SoapClient library

8885.6M46](/packages/phpro-soap-client)[symplify/monorepo-builder

Not only Composer tools to build a Monorepo.

5205.3M82](/packages/symplify-monorepo-builder)[shlinkio/shlink

A self-hosted and PHP-based URL shortener application with CLI and REST interfaces

4.8k4.3k](/packages/shlinkio-shlink)[ramsey/conventional-commits

A PHP library for creating and validating commit messages according to the Conventional Commits specification. Includes a CaptainHook action!

1931.2M122](/packages/ramsey-conventional-commits)[cognesy/instructor-php

The complete AI toolkit for PHP: unified LLM API, structured outputs, agents, and coding agent control

310107.9k1](/packages/cognesy-instructor-php)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
