PHPackages                             prosembler/nitro-porter - 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. [Database &amp; ORM](/categories/database)
4. /
5. prosembler/nitro-porter

ActiveProject[Database &amp; ORM](/categories/database)

prosembler/nitro-porter
=======================

The only multi-platform community migration tool. Free your community!

v4.1(8mo ago)836910[1 issues](https://github.com/prosembler/nitro-porter/issues)[2 PRs](https://github.com/prosembler/nitro-porter/pulls)AGPL-3.0-onlyPHPPHP &gt;=8.3CI passing

Since Nov 22Pushed 1mo ago5 watchersCompare

[ Source](https://github.com/prosembler/nitro-porter)[ Packagist](https://packagist.org/packages/prosembler/nitro-porter)[ RSS](/packages/prosembler-nitro-porter/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (10)Dependencies (13)Versions (40)Used By (0)

Nitro Porter — free your community! 🚀
=====================================

[](#nitro-porter--free-your-community-)

Nitro Porter is the *only* multi-platform community migration tool. Its goal is fast no-code migrations for any community with accessible data.

Every community deserves the agency to choose the best software for its mission while preserving its history. All proprietary software has a finite lifespan and lock-in stifles competition, which leads to stagnation. When we own our data and can freely choose betweeen platforms, everyone wins.

Get Started
-----------

[](#get-started)

- [**User Guide**](https://nitroporter.org/guide) — requirements &amp; install steps.
- [**Migration Guide**](https://nitroporter.org/migrations) — plan a community migration.
- [**Sources**](https://nitroporter.org/sources) &amp; [**Targets**](https://nitroporter.org/targets) — support details.
- [**Start a Discussion**](https://github.com/prosembler/nitro-porter/discussions) — share how it went!

What's Supported?
-----------------

[](#whats-supported)

### Targets ([4](https://nitroporter.org/targets)) 📥

[](#targets-4-)

[![Flarum](docs/assets/logos/flarum-300x100.png)](docs/assets/logos/flarum-300x100.png)[![NodeBB](docs/assets/logos/nodebb-300x100.png)](docs/assets/logos/nodebb-300x100.png)[![Vanilla](docs/assets/logos/vanilla-300x100.png)](docs/assets/logos/vanilla-300x100.png)[![Waterhole](docs/assets/logos/waterhole-300x100.png)](docs/assets/logos/waterhole-300x100.png)

### Sources ([37](https://nitroporter.org/sources)) 📤

[](#sources-37-)

[![AnswerHub](docs/assets/logos/answerhub-150x50.jpg)](docs/assets/logos/answerhub-150x50.jpg)[![ASPPlayground.NET](docs/assets/logos/aspplayground-150x50.png)](docs/assets/logos/aspplayground-150x50.png)[![bbPress](docs/assets/logos/bbpress-150x50.png)](docs/assets/logos/bbpress-150x50.png)[![Discord](docs/assets/logos/discord-150x50.png)](docs/assets/logos/discord-150x50.png)[![Drupal](docs/assets/logos/drupal-150x50.jpeg)](docs/assets/logos/drupal-150x50.jpeg)[![esoTalk](docs/assets/logos/esotalk-150x50.png)](docs/assets/logos/esotalk-150x50.png)[![Flarum](docs/assets/logos/flarum-150x50.png)](docs/assets/logos/flarum-150x50.png)[![FluxBB](docs/assets/logos/fluxbb-150x50.png)](docs/assets/logos/fluxbb-150x50.png)[![IPBoard](docs/assets/logos/ipboard-150x50.png)](docs/assets/logos/ipboard-150x50.png)[![Kunena](docs/assets/logos/kunena-150x50.jpg)](docs/assets/logos/kunena-150x50.jpg)[![MyBB](docs/assets/logos/mybb-150x50.png)](docs/assets/logos/mybb-150x50.png)[![NodeBB](docs/assets/logos/nodebb-150x50.png)](docs/assets/logos/nodebb-150x50.png)[![phpBB](docs/assets/logos/phpbb-150x50.png)](docs/assets/logos/phpbb-150x50.png)[![Simple Machines (SMF)](docs/assets/logos/smf-150x50.jpeg)](docs/assets/logos/smf-150x50.jpeg)[![SimplePress](docs/assets/logos/simplepress-150x50.png)](docs/assets/logos/simplepress-150x50.png)[![Uservoice](docs/assets/logos/uservoice-150x50.jpeg)](docs/assets/logos/uservoice-150x50.jpeg)[![Vanilla](docs/assets/logos/vanilla-150x50.png)](docs/assets/logos/vanilla-150x50.png)[![vBulletin](docs/assets/logos/vbulletin-150x50.jpeg)](docs/assets/logos/vbulletin-150x50.jpeg)[![XenForo](docs/assets/logos/xenforo-150x50.jpeg)](docs/assets/logos/xenforo-150x50.jpeg)

*...[and MORE](https://nitroporter.org/sources)!*

### What data gets migrated, exactly? 🚥

[](#what-data-gets-migrated-exactly-)

All sources &amp; targets support migrating:

- users &amp; roles
- discussions (or *threads*)
- posts (or *comments*)
- categories (or *subforums*, *channels*, etc.)

Beyond that, each supports **different types of data** depending on feature availability, extension choice, and maturity of the source/target package. These include things like badges, reactions, bookmarks, and polls.

***Both the source and target must support a data type for it to transfer!***

Nitro Porter **never** transfers permissions. It's not safe to do so automatically due to variations in how platforms implement them. You will **always** need to reassign permissions after a migration.

**Passwords** are generally *hashed*, which means no system can "decrypt" or "convert" them. However, if both the source and target platform support the same hashing algorithm, they should transfer seamlessly. Alternatively, the target system could add support for the source hashing algorithm and convert password hashes as users login next (see [Garden/Password](https://github.com/prosembler/garden-password)). This is beyond the scope of what any migration tool can do in isolation, but we're happy to [answer questions](https://github.com/prosembler/nitro-porter/discussions/new) about the process should you wish to build that functionality.

### Future support 🔭

[](#future-support-)

Don't see your software? [Start a discussion](https://github.com/prosembler/nitro-porter/discussions/new) to request it and keep an eye on our [informal roadmap](https://github.com/orgs/prosembler/projects/1). We're happy to accept **contributions** of a new Source, Target, or Origin for any publicly available software. We occassionally accept **requests** for a new Source or **sponsorships** for any package type.

Today, some storage formats (e.g. mbox, MSSQL, API) first require conversion to a relational database with other software. The 3.0 rewrite of Nitro Porter[1](#user-content-fn-1-af6a086f05f9c6364e394d0509147721) was built with future support for those many more formats in mind and it will continue to expand.

Project Info
------------

[](#project-info)

### How does it work? 🤔

[](#how-does-it-work-)

Data is first converted to an intermediary "porter schema," reducing the number of data paths from `#sources x #targets` to `#sources + #targets`. The result is repeatable results in a single multi-tool rather than myriad low-quality, single-purpose tools.

### Why not 1-off migration tools? 🪴

[](#why-not-1-off-migration-tools-)

Data migrations typically require either time &amp; skill (you are a programmer) or capital (you are a for-profit company). Nitro Porter aims to become increasingly accessible to *everyone else* by making both migrations &amp; extensibility simple. Software tools should not be assumed disposible just because they don't have a 30% profit margin to exploit.

### Can't AI do this? 📿

[](#cant-ai-do-this-)

No.

### How can I learn more or help? 🎟️

[](#how-can-i-learn-more-or-help-️)

- [**Contribute**](docs/contribute.md) — data, requests, &amp; fixes.
- [**Changelog**](CHANGELOG.md) — latest fixes &amp; updates.
- [**Roadmap**](https://github.com/orgs/prosembler/projects/1) — informal goals.
- [**History**](docs/history.md) — how we got here.

Footnotes
---------

1. 🚀 Forked 27 Sep 2021 in memory of Kyle [↩](#user-content-fnref-1-af6a086f05f9c6364e394d0509147721)

###  Health Score

58

—

FairBetter than 98% of packages

Maintenance77

Regular maintenance activity

Popularity26

Limited adoption so far

Community26

Small or concentrated contributor base

Maturity90

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 72.3% 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 ~149 days

Recently: every ~22 days

Total

28

Last Release

261d ago

Major Versions

v2.5 → v3.02022-09-27

v3.7.3 → v4.02025-09-30

PHP version history (5 changes)v2.1PHP &gt;=5.3.0

v2.5PHP &gt;=5.6.0

v3.0PHP &gt;=8.0

v3.7.0PHP &gt;=8.2

v4.0PHP &gt;=8.3

### Community

Maintainers

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

---

Top Contributors

[![linc](https://avatars.githubusercontent.com/u/117672?v=4)](https://github.com/linc "linc (1357 commits)")[![tburry](https://avatars.githubusercontent.com/u/97432?v=4)](https://github.com/tburry "tburry (150 commits)")[![DaazKu](https://avatars.githubusercontent.com/u/2412909?v=4)](https://github.com/DaazKu "DaazKu (138 commits)")[![initvector](https://avatars.githubusercontent.com/u/1390241?v=4)](https://github.com/initvector "initvector (84 commits)")[![JReko](https://avatars.githubusercontent.com/u/15312192?v=4)](https://github.com/JReko "JReko (34 commits)")[![OlivierLamyCanuel](https://avatars.githubusercontent.com/u/39598345?v=4)](https://github.com/OlivierLamyCanuel "OlivierLamyCanuel (29 commits)")[![JohnIncog](https://avatars.githubusercontent.com/u/6825291?v=4)](https://github.com/JohnIncog "JohnIncog (16 commits)")[![fbjerggaard](https://avatars.githubusercontent.com/u/1044024?v=4)](https://github.com/fbjerggaard "fbjerggaard (9 commits)")[![R-J](https://avatars.githubusercontent.com/u/3996187?v=4)](https://github.com/R-J "R-J (8 commits)")[![kaecyra](https://avatars.githubusercontent.com/u/248212?v=4)](https://github.com/kaecyra "kaecyra (7 commits)")[![vjt](https://avatars.githubusercontent.com/u/14077?v=4)](https://github.com/vjt "vjt (7 commits)")[![Grendel7](https://avatars.githubusercontent.com/u/1823324?v=4)](https://github.com/Grendel7 "Grendel7 (6 commits)")[![tobyzerner](https://avatars.githubusercontent.com/u/128862?v=4)](https://github.com/tobyzerner "tobyzerner (5 commits)")[![vincentlam92](https://avatars.githubusercontent.com/u/43498469?v=4)](https://github.com/vincentlam92 "vincentlam92 (5 commits)")[![beckyvb](https://avatars.githubusercontent.com/u/3805381?v=4)](https://github.com/beckyvb "beckyvb (5 commits)")[![achton](https://avatars.githubusercontent.com/u/109079?v=4)](https://github.com/achton "achton (2 commits)")[![conejoninja](https://avatars.githubusercontent.com/u/475423?v=4)](https://github.com/conejoninja "conejoninja (2 commits)")[![markosullivan](https://avatars.githubusercontent.com/u/739922?v=4)](https://github.com/markosullivan "markosullivan (2 commits)")[![laktak](https://avatars.githubusercontent.com/u/959858?v=4)](https://github.com/laktak "laktak (1 commits)")[![luceos](https://avatars.githubusercontent.com/u/504687?v=4)](https://github.com/luceos "luceos (1 commits)")

---

Tags

communitydata-portabilitydatabaseforumsmigrationphputility-application

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/prosembler-nitro-porter/health.svg)

```
[![Health](https://phpackages.com/badges/prosembler-nitro-porter/health.svg)](https://phpackages.com/packages/prosembler-nitro-porter)
```

###  Alternatives

[matomo/matomo

Matomo is the leading Free/Libre open analytics platform

21.7k39.6k](/packages/matomo-matomo)[pressbooks/pressbooks

Pressbooks is an open source book publishing tool built on a WordPress multisite platform. Pressbooks outputs books in multiple formats, including PDF, EPUB, web, and a variety of XML flavours, using a theming/templating system, driven by CSS.

45844.8k1](/packages/pressbooks-pressbooks)[yajra/laravel-oci8

Oracle DB driver for Laravel via OCI8

8723.3M27](/packages/yajra-laravel-oci8)[flarum/core

Delightfully simple forum software.

211.5M2.5k](/packages/flarum-core)

PHPackages © 2026

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