Download the PHP package clarkewing/legacy-sync without Composer

On this page you can find all versions of the php package clarkewing/legacy-sync. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package legacy-sync

Legacy Sync

Code Quality Tests

Legacy Sync is a lightweight Laravel package for bi-directional database syncing between a legacy and modern app. It’s ideal for projects maintaining both a legacy and a modern Laravel app, and ensures data consistency across both systems without friction.


πŸš€ Features


🧩 Requirements

To use Legacy Sync, the package must be installed in both Laravel applications you wish to sync.

Legacy Sync is compatible with applications using Laravel 8 and above, and requires PHP 8.1 or above.


πŸ“¦ Installation

Legacy Sync must be installed in both your legacy app and the modern app.

Make sure you configure your database connections in your application’s config/database.php file:


βš™οΈ Configuration

Publish the config file using the following command:

This will create a config/legacy_sync.php file with the following structure:


πŸ”§ Usage

Syncing Tables

Legacy Sync provides a simple API for syncing tables between your legacy and modern applications:

Syncing Individual Records

For more granular control, you can sync individual records by their primary key:

Artisan Commands

Legacy Sync also provides an Artisan command for syncing tables:

Configuration Examples

Basic Column Mapping

When column names differ between legacy and new databases:

Setting Default Values

For columns that exist in only one database:

Excluding Columns

To exclude specific columns from syncing:


πŸ§ͺ Testing

You can safely prevent real database syncing during tests by faking the facade. When faked, all sync methods become no-ops and no database writes will occur.

Example (Pest):

You can also fake before invoking your own application code or Artisan commands that trigger syncing:

Note: The provided fake is intentionally a safe no-op and does not record calls for assertions. If you need to assert specific interactions, mock your own collaborators or assert application-side effects instead of database changes.


πŸ” Security

When syncing sensitive data between databases, ensure both systems have appropriate security measures in place. Consider excluding sensitive fields from syncing or implementing additional encryption as needed.


🀝 Contributing

Issues and PRs welcome! Please see our Contribution guidelines if contributing tests or features.


πŸ“œ License

Released under the MIT License.



All versions of legacy-sync with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
illuminate/console Version ^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
illuminate/database Version ^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
illuminate/support Version ^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package clarkewing/legacy-sync contains the following files

Loading the files please wait ...