One of our creative partners approached us to help them develop an idea for one of their clients: They were looking to build a piece of software that a franchise-based company could use to create and manage marketing initiatives. We worked with them both to help come up with a technical scope, at which point our creative partner took over for the design phase. Designs in hand, we were ready to start the full buildout.
Sami was built using the CodeIgniter PHP framework. For such a large-scale project, a solid MVC architecture was necessary for creating robust, organized, extensible code. Additionally, we had multiple programmers working on this application and CodeIgniter allowed for a modular approach to feature development.
The designs our partner came up with were beautiful, but also fairly complex, and we wanted to make sure we could reproduce them as closely as possible. Similarly to the modular approach we took with the core of the system, we wanted to ensure our front end styles were organized as well. As such, we decided to implement the Compass CSS framework which utilizes the SASS pre-processor. This way, we could create cleaner markup that was highly reusable, which also paved the way for us to implement a company-specific theming system down the road.
On top of the basics, Sami required some unique functionality which required us to think out of the box. The client wanted to be able to draw on Google Maps in real time: shading areas, adding pins and markers, and so forth. We were able to leverage KineticJS, a bleeding edge HTML5 Canvas framework, to implement all of the control that they needed.
We had a blast working on Sami and think that the end result is pretty slick. It’s not public facing application which makes it tough to show off, but hopefully the screenshots give you the gist!