PHPackages                             a9f/lifter - 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. [DevOps &amp; Deployment](/categories/devops)
4. /
5. a9f/lifter

ActiveLibrary[DevOps &amp; Deployment](/categories/devops)

a9f/lifter
==========

Tool for automating project upgrades using Rector and other tools

4701[2 PRs](https://github.com/andreaswolf/lifter/pulls)PHP

Since Apr 7Pushed 11mo ago1 watchersCompare

[ Source](https://github.com/andreaswolf/lifter)[ Packagist](https://packagist.org/packages/a9f/lifter)[ RSS](/packages/a9f-lifter/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (5)Used By (0)

Lifter – A PHP tool to automate your update processes
=====================================================

[](#lifter--a-php-tool-to-automate-your-update-processes)

Lifter is a powerful tool designed to automate software updates for PHP projects. Leveraging the capabilities of tools like Composer and Rector, Lifter simplifies the process of updating dependencies and migrating code to newer versions.

Whether you're a developer managing multiple projects or part of a team working on a large codebase, Lifter streamlines the update process, saving time and reducing the risk of errors.

Features
--------

[](#features)

- **Automated Dependency Updates**: Lifter automates the process of updating dependencies specified in your composer.json file, ensuring that your project stays up-to-date with the latest versions.
- **Code Migration with Rector**: Integrating with Rector, Lifter facilitates smooth migration of code when updating to newer versions of libraries or frameworks. Rector automates code refactoring, making it easier to adopt best practices and utilize new features.
- **Customizable Configuration**: Lifter offers flexible configuration options, allowing you to tailor the update process to fit your project's specific requirements. Customize which dependencies to update, configure Rector rules, and more.

Getting Started
---------------

[](#getting-started)

Follow these steps to start using Lifter in your PHP project:

1. **Installation:** Install Lifter via Composer by running the following command:

    ```
    $ composer require a9f/lifter
    ```
2. **Configuration:** Create a lifter.php configuration file in the root of your project. Here's a basic example:

    ```
     return static function (\a9f\Lifter\Configuration\LifterConfig $config) {
         $config->withWorkingDirectory(__DIR__)
             ->withRectorBinary('vendor/bin/rector')
             ->withRectorConfigFile(__DIR__ . '/rector.php');

         $config->withSteps([
             new \a9f\Lifter\Upgrade\Step\ShellStep(
                 'Add Hello World',
                 sets([
                         \Rector\Set\ValueObject\LevelSetList::UP_TO_PHP_83,
                     ]);
                 }
             )
         ]);
     };
    ```
3. **Usage:** Run Lifter from the command line in your project directory:

    ```
    $ vendor/bin/lifter run -f lifter.php
    ```

    This command will apply the steps you specified in your `lifter.php` in the order in which they appear in the file.

    Each step will lead to a separate Git commit. By default, Lifter will prefix the commit message with `(lifter)` to make its work easier to spot in the history.

    To change this prefix, call `$config->withCommitMessagePrefix('my prefix:');`. To get rid of the prefix, pass an empty string.

Contributing
------------

[](#contributing)

If you encounter any issues or have suggestions for improvements, we welcome contributions from the community. Here's how you can contribute:

1. Fork the repository.
2. Make your changes.
3. Submit a pull request with a clear description of your changes and why they are needed.

Support
-------

[](#support)

For any questions or support regarding Lifter, please open an issue on GitHub. We'll do our best to assist you promptly.

License
-------

[](#license)

Lifter is licensed under the MIT License.

Acknowledgments
---------------

[](#acknowledgments)

Lifter wouldn't be possible without the amazing work of the Composer and Rector teams. We're grateful for their contributions to the PHP ecosystem.

---

Thank you for using Lifter to streamline your software update process! We hope it helps make your development workflow more efficient and enjoyable. If you have any feedback or suggestions, we'd love to hear from you.

Happy coding! 🚀

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance38

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity24

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/a2f8a7f61c64c87d1dbd312eca6e251ccd686494d039cdf37c28382b70f27082?d=identicon)[andreaswolf](/maintainers/andreaswolf)

---

Top Contributors

[![andreaswolf](https://avatars.githubusercontent.com/u/159919?v=4)](https://github.com/andreaswolf "andreaswolf (47 commits)")

### Embed Badge

![Health badge](/badges/a9f-lifter/health.svg)

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

###  Alternatives

[deployer/deployer

Deployment Tool

11.1k25.4M207](/packages/deployer-deployer)[appwrite/server-ce

End to end backend server for frontend and mobile apps.

55.3k84.2k](/packages/appwrite-server-ce)[pragmarx/health

Laravel Server &amp; App Health Monitor and Notifier

2.0k1.0M2](/packages/pragmarx-health)[felixfbecker/language-server-protocol

PHP classes for the Language Server Protocol

22476.7M6](/packages/felixfbecker-language-server-protocol)[heroku/heroku-buildpack-php

Toolkit for starting a PHP application locally, with or without foreman, using the same config for PHP and Apache2/Nginx as on Heroku

8161.3M10](/packages/heroku-heroku-buildpack-php)[tiamo/phpas2

PHPAS2 is a php-based implementation of the EDIINT AS2 standard

4674.7k](/packages/tiamo-phpas2)

PHPackages © 2026

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