Trinity Kenosha – Progressive Web App

Trinity Kenosha App https://trinitykenoshaapp.com

A few months ago, we launched the shiny new Trinity Kenosha website. They also requested an app that would allow their congregation to have easy access to the latest bulletins, an event calendar, volunteer lists, and even video and audio sermons.

You can download the app at https://trinitykenoshaapp.com. Just visit the web address and Add to Homescreen!

Trinity App screenshots

Progressive Web Apps (PWAs)

As progressive web apps are picking up traction in the industry, there has never been a better time to build one! The idea of a PWA is to add the latest features and web APIs to a website or web app and create a native-like application. With the help of a key technology, the service worker, web apps can now be downloaded to your mobile device, used offline, even receive push notifications! Even though we are using ‘progressive’ techniques and technologies, a PWA will fall back to be a normal website and work perfectly fine on older devices that don’t support the latest features. It also cuts down the need to learn multiple languages and develop two code bases in order to create apps for all devices.

There are a number of great reasons to build a PWA and lots of supporting statistics that show that Progressive Web Apps are becoming more and more popular. Check out this great talk by Sam Thorogood at Linux.conf.au 2018 (LCA2018) to learn more!

Development Experience

This app was quite fun to build! Using React, one of our favorite libraries, and Material-UI, we were able to create a great-looking app that pulls content from the aforementioned WordPress site as well as YouTube. It then consolidates the data into a nice interface for easy browsing and viewing.

We are quite familiar with React, so building out the components was pretty straightforward. Though a lot of React developers reach for state management solutions such as Redux, I didn’t find it necessary in this case. The content data is fetched from WordPress and the rest of the state for interactions is managed locally in the components.

We use Firebase for hosting and sending push notifications. Out of all of the features, we expected configuring push notifications was going to be the trickiest, but after a bit of research, we were happy to discover the ease of integrating push messages using Firebase Cloud Messaging!

So come to ICS with your ideas! Chat with us and we can figure out how to bring your next big idea to life!