Providing technology solutions to solve problems, reduce your workload and simplify life.
I can usually be found in front of a computer creating digital solutions, behind a camera capturing moments, playing my guitar or enjoying our family.
Portfolio
judge_screen_mock
NODEJS / REACT / REDUX / SOCKET.IO / FIRESTORE / DOCKER / GOOGLE CLOUD
NZIPP Iris Awards Judging Admin & App
The Challenge
The New Zealand Institute of Professional Photography (NZIPP) run a live judging event each year where in excess of 1400 images are judged by 40 judges over 3 days. Their legacy system had become uneconomical to upgrade to suit their new requirements, as well as looking very dated being run on old technology that was unable to be ported to mobile devices. The collation of their results had recently been moved to Google Sheets, which was providing a stable base for the system, but it was not suitable for use by the judges, as well as being time consuming to set up each year.
The Honours team, who oversee the running of the awards, needed an admin system to prepare for the judging (including importing the entries/images that would be judged during the event), collate the results in real-time to enable them to run finals judging for 20+ sub-categories, and export the final results and images ready for a public exhibition during the event.
The judges required a reliable and intuitive system that they would be able to sit down and use at the live judging event with minimal training. The awards are run over long hours so a specific emphasis was placed on the system being easy on the eyes and with complete protection against user error.
With the recent move to 3 judging rooms, having 5 judges in each room, the system needed to be bullet-proof for the current awards as well as providing a solid platform which could handle future development.
The Solution
- Modern Dockerized Node.js Server providing RESTful API for the admin and Socket.IO connection for the judging consoles
- Hosted on Google Compute Engine VM Instances
- Google Firestore + Cloud Storage for data/image storage
- Redis caching of results + Bull Queue for processing of images and creation of judging sheets
- Judging Application built as a React Web App - using Socket.IO for reliable, real-time feedback from the server
- Admininstration Dashboard built as a React Web App - using Redux Toolkit (RTK Query)
ChunkyLlamaStudios
REACT / TYPESCRIPT / PHP / MYSQL / DROPBOX API
Chunky Llama Studios
The Challenge
Chunky Llama Studios is a high volume photographic studio capturing images of children, families and pets. Because of the high number of customers a solution needed to be provided to allow simple and flexible creation of different types of sessions as well as a customer management and image delivery system with minimal administration and maximum automation.
The Solution
- Develop a user-friendly Booking Calendar with React/Typescript and a WordPress based management system to automatically handle large quantities of studio bookings with minimal admin.
- Automatic delivery of images to customers via a custom web gallery with automatic upload of high resolution images to Dropbox using the Dropbox API
- Booking Calender integrated with WooCommerce for order management and reporting.
CuriousCove
PHP / MYSQL / JAVASCRIPT / WORDPRESS
Curious Cove Camp Management
- Camp website, booking and management system
- Back-end design and development - created as a WordPress Plugin for ease of management by the client
IsraeliHostingHome
PHP / MYSQL / JAVASCRIPT / WORDPRESS / RTL
International Travel Network
- Develop Hebrew RTL site with English host information
- Admin management of hosts developed
- Dynamic Google Maps integration with address obfuscation
DataTablesExcelStyles
JAVASCRIPT / OFFICE OPEN XML
Open Source Excel Styling
Plugin for DataTables
- Create a plugin for DataTables to simplify automatic styling of Excel exports using JavaScript on the client
- Released on GitHub and NPM
DaflareSite
PHP / SQLITE / CLOUDFLARE API / WORDPRESS
Daflare - DirectAdmin Plugin
- Automatically synchronise DNS from servers running the DirectAdmin Control Panel to Cloudflare
JessicaJonesHome
PHP / MYSQL / JAVASCRIPT
Jessica Jones Photography
- Develop a fast responsive client image gallery to host thousands of images for wedding customers
- Add custom image labelling and filtering to simplify selection of images
- Develop an app to download the images to the device for online and offline viewing