Projects I've Worked On

Rocket CMS

PHP 8, Laravel 8, JavaScript, Vue.js, MySQL 8, Digital Ocean, CI

At KaFe Rocks the company needed a new central CMS to replace their existing systems that were split between a bespoke Zend application and WordPress sites. When I joined I was part of a small team that started work on this greenfield project, we were tasked with building a bespoke headless CMS that powers multiple Gatsby front-ends. This CMS needed to handle translations and other aspects that were very custom such as a bespoke navigation builder.


PHP 7.3, Laravel 7, JavaScript, Vue.js, APIs, MySQL 8, Linux

Throughout my 2 years at Purr I lead the development of their own internal business management software (Purrple) that runs the company.

Purrple acts as the single source of data entry to manage jobs whilst talking to many third party systems throughout a job's lifecycle such as Harvest, Freeagent, Capsule, Asana, Slack, Hello Sign and TimeTastic. This saves the company a lot of time and accuracy from not having to update various systems all the time.

The system also handles a lot of project management and human resources tasks such as weekly time reports, retainer reporting, performance reviews, holiday and training management. With being able to bring all of this data together Purr are able to provide detailed reporting on how the business has been financially at different periods and also predict future financials.

Social Pops

PHP 7.3, Laravel 6, JavaScript, Bash, FFmpeg, ImageMagick, APIs, Linux, MySQL 8, AWS S3

Social Pops is a platform for charities to be able to generate personalised videos to send to their fundraisers, for them to be able to share on social media and boost their fundraising.

A charity admin can log in to create an event(s), import a CSV file of their fundraisers (first name and fundraising URL), upload photo, video and audio assets and then click a button to generate all of the personalised videos. With a fundraising URL supplied, we are able to talk to third party systems such as Virgin Money Giving and JustGiving to get their photo and fundraising amounts to date.

Personalised videos are generated by combining the supplied assets and using FFmpeg and ImageMagick to convert, merge, manipulate and combine them into one output video file. The processing for this is managed with Laravel Horizon and a Redis queue due to the strain, length and complexity of generating these videos. All assets are stored on AWS S3.


PHP 7.3, Laravel 6, JavaScript, Vue.js, Payments, APIs, MySQL 8, Linux

iGiving is a fundraising platform that has taken over $500,000 and was needed to be an MVP to get to market but at the same time allow an admin at iGiving and Choose a Challenge to manage all donations, fundraisers, events and charities. Payout and donation reports can be generated for charities whilst fundraisers and charities also receive automatic weekly email updates on amounts raised.

A restful API has been created so fundraisers who sign up on Choose a Challenge will automatically have a fundraiser page created on iGiving too.

© Aaron Dunphy 2021

Built with Gatsby & ☕️