From the ground up

It took a lot of thought and a long decision making process but we scrapped our current process and started from scratch. While using jQuery/PHP/MySQL/MongoDB/WebSockets as our stack we realized updates were just not as fast as they should be. In order to give our users the “instant” screen updates we were shooting for something had to change.


We lit the project on fire!

FireBase which provides a similar JSON DB structure to MongoDB was the answer. It allows for 3-way data binding, simplification of CRUD operations, and amazing low latency database connectivity (DB communication is over WebSockets).

3-Way. Object on page, JavaScript Object, Database Object. So simple that when one location changes, the other 2 follow. This eliminates the step of sending data to PHP to process and be sent to the DB. The second it is changed on the client side it makes it way immediately to the DB.

In our tests we have not seen an update between clients take even near a whole second to update on the screen.


So Material

The old interface was scrapped as well. On the client side we are now sporting AngularJS with the Material-Angular package. Previously we eliminated page loads to see new updated content. Now we have completely eliminated page loads to go between sections of the website. This speeds up the interface by allowing content to appear instantly and greatly reduces the requests to the server acting more like an application than a website. To make a familiar interface we have taken on the Google Material look. Page elements and locations will be easy to use and find thanks to Googles well known design scheme.


Timeline

While scrapping and starting over sounds like it will set the project back it has actually allowed us to streamline the development process. After about a month and a half we are now past where development was in the previous environment.


What comes first?

In order to get the product out to the users ASAP we will be releasing updates 1 module at a time. To start users will be provides with a CRM interface to start managing their customers. The reason for this being the first module is that all of our other modules are actually built to support & enhance the CRM.


When to expect the first release?

If there are no major issues we plan to release the first beta by the end of February. An exact date has not been established.

If you wish to join the beta testing, head over to our homepage and sign up for a beta invite.