If you are a developer who is interested in improving, extending and / or customizing CiviCRM for your organization or clients, these resources should help you get started:

  • Developer Documentation Wiki - Think of it and treat it as CiviCRM's collective notepad. A place for recipes, new ideas and to do lists to be jotted down without too much attention to getting everything in exactly the right place or completely perfect. Includes a listing of available hooks.
  • Write an extension - Our extensions framework allows developers to package their customizations using the API for flexibility and compatibility
  • CiviCRM IRC Channel - #civicrm on irc.freenode.net - IRC is a great place to go for any technical questions. Here, with a bit of luck, you'll often find an instant answer to your question or a pointer in the right direction. Definitely go here if you feel like you are banging your head against a wall. Writing your question down in itself can often help you find the answer and if not then perhaps someone else will understand your issue and offer to help.
  • Stack exchange - Here you'll find discussions on a range of topics from both developers and from users. It is a great place to find answers to the millions of questions that have already been asked about CiviCRM, and to ask ones that haven't been asked already.
  • CiviCRM.org Blog - Blog posts are written by both the CiviCRM core team and other community members and cover a wide range of topics. Subscribe to the RSS feed to make sure you stay up to date.
  • Github for CiviCRM - Source code repository for the entire CiviCRM codebase.
  • Code Sprints - Developers, integrators and end-users gather in person several times in year in various locations to collaborate on usability, documentation and coding projects. Participating in a code sprint is a great way to get connected, increase your skills and help improve the software. Check our events page to see if a sprint is happening soon