Projects A water quality kiosk app that also runs on the web

A water quality kiosk app that also runs on the web

Customers check their tap water’s contaminants in store or online, so staff can recommend the right filter.

A water quality kiosk app that also runs on the web, screenshot
See the kiosk main screen and the contaminant results screen above.
How long
2019
My role
Software architechtureDevelopment, Q&A, Support
Kind of project
New systemMedium project

The problem.

HANS Premium Water, a US water filtration retailer, wanted in-store customers to see what’s actually in their local tap water, so sales staff could recommend the right filtration system, and wanted the same tool available as an information page on their website for dealers.

What I built.

One React app, compiled two ways: as a locked-down kiosk app on Android tablets in store, and as a web app for the retailer’s dealer network. A customer enters their zip code, and the app returns two lists: contaminants the retailer’s filters remove, and other contaminants also present in their water, each with a graph comparing the current value, health risk level, and national and state averages. Customers can email themselves the results.

What they got.

One tool that works both as an in-store sales aid and as an online resource, without maintaining two separate builds.

For your technical person

Stack. React, compiled into a native Android container (Adobe PhoneGap) for the in-store kiosk tablets, and deployed separately as a web app for dealers on the retailer's website. React was chosen because the app ran many API calls and switched screens based on what the user did; the Context API held the app state. Styled with Bootstrap. Node.js and Express.js back end, with Google Firebase handling the email processing.

Kiosk tablets. The tablets were locked so they could only show the app. Sales staff searched a customer's zip code, and the store manager set which store the kiosk belonged to.

Water data. A third-party water-quality API returned two lists for the customer's area: contaminants the retailer's filters remove, and other contaminants also in the water. A second call fetched detail for each contaminant, with a graph of the current value against the health-risk level and the national and state averages.

Back end and integrations. Custom endpoints received the customer's details and search results from both the kiosk and the web app, stored them, and served store details back to the app. MailGun sent the results email from a custom template, and every customer was passed to HubSpot as a CRM contact.

Timeline. 2 months, 2019.

Running into the same problem? Tell me about yours.

+27 87 150 9305

Monday to Friday, 09:00 to 20:00 SAST. Or email info@antondevilliers.com.

Tell me the problem

Step 1 of 3. Pick what’s closest. You can explain in your own words next.

I reply myself, usually the same working day. The first conversation is free, and you’ll know the price of every piece before it starts. How a project works · Privacy

WhatsApp