Stage One: A Minimum Viable Product
The first step in the project was constructing an MVP that focused on building an app that would allow for the contractor to create a project, design it, and present an estimate in the field with the client during the initial hour meeting. To develop this tool, we used a Xamarin framework to create an Android version of the MVP. On this MVP, there would be a project management screen, a design screen and an estimation screen. The design screen would allow a contractor to quickly drag-and-drop lighting elements onto a series of landscape images associated with a project, write-up notes for the project and develop a wiring diagram. It would then aggregate all these items into a single project estimate where the contractor could then make adjustments to the final estimate.
Stage Two: Scaling the System
Stage two was the development of the MVP app into a monthly subscription system that contractors could sign-up for, and then customize to fit their differing business processes and model. The contractor would be provided an online content management system where they could add new sub-accounts, create new items, edit item pricing, edit item icons, choose item functionality and alter item color. We also developed an online cloud storage system to back-up all client projects and allow for multi-device usage. Third, we developed an IOS version of the application. Finally, we created an integration between the CMS, app and a third-party CRM system specifically built for service contractors. This integration would allow the contractor to automatically sync the two systems, allowing for the upload of client information and estimates created into LB into the third-party CRM.
LightingBOSS has completed its beta round and has been launched live. It is currently being used by landscape lighting contractors across the United States and is actively building its user base.
Client’s request was to develop an Android application as an initial prototype, but we knew that if the prototype is successful we will develop iOS version next. This is why we decided to use Xamarin so that we can reuse as much of the code as we can. Because our initial version of apps used hard-coded products at one point, and we needed a fast way to build a dashboard from which users can control available items in their apps, we decided to utilize experience our developers had working with PHP and MySQL and build the dashboard using a fully object-oriented approach.
We used Xamarin to build Android and iOS app with a unified code-base for easier maintenance.
To have the option to store local versions of projects, and to provide users with the ability to use the app in offline mode we used SQLite as a local database.
Our server, that handles user authentication and syncing between the local version of projects and online backups, is built using PHP.
For storing user data, available products for each user, and online backup of projects we used MySQL database system.
HTML 5 standard and Bootstrap 4 framework are used to give the main front-end structure to user dashboard.
CSS3 standard is used to create our unique style of user dashboard interface.