-
marsh-circle authoredmarsh-circle authored
Civix
Introduction
The civix
command-line tool is the community-endorsed method for building your CiviCRM extensions.
Follow the installation instructions in the GitHub repository.
After fulfilling the Pre-Requisites, you can verify that all your configuration is correct by running the following command from within your extensions directory with:
civix civicrm:ping
This command should reply with "Ping successful". If the ping is unsuccessful, re-read the civix README.md and do the post-installation configuration.
It is also useful to examine the output of the civix help
command to read about what civix
can do for you.
Help is available on individual commands, e.g.,:
civix help civicrm:ping
Generating a skeletal extension {:#generate-module}
To generate a skeletal extension module, we will use civix generate:module
and pass in the name for our extension. See here for details of naming conventions.
Start with:
cd $YOUR_EXTENSIONS_DIR
civix generate:module --help
Then use a command like this:
civix generate:module com.example.myextension --license=AGPL-3.0
This command will report that it has created three files, following the standard extension structure.
The command attempts to auto-detect authorship information (your name and email address) by reading your git
configuration. If this fails or is otherwise incorrect, then you may pass explicit values with --author
and --email
.
You can now update your info.xml
. This file initially contains some examples and placeholders which you need to fix. You can edit most of these fields intuitively. If you need detailed specifications, see Extension Reference.
Now that you have created your extension, you need to activate it by navigating to: