Case study · Parking technology

Oparko: customer and admin apps for a Danish parking platform

Oparko is a Danish parking technology company. We helped build both sides of its platform, the app their customers use and the admin app their team runs it from, on React, Go and MariaDB in Docker. We also built the integration with a Danish government API, in Java with Spark, with every exchange checked by signature verification.

The challenge

What wasn’t working

Parking software has two very different audiences. The people who park need something quick and clear; the operator’s team needs full control behind the scenes.

Oparko needed both: a customer-facing app, and an admin app for running the platform day to day, on a back end that could serve them both.

Part of the work also depended on a Danish government API. A connection like that has to be trustworthy, so every response had to be verified before the platform trusted it.

The solution

What we built

Customer-facing app

The React app Oparko’s customers use, built to be quick and clear for people who just want to get on with their day.

Admin app

A separate React admin app where Oparko’s team manages the platform and the customers on it.

Go back end on MariaDB

One Go back end and MariaDB database behind both apps, so customers and admins always work from the same data.

Government API integration

A dedicated Java service, built with Spark, that connects the platform to a Danish government API.

Signature verification

Every response from the government API is signature-verified, so data is only trusted once it has been checked.

Docker-based services

Each service runs in Docker, so it behaves the same on a developer’s machine as it does in production.

How it works

How the pieces fit together

  1. 1

    Customer app

    Customers use the React app, which talks to the Go back end.

  2. 2

    Admin app

    Oparko’s team works in the admin app, on the same back end and data.

  3. 3

    Go and MariaDB

    The Go back end handles the business logic and stores everything in MariaDB.

  4. 4

    Government API service

    A Java service built with Spark handles the Danish government API and verifies every signature.

  5. 5

    Docker

    Every service is containerized with Docker, from local development to production.

The result

What changed

  • Customers and Oparko’s team each have an app built for their job
  • Both apps run on one Go and MariaDB back end, so the data always matches
  • A Danish government API connected through a signature-verified Java service
  • Every service packaged in Docker for consistent releases

Have a project like this?

Tell us what you need to build. In 30 minutes we’ll map what to build first and follow up with a fixed-scope estimate.

Official Retool Agency Partner5.0 on Clutch, 8 verified reviewsBuilding software since 2015Reply within one business day