The future of our platform
Campaignion is constantly changing as we release new features, fixes and updates almost every month. But rolling out new functionality is only one of the ways that we’re working to improve the system, ensure that it is as future proof as possible, and to make the entire platform more awesome.
Read on to find out more about our plans to gradually migrate away from Drupal 7 into a new ‘ecosystem’ of individual microservices, and how this will deliver increased flexibility, scalability and stability, and allow us to develop new features more quickly.
(We’ve tried to keep this as light as possible on technical jargon, but you can skip ahead to the benefits here if you like!)
Our roots in Drupal 7
After building many bespoke websites with campaigning features, we (more onion - the company behind Campaignion) decided back in 2012 that it was time to build a more reusable system. A system that could be used by many organisations at the same time, that was extensible and could be offered as a service at a much lower price point than bespoke development. This is how Campaignion was born: a tool based on the open source content management software Drupal 7.
Since then over 50 clients across the world have started using our systems and we’ve seen millions of data records flow through our infrastructure.
The future of our micro-service architecture
From this experience we have learned a lot about how to build scalable campaigning and fundraising tools, and how the perfect system should look like from a technical point of view, leading us to conclude that Drupal 7 as a single platform to build upon will not meet our needs and our clients’ needs in future. On top of that Drupal 7 as an open source system will no longer be maintained or receive security updates after November 2021.
This is why we’ve started redeveloping the entire platform in a new technical ‘eco-system’. This means that instead of one big (Drupal 7 based) system, there will be individual components that do one or two specific things.
This new approach is already under way: when setting up an email to target action in Campaignion you’re actually working with a new system in the background already.
We built our first applications using the Python framework “Flask” back in 2014 and decided to develop certain features outside of Drupal, but integrate the user experience so you don’t have to worry about the code that’s running in the background. The Email to Target feature is a good example of this approach.
For the next two years we have a roadmap that shows how we will replace specific features that are currently based on Drupal 7 with new micro-services. This way we’re slicing away functionality from Drupal 7 and gradually replacing the system, one bit at a time, so that by November 2021 we will have replaced all parts of the system with new and better versions and will drop Drupal 7 entirely. You can view the public development roadmap here.
What does this mean for you as campaigner or fundraiser?
So, enough background - what will this new system mean for you?
More flexible, more open
The modular system will offer clients a lot more flexibility in working with freelancers, in-house dev teams and agencies to develop custom solutions, so you can be less dependent on us for development or design.
- More flexible theming system with option to deploy a new theme yourself, rather than having to go through support
- More options to extend the platform as needed without having to consult us
- Open REST APIs for everything, not just supporter contact records
- Self-hosted landing page options (for example through a ‘Software Development Kit’ for forms, pre-packaged landing page apps in git repositories to clone) and new options for widgets.
Faster and cheaper changes
Once the new architecture is in place, developing new features and improving existing ones will be faster, and therefore cheaper.
Scalability and speed
Campaignion is already scalable. But through the new architecture we will be able to
- Scale to deliver the platform to the next 500 clients without any issues
- Process supporter data at least twice as fast
- Reduce the page load time by over 50%
- Improve the speed of the user interface by over 50%
Bugs are inevitable in any software development. Good quality process is there to ensure that these bugs are identified and fixed as early as possible.
The new eco-system will make it much easier for our team to deploy automated tests which will increase quality. This is how we can speed up the development process (see above) while delivering better results.
What will you see first?
We have decided to take a “supporter data first” approach to rebuilding the entire platform. That means that we will start by moving all supporter contact records and the “Manage supporter” interface from Drupal 7 to the new eco-system.
The way you will see these changes:
- The first sign of this change will be that we will make a “read only” public API available for all contact records, offering new options for secure data integrations
- As a next step the “Manage Supporter” interface will be replaced with a new interface that allows filtering, bulk editing of contacts and search
- A full REST API for contact records (on top of the real-time event API we already offer)
Over the next two years, here’s what’s coming:
- New user management and authorisation system, with more granular permissions, including chapter functionality (ie allowing certain groups of users only to access a subset of data, eg national affiliates, different members of a coalition, or local groups) , and the ability to manage API keys
- New, improved form builder
- A new application that will handle forms (which will enable lots of cool features like improved widgets and using static sites for one-off campaigns)
- New interface (including the creation of pages, managing content, etc.)
- The next generation of content management system (more details will follow)
The future of campaigning and fundraising
It’s difficult, if not impossible, to predict the future. But what we can do is to develop a platform that is flexible enough to quickly adapt.
That is what we’re in the process of doing and we feel extremely privileged to be working with all these wonderful organisations to make this happen together.
You can follow, and comment on, the progress of individual features and work areas on our public roadmap. Please let us know what you think.