-
-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3 changed files
with
114 additions
and
36 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
## How to Contribute to Nitro Porter | ||
|
||
In ascending order of effort: | ||
|
||
### Send data! | ||
|
||
We greatly appreciate donated data from existing forums to improve the migration and its testing (using partial, anonymized records). A complete database dump is best way to do this. We protect privacy, but you're welcome to anonymize personally-identifiable information first. Willing to sign an extremely narrow NDA for the purpose if necessary. Contact lincoln@icrontic.com. | ||
|
||
### Report a problem | ||
|
||
[Start a discussion](https://github.com/linc/nitro-porter/discussions/new) if you've hit a problem, including as much detail as possible and any error message or logs available. We don't currently maintain a formal issue tracker. | ||
|
||
### Report a _success_! | ||
|
||
Did you successfully use Nitro Porter? [Start a discussion](https://github.com/linc/nitro-porter/discussions/new) to tell us all about it! What platforms were you migrating between and how much data was involved? Was it confusing at all? | ||
|
||
### Submit a fix or improvement | ||
|
||
Send a pull request with a proposed fix! It's greatly appreciated. Please document your understanding of the change, it makes review much easier! Try using [conventional commits](https://www.conventionalcommits.org) for a nicer changelog. | ||
|
||
### Add support for a new source or target | ||
|
||
Check the [developer guide](https://nitroporter.org/develop) for info on extending Nitro Porter to support a new source or target. | ||
It's pretty straightforward! We'll help clean it up if you run into challenges, just get the first draft up in a PR. | ||
|
||
### Work on core maintenance | ||
|
||
Check the [maintainer guide](https://nitroporter.org/maintain) for doing advanced work on the core of this project. | ||
It currently needs integration tests setup and could use a number of additional database connectors configured. | ||
More aspirations are articulated in the [informal roadmap](https://github.com/users/linc/projects/2). | ||
If you're taking on this level of work there are higher expectations, but Linc is happy to help guide. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
# History of Nitro Porter | ||
|
||
Nitro Porter was created in 2010 at Vanilla Forums, Inc. as "Vanilla Porter". | ||
Originally designed as a single-file "lifeboat" for rescuing forum data on older webservers, it morphed into an efficient CLI-based export tool. | ||
|
||
It was frequently over-engineered to bring as much data as possible and to prove what was possible, not just check a box, | ||
because the team believed in the importance of community history. | ||
|
||
The first several versions only exported to the Vanilla flat file format, which then Vanilla core would import and do final data manipulations. | ||
Lincoln built the first source package for vBulletin, and several other engineers (both internal to Vanilla and OSS contributors) built additional packages. | ||
|
||
Over a decade, export ("source") support was added for many forum packages, eventually exceeding thirty platforms. | ||
It was even used by a Vanilla competitor for its ability to export reliably from so many systems. | ||
|
||
This unique history allowed hundreds of small details to accumulate in the logic, making it not only irreplaceable, | ||
but a _knowledge_ repository as much as a code one. Nitro Porter doesn't just contain a set of simple data mappings, | ||
it contains a detailed record of how Web software databases evolved over decades and accounts for each change in detail. | ||
|
||
By late 2019, Vanilla had ceased creating packaged open source releases and Vanilla Porter was receiving only minimal updates. | ||
|
||
In September 2021, [Lincoln](https://lincolnwebs.com/about/) forked the GPL2 project as Nitro Porter and rebuilt it into a general-purpose migration pipeline. | ||
It continues to use Vanilla's database schema as an intermediary format to allow backwards compatibility with the source packages already created. | ||
|
||
In 2022, this documentation site launched and Flarum was added as the second available target. | ||
Source support was added for Flarum, Kunena, MVC and Q2A. ASP Playground source support was improved. | ||
Source support for Vanilla's Advanced Editor (Quill-based WYSIWYG) was added. | ||
|
||
From 2023-24, Waterhole was added as a target. Source support for IPB4 was added. Nitro Porter got enhanced CLI support and went CLI-only | ||
(removing the Web GUI). And, the [maintainer guide](/maintain) was created. |