DEVELOPERS
As custom as you need to be.

From the very outset Funraisin has been designed to be as flexible as possible both in what can be achieved using the admin interface itself and what can be achieved through custom development. This guide is intended for developers and will try to cover off exactly what is possible on a standard Funraisin site from a developer’s point of view.

Technology Overview

Every Funraisin powered website is it’s own standalone platform served from one of our servers as a virtual host, no one site is related to or connected to another site in anyway. Each site is served from a Linux / Apache web server and connects to a standalone Maria DB database running of an AWS RDS instance. All emails are sent via MailGun and all uploaded media is stored in AWS CloudFront, front end caching is a mix of memcache using a dedicated memcache server and file based caching.

Funraisin itself is built in PHP using the CodeIgniter framework version 3.1.10 and PHP version 5.6.40 at the time of writing. Front end templates are built using Bootstrap v3.4.1.

Each site’s file structure is connected back to a core file structure via Symlinked files which allows us to maintain each site easily simply by updating the core files and these updates occur daily, often hourly.

The majority of a site’s files can be edited which when done means that the edited file gets disconnected from the core to ensure that changes aren’t overwritten by any of our updates. Any file can easily be put back into the core on request.

Access to Data

Again with regards to access to data, Funraisin has been developed to be as open as possible whilst still maintaining a safe and secure platform for charities.  When it comes to getting access to a site’s data there are several options available.

Data Exports

Each site supports the ability to setup custom data exports which allows you to create CSV files that can be emailed, downloaded or transferred onto a SFTP server via a schedule. The column structure of these CSV files is completely customizable via the admin. Information on how to create custom data exports can be found at http://support.funraisin.co/article/creating-custom-reports/

API

Each site also contains it’s own API which gives you unfiltered, direct access to the database tables. The API allows you to scrape data out of your database in CSV or JSON formats as well as add new or update existing records. Information on how to connect to your site’s API can be found at http://support.funraisin.co/article/connecting-to-your-api/

Webhooks

In addition to the API each site also supports webhooks which allow you access to data in real-time for the purpose of sending to 3rd party middleware e.g. Zapier. Information on how to setup webhooks can be found at http://support.funraisin.co/article/using-webhooks/ 

 

DB Query Editor

A 4th option is to also use the built in DB query editor found in the developers module (see below) to run your own SQL commands for things like custom downloads, bulk DB updates, etc.

 

 

Customisation

The ability to truly customise a site so that it is 100% on-brand and offers the very best user experience is at the heart of Funraisin’s vision. Each site contains a Developers module that allows you direct access to things like the site’s templates, CSS and JS files, 3rd party libraries e.g. fonts, as well as a database query editor.

Custom CSS and JS

CSS and JS can be added to your site through a variety of places. Any page in the admin supports the ability to add inline CSS and JS, or you can also add it globally simply by editing the Desktop and Mobile CSS / JS files via the developers module.

Site Templates

Each site contains a Developers module that allows you direct access to the site’s core HTML templates (views). Note that not all views are editable, of the 280 or so templates that are used to power your Funraisin site, approximately 250 are editable. All Funraisin powered sites are built using Bootstrap v3.4.1 at the time of writing.

Adding 3rd Party JS libraries

You can upload your own custom JS libraries directly via the developers module to then pull in either by editing a template directly or simply by referencing the library in the site’s main JS or CSS files.

Custom PHP

In addition to the above, the Funraisin CMS allows you to create pure PHP pages or sprinkle PHP into just about any page on the site. This allows you to do things like connect to the database directly, send emails, and interact with any of the built in PHP libraries.

For example we have built complete mini-admins for site volunteers to be able to edit pages and access/update information on their event by creating custom PHP pages.

3rd Party Integrations

Funraisin supports several 3rd party applications as standard for making it easy to syncing data to other sources. All 3rd party syncs work on a scheduled basis, typically set to 1 hour intervals.

Mailchimp

To learn more about our MailChimp sync visit http://support.funraisin.co/article/how-to-send-data-to-campaign-monitor-or-mailchimp/

Campaign Monitor

To learn more about our Campaign Monitor sync visit http://support.funraisin.co/article/how-to-send-data-to-campaign-monitor-or-mailchimp/

Auto Pilot

To learn more about our AutoPilot module visit http://support.funraisin.co/article/how-to-send-data-to-campaign-monitor-or-mailchimp/

Salesforce

To learn more about how to connect to Salesforce visit http://support.funraisin.co/article/connecting-funraisin-to-salesforce/

Zapier

Zapier support is provided via our built in webhooks.

Google Analytics / Tracking

For tracking and analytics Funraisin has built in support for Google Analytics (GA, Gtag and GTM) and Facebook Events for more information visit http://support.funraisin.co/article/setting-up-e-commerce-and-event-tracking/

Custom tracking code can also be added to most pages on the platform.

  

Join newsletter