devilbox/CONTRIBUTING.md

83 lines
2.7 KiB
Markdown

# Contributing
**Abstract**
The Devilbox is currently being developed in my spare time and mostly reflects the features that I
am using for all the web projcets I have to handle. In order to better present it to the majority
of other software developers I do require support to cope with all the feature requests.
So first of all, If the Devilbox makes your life easier, **star it on GitHub**!
**Table of Contents**
1. [How to contribute](#how-to-contribute)
1. [Documentation](#documentation)
2. [Docker Container](#docker-container)
3. [New Features](#new-features)
4. [Intranet](#intranet)
5. [Tests](#tests)
2. [Joining the Devilbox GitHub Organization](#joining-the-devilbox-github-organization)
3. [Important](#important)
## 1. How to contribute
There are various areas that need support. If you are willing to help, pick a topic below and start
contributing. If you are unclear about anything, let me know and I will clarify.
See the general [ROADMAP](https://github.com/cytopia/devilbox/issues/23) for what is planned.
### Documentation
**Required knowledge:** [Sphinx](http://www.sphinx-doc.org/en/stable/)
* General improvement of the documentation (typos, grammar, etc)
* Better documentation for setting up Xdebug
* More how to's on how to setup a specific framework or CMS
* General how to's and blog posts
### Docker Container
**Required knowledge:** Docker, [Ansible](https://www.ansible.com/), Apache, Nginx, MySQL, PHP-FPM
* Consolidate MySQL, PerconaDB and MariaDB into one repository for easier change management
* Consolidate Nginx and Apache into one repository for easier change management
* Performance improvements on Apache/Nginx and PHP-FPM
* Add new container to the stack
### New Features
**Required knowledge:** Various
Have a look at the GitHub issues and see if you can implement any features requested
### Intranet
**Required knowledge:** PHP, HTML, CSS and Javascript
* [ ] Fix email view: https://github.com/cytopia/devilbox/issues/337
* [ ] Better and more modern layout
* [ ] Try to remove as much vendor dependencies as possible
### Tests
**Required knowledge:** [Travis-CI](https://docs.travis-ci.com/)
* Shorten CI test time for faster releases
* Rewrite current tests, write new tests
## Joining the Devilbox GitHub Organization
If you want to contribute on a regular base and take care about major feature development you can
be invited to the GitHub organization.
This however requires some prerequisites:
1. Willing to dedicate a regular amount of time to invest in this project
2. Already spent a decent amount of time in improving the Devilbox
3. A good understanding about the Devilbox
4. A good understanding about the PHP-FPM container (and how it is built with Ansible)