Contributions to the project are always appreciated. There are many options available to improve the project (which is not limited to coding). The following list shows some ways how you can participate:
If you are a PHP or Javascript developer you can help to improve the system. If you want to create a new feature it is in general recommended to create for larger topics a new issue where we can talk about the feature. There are three main components of Fusio:
The backend API is the core of the system developed in PHP, which provides the basic functionality of Fusio. This is the place to develop new core features and improvements.
An adapter is a plugin to the Fusio system which can be used to connect to other remote services. I.e. you could create
a new adapter which speaks to a specific API or other remote services. This is easy to develop since you can build it in
a separate repository. Please use the keyword fusio-adapter
in your composer.json
file so that adapter gets listed
automatically on our website.
This is the Angular app which is used as UI to control the backend. It is the main app to improve the Fusio backend. But you are also free to develop new apps for special use cases which talk to the internal API of Fusio.
We have a high PHPUnit test case coverage. Besides this it is always great if users checkout the current master version of the project and try to test every aspect of the system. In case you have found an issue please report it on GitHub.
We want to create a system which is easy to use also by novice users. To enable everybody to start using Fusio we need a great documentation. We have bundled all documentation at our documentation website. It is based on Docusaurus so it should be easy to adjust or contribute new documents in case you think something is missing or wrong.
If your want to financially support our project you can take a look at the Fusio repository there is a "Sponsor this project" panel where you can find all donation options.
The Fusio project has several components which together build the Fusio system. The following list provides an overview about all relevant repositories so that you can easily find the fitting repository for your contribution.
- Fusio
Contains the main Fusio repository where we collect and discuss all ideas and issues. The repository does not contain any Fusio related code, it only requires thefusio/impl
package. - Fusio-Impl
Contains the backend API implementation of Fusio. This is the place if you like to change the internal API of Fusio. - Fusio-CLI
Contains the CLI client of Fusio, it is automatically included in every Fusio installation but you can also run the CLI client standalone. It allows you to directly interact with the API and to deploy specific YAML configuration files. - Fusio-Model
Contains all Fusio models automatically generated via TypeSchema. This repository helps if you want to work with the Fusio API since you can use the same model classes which we also use at the backend. - Fusio-Engine
Contains mostly interfaces which are also needed by adapters. - Fusio-Adapter
Page which shows all available adapters. An adapter can extend Fusio by providing i.e. custom Actions or Connections to different services. I.e. we have an adapter MongoDB which helps to work with a MongoDB. - Fusio-Docker
Contains a Docker-Image to run Fusio, it helps to quickly create a Fusio instance in the cloud. You can find it also directly on DockerHub. - Fusio-Worker
This overview shows all available worker for Fusio. A worker provides a way to execute action logic in a different programming language i.e. JavaScript or Python. - Fusio-Docs
Contains our complete documentation website. This is the place if you like to adjust or improve our documentation. - App-Backend
Contains the Fusio backend app which you can use to configure your API. This is the place if you like to change or improve the backend app. - App-Developer
Contains the developer portal app where external developers can register to use your API. - Apps The Backend and Developer app are the main apps regarding Fusio but we have also several other small apps. You can get an overview at our marketplace.