UtahDevCo Logo

App Development Experts

Strike the balance between
cost, quality, and speed to market

Based in Salt Lake City, Utah
Deploying worldwide

Speed

Speed to market is non-negotiable.

Your product needs to be in customers hands ASAP. We recommend at maximum 2 months of development before onboarding your first users. Customers provide feedback, driving iteration and a growing userbase.

Quality

A trusted set of eyes reviews every code commit.

Your codebase is only as healthy as your most over-worked developer. We oversee every line of code that goes into your product. We take personal pride in maintaining high-quality codebases for all of our partners.

Cost

Product excellence starts with keeping costs under control.

We’ll help you scope your project and provide recommendations for staffing it. Bring your CTO, or let us provide one. Tap our network of on- and off-shore resources to build a high-performing team that you can afford.

Let's Talk

Building a business can be lonely. We're here for you.

Let's kick around product ideas,
talk about project scope,
or start a quotation,

Portfolio

Adobe Workfront

Adobe Workfront

Project Summary

During our engagement with Adobe Workfront we contributed to Workfront's Digital Asset Management (DAM) tool and Adobe XD plugins.

Prior to Adobe's acquisition of Workfront, we focused on the front-end of the DAM product, working on a team of four developers. Workfront and Adobe's relationship was becoming closer during this time period, and Workfront chose to discontinue work on it's DAM tool in favor of Adobe's Experience Manager Assets product.

In the lead-up to Adobe's acquisition of Workfront, we pivoted from Workfront DAM to a new suite of Workfront + Adobe XD plugins. We learned Adobe XD's plugin architecture and produced the first publicly available Workfront plugins for Adobe XD.

Technology

Our work with Adobe focused on JavaScript and Node.js, with React Router and Redux as the pillars of our homegrown framework.

We operated in a Scrum environment, collaborating closely with our back-end team and our UX designer.

We wrote a substantial suite of unit tests using Jest.

Pluralsight

Pluralsight

Project Summary

Pluralsight is a content platform for digital skill development. As such, they rely heavily on their custom video player to deliver their primary product.

In the summer of 2018, we worked with Pluralsight to rebuild their web video experience from scratch. A basic HTML video player is trivial to implement, but we had a much higher bar to clear due to accessibility concerns.

The finished product supports screen readers, mobile browsers, and desktop browsers with both keyboard- and mouse-based interactions. We were careful to maintain compatibility for Safari, Internet Explorer, Firefox, and Chrome.

Technology

The Pluralsight video player is built with React. We used MacOS VoiceOver to test for screen reader compatibility.

BoomPop.com

BoomPop.com

Project Summary

We worked with BoomPop.com to take over a large Next.js codebase from two groups of contractors. We developed the original BoomPop MVP from 2021 through 2022, when BoomPop closed a Series A funding round.

Post-Series A, the business continued to extend its growth curve, expanding from virtual events into event management for company offsites. We continued to work with BoomPop during this expansion, creating a new codebase for the new line of business.

Our time with BoomPop was marked by quick feature turnarounds and tight collaboration with the Product team. We moved extremely quickly to validate and exploit business opportunities in a fast-changing environment post-COVID.

Technology

We built BoomPop.com with Next.js, WebFlow, and Amazon AWS using the SST stack.

We collaborated with the product team over Figma, translating designs into pixel-perfect web application features.

Our feature development included creation and ownership of Instant Book checkout for virtual events as well as the BoomPop Budget Optimizer that pulls in data from hotels and airlines to generate custom estimates across a matrix of hotels and travel dates.

TherapyAnimalHub.com

TherapyAnimalHub.com

Project Summary

TherapyAnimalHub.com launched in early 2024 as a two-sided marketplace to connect Licensed Clinical Psychologists with apartment renters.

Emotional Support Animals are a United States phenomenon. In short, you can talk to your licensed physician or therapist and get a letter saying that you need your pet for emotional support. This letter can be taken to an apartment complex and the apartment complex must respect it and cannot charge you extra for having your pet in the apartment. The requirements for an ESA are much lower than that of a fully-fledged service animal. For instance, if you purchase and train a seeing eye dog, that dog can be certified as a service animal and you can take your seeing eye dog with you practically anywhere. An emotional support animal must clear a much lower bar.

A variety of telehealth-style services exist to connect patients and counselors. Therapy Animal Hub is quite similar, except that it includes an affiliate marketing program. By using affiliate partnerships, we're able to address a much larger market. Other services use a combination of SEO and pay-for-clicks advertisement.

Technology

TherapyAnimalHub.com is built on Next.js and deployed to Vercel. It uses React Server Components and a Firebase backend.

The trickiest parts of this application are Stripe-related. It's a two-side marketplace, with the addition of affiliate partnerships, so we used Stripe Express Connect accounts for both the affiliates and the service providers. The providers get paid daily as they service new clients. The affiliates get paid monthly based on tracked promotion codes.

The application started as a simple intake form and grew dramatically as we discovered new business requirements. We're planning a full rewrite of the application layer, scheduled to launch in Q4 of 2024.

Calligraphy.org

Calligraphy.org

Project Summary

Calligraphy.org launched in 2012 as a joint project between Chris and Melissa Esplin.

Melissa is a calligrapher and had begun teaching local classes. Chris was just learning how to develop basic CRUD apps using the Symfony PHP framework.

They developed Calligraphy.org as an online learning application, attracting thousands of customers and growing the international community of calligraphers.

Chris worked full-time on Calligraphy.org from 2013 to late 2017.

Technology

Chris rewrote the application three times, eventually landing on a Next.js front end with Firebase on the back end and checkout on Shopify.

The application is distributed across Shopify, GitHub, Vimeo, and Firebase Cloud Functions.

Shopify handles all shopping and checkout. GitHub and Vimeo host the content. Firebase Cloud Functions is the glue that connects everything together and provides APIs for the web client.

QuiverPhotos.com

QuiverPhotos.com

Project Summary

We started Quiver Photos v1 in January of 2022. It was an exceptionally challenging project, and we were never satisfied with the result.

The v1 app used a combination of a web app and a command line tool, known as the "desktop app", to index media item records and then download them using the Google Photos API.

The Google Photos API stripped geo location EXIF metadata, and Apple Live Photos recovery was never supported, leading to sub-optimal data recovery.

Even worse, the Google Photos API throttled the application to 10k calls a month. As the app got more popular, users would hit API limits and have to wait until the next month to recover their libraries.

The only solution was to rewrite the entire thing as a desktop application that scrapes photos.google.com directly.

This rewrite was completed in early 2024 and has attracted hundreds of users in just a few months.

Technology

The desktop application uses PocketBase as a database solution and Wails for the desktop application itself. The Wails desktop app is written in a combination of Golang and React. It runs on a lightweight web client.

The hardest aspect of QuiverPhotos.com has been maintaining MacOS, Windows, and Linux compatibility. All three platforms work well for most users, but user systems and libraries are inconsistent, leading to difficult-to-diagnose bug reports.