Thread information
This topic is open for possible new maintainers only. If you are interested in becoming a new maintainer please contact me via direct message!
Hello interested users,
I opened this thread to discuss the future of the InvoicePlane project directly with users who are willing to help maintaining the project in the future.
First, I will summarize all tasks related with the project so you have an idea of what needs to be done.
Administrative Tasks
Manage all websites and services that are used by InvoicePlane
These tasks include to take care of the sites and services and update them whenever it’s needed.
- invoiceplane.com
The main website. Self-Self-built Laravel. - community.invoiceplane.com
This community forum. Uses Discourse. - wiki.invoiceplane.com
The main wiki. Self-built using Laravel. - development.invoiceplane.com
The issue tracker. Uses Jira. - devwiki.invoiceplane.com
The development wiki. Self-built using Laravel. - ids.invoiceplane.com
IDS, the service backend for versions and news. Self-build using Laravel. - go.invoiceplane.com
Own URL shortener. Uses Yourls. - surveys.invoiceplane.com
The tool used for surveys. Uses LimeSurvey. - blog.invoiceplane.com
The blog, may be closed down in favor of the communit forum. Uses Wordpress. - analytics.invoiceplane.com
The analytics tracker for all websites. Uses Piwik.
Information about the used server
InvoicePlane has it’s own server hosted by ServDiscount.com. The server is paid until February 2017 so there is no need to hurry to find a new server for the websites. I already got several offers from different people who were willing to sponsor servers.
To host all InvoicePlane websites and services there is at least a virtual server needed that has to meet the following requirements:
- CPU: not that important, but should have at least 2 cores with 2 GHz each. The current server has an Intel i7 with 4x3 GHz.
- RAM: Very important, should be at least 8GB, more would be good. Discourse and Jira take the most of the resources.
- HDD: The current server is using about 60GB so the new HDD should have at least 100GB.
The current server costs about 20 € per month, 240 € per year.
Domains
InvoicePlane currently owns several domains but only one, invoiceplane.com, is needed. The costs for this domain is about 12 € at the moment.
External services used by InvoicePlane
- translations.invoiceplane.com
The translation repository provided by Crowdin. - github.com/InvoicePlane
The InvoicePlane Github account with all repositories. - Account on Mailchimp.com
Mailchimp is used to send the newsletter. - Repositories on Bitbucket.org
private repositories for the websites and the IDS
Social Media
Social networks used by InvoicePlane
Community Management
A healthy community is very important for an open source project. Take any requests serious and try to solve them as good as possible. If you can’t solve an issue, explain why. Also: do not say yes every time. It’s important to make decisions against some ideas or requests.
Offer support to the users
Take care of all user requests. Support requests mostly need help from an involved developer. Feature requests needs to be added to the issue tracker.
Inform the community about news
Write news in the community forums and promote them in social networks and via newsletter.
Development
Basics
InvoicePlane is build with CodeIgniter 2 and uses jQuery 2, Bootstrap 3 and some other smaller libraries. The software is versioned by the Semver method. The repository uses Git with this branching model.
Hotfixes
Take care of small issues or bugs and release them in smaller packages as hotfix versions.
New Features
Develop new features, test them and release them in larger packages as feature versions.
InvoicePlane 2
InvoicePlane needs a major overhaul. I already started with it but there is very much to do. The issue tracker already has a version that tracks all features and task for InvoicePlane 2.0.0 and these tasks need to be completed. As it doesn’t make any sense to build InvoicePlane 2 from the ground up I decided to rewrite major parts of the software with CodeIgniter 3, jQuery 3 and Bootstrap 4. I also overhauled the used libraries and moved to newer tools.
The work on this task is very heavy and should not be done by a single developer. All tasks should be split and solved by different developers.
These are all tasks that I was currently facing and I will try to continue most of them as good as possible.
Requirements for new Maintainers
For me it’s very important that there are multiple people who are willing to continue the project. Nobody should face the same problems like me now in the future. I think it makes the most sense if someone takes care of community management while other developers work on the software itself.
In my opinion there are at least three people needed: one community manager and two developers. I would be very happy if a company could offer monthly financial support for the project.