Drupal 8 golf club fitting application
The folks at MyGolfSpy, the owners of TrueGolfFit, are experts at golf, testing dozens of new clubs each year. They decided to put all this testing to use and bring golf club fitting to the masses at an affordable price.
We knew Drupal would be a fantastic fit for this project, but had to over come some practical challenges. We wanted to store the swing analysis data provided by the testing equipment in a custom entity, but we needed the process of importing to work for non-technical users. The volume of data and statistical analysis that needed to run on import was too much for the server to manage.
To solve this problem, we developed a Drush command that would be run by a cron job. In this way, the site managers could simply create a new node, and upload the raw CSV from the test equipment, and within a couple of minutes, the Drush command would pick up and parse the file, clean and analyse the data, and store everything in base fields of the custom entities we created.
The UX called for simplified, touch friendly screens to collect customer data, store preferences, and a customized checkout process. We built a series of multi-step forms that transformed into touch-friendly Slick sliders. For payment collection we used Stripe Checkout, providing several patches that made it more flexible and robust.
TrueGolfFit now provides golf club recommendations to thousands of golf players around the world.
Quickly capture critical information
TrueGolfFit provides a simple, mobile friendly experience for customers to enter their metrics and quickly receive the best matched golf club. TrueGolfFit uses a proprietary process to statistically match user provided data to normalized sample data to accurately recommend the clubs that provide recommendations that are proven to increase distance and reduce scores.
Large Datasets, simple visualization
The large imports generated from the launch monitor used to capture the reference data proved to be a challenge for Drupal's intensive entity system. We created a custom entity with simplified base fields to store the data, as well as custom Drush commands that handled the UI uploaded data files and process the statistical analysis.
The thoughtfulness that went into the app extends to every experience. It stores previously entered swing profile and payment information to help customers get through the fitting process quickly on repeat visits, previous recommendations are stored so customers can see how the newest clubs compare to older models, and custom marketing automation integration automatically generates the user accounts and remembers users across visits.
User stores were mapped to flow diagrams.
Wireframes and low fidelity prototypes were created.
Branding and design elements were created and screen mockups presented.
Custom integrations and development including theme and 8 custom modules.