phpproject-managementactivecollab

How to customize Active Colab


We have purchased a self-hosted platform of Active Colab project management tool.

My company wants me to customize the already-made Active Colab according to their needs.

I am finding it very difficult to find even a single file for customization.

And the Active Colab support team is clearly stating that if I break the code they will not give any support in the future and modification also not possible and very difficult.

Please help me with this.

Is anyone ever customized the new Active Colab 5.x version.


Solution

  • TL;DR

    Active Collab is not built to be extended with internal modules or code modifications, and that way of extension is not supported. Use Active Collab's REST API instead.

    Longer answer

    Support gave the correct answer: Active Collab should not be modified, and as such it is not built not to be modified. That is why you don't see any code hooks or instructions how to wire your own code in the application. Active Collab is distributed so it includes source code because it is the most convenient format to many of the customers (no performance penalties, no extra system requirements, works everywhere). As PHP ecosystem continues to evolve and other options become available, this may change.

    If you decide to ignore that warning, you need to keep following things in mind:

    1. Code modifications that you make can't violate Active Collab license agreement (https://www.activecollab.com/terms-selfhosted.html). Read them carefully,
    2. Active Collab LLC does not provide support for modified systems. With modified system you're on your own, with no support,
    3. Doing auto-upgrade will override any changes that you make, so you will have to re-apply them (and make sure that they work with the new version),
    4. Active Collab LLC reserves the right to change the way it packages Active Collab.

    Recommended way to extend the functionality of the software is to use Active Collab's REST API to get the data in and out of the application, like you would with any other web service.

    API documentation is available here:

    https://developers.activecollab.com/api-documentation/

    If you are using PHP, you can use Active Collab SDK so you don't need to worry about mechanics of authentication and request handling:

    https://github.com/activecollab/activecollab-feather-sdk