SYSTOPIA Extension Of The Month #8: Entity Construction Kit (ECK)

Published
2024-08-20 02:46
Written by
SYSTOPIA - member of the CiviCRM community - view blog guidelines

With the “Extension of the Month” we aim to share knowledge on the extensions and other tools we at SYSTOPIA have developed over the years. This month, we want to introduce ECK – a game changer for creating custom entity types in CiviCRM.

What does it do?

CiviCRM has a lot of entities tailor-made for a non-profit’s CRM needs. Contacts, participants, memberships, activities and many more. But what if you want to keep track of a different “thing” in Civi? Well, we’ve got just the thing!

The Entity Construction Kit (ECK) provides a user interface and an API for creating and managing custom CiviCRM entities. This helps you better model your organization’s logic when the standard CiviCRM entities do not meet your needs.

With ECK, you can define new entity types with custom names and labels, and add as many properties as you want by attaching custom fields. You can also create subtypes to add another level of hierarchy.

How does it work?

These custom entity types work like regular CiviCRM entities, so other extensions can use them. For example, SearchKit can create search forms and overview pages, and FormBuilder can create forms for editing properties or linking entities.

By using custom entity types you can use CiviCRM as a management system for almost anything: Projects, products, processes... you name it. You benefit from the existing powerful tool-set CiviCRM has to offer and the seamless integration with your contact-database.

Other extensions can also add functionality to these entities. For instance, Resource Management (which you might know from our last "Extension of the Month") is used to mark entities as resources, which can then be assigned to events or other demands.

How do you use it?

After installing the extension, you will find ECK Entity Types under ‘Administration > Customize Data and Screens’. There you can add new entity types with subtypes and custom fields.

For example, we are using CiviCRM to manage the extensions that we have developed and that we continue to maintain. So we created the new entity type “extension” and categorized it by whether they were built for CiviCRM, Drupal or other as our subtypes. We added custom fields with all relevant technical information like name, key, description, links to documentation and repository, release status and many more.

ECK comes with a SearchKit- and Afform-based user interface, which makes the overview of entity types and results highly customisable.

Anything else?

Even with a helpful management system - maintaining a large number of CiviCRM extension has become quite a task for us that can only be sustained with help from the community. If you are using our Open Source software like the Entity Construction Kit and your organization can afford it, please consider making a donation to the development and maintenance costs. Contact info@systopia.de to learn how. Thank You!

Links

Filed under