A Legacy Excel Macro Rebuilt as an Offline-First Lab Reporting Platform
A cloud platform paired with an offline-first Electron app, so lab staff keep working where connectivity is unreliable and sync when it returns
Clinical lab diagnostics data made analyzable downstream, in place of PDF reports created and left on local machines
25k+ engineering hours from 2021 to present

About Roche
- Geography
- Japan
- Industry
- Pharma / Diagnostics
- Services
- HealthTech Software Development
Roche is one of the world’s largest biotech companies and the fifth-largest pharmaceutical company by revenue. It is a leading provider of in-vitro diagnostics, supplying laboratories across major disease areas.
SoluteLabs built the reporting platform behind one of those laboratory workflows for Roche Japan: a cloud application, an offline-first Windows app built with Electron, and the sync module that keeps the two in agreement. The partnership started in 2021 and has since grown across multiple geographies.
“SoluteLabs’ expertise in technology and services is exceptional—they consistently delivered on time, paid attention to detail, and often exceeded our expectations. Their active approach made a difference, allowing us to be true partners rather than just mentors.”
Srinath Jagannathan
Global Head, Commercial BI, Roche
Solution
We proposed two applications for one workflow: a cloud native platform, and an offline-first desktop app built with Electron that syncs back to the platform once a connection is available. Lab staff travel to sites where connectivity cannot be assumed, so the desktop app had to be complete on its own rather than a thin client.
Offline Windows App on Electron
Cloud Native SaaS
Synchronization Module
Deliverables
Where it started
One Excel workbook, thousands of lines of macros in Japanese, and a PDF that could only be produced on the machine holding the file.
01
Connect and validate lab data
Instrument output arrives as CSV. The platform ingests it, maps it to the evaluation being run, and checks it before anything reaches a report.
02
Capture results online or offline
The same capture screens run in the browser and inside the Electron app on a laptop with no connection. Whatever is entered offline syncs back once the machine reaches a network again.
03
Configure and generate reports
Report structure, markers and headers are configured per evaluation, and the PDF is generated from that configuration rather than assembled by hand.
Tech Stack
One JavaScript stack carries both applications, so the same team builds the cloud platform and the offline desktop app without switching languages between them.

Web Development
NextJS and NestJS are the frontend and backend frameworks. DynamoDB is the database on the cloud, PostgreSQL ships inside the Windows offline app, and Electron packages that app for the desktop.
Cloud and DevOps
GitHub and GitHub Actions run CI and CD for the backend, and Vercel is the NoOps platform for the frontend. Terraform handles cloud infrastructure deployment, and SonarQube checks code quality alongside the linters.
Implementation Highlights
Decode the Legacy
A hired translator worked through thousands of lines of Japanese macros with the team until the existing workflow was written down.
Prototype First
End users were kept out of the project until there was something to test, so the first prototype had to stand on its own as the specification.
Parallel Build
The cloud platform, the offline Electron app and the sync module were built alongside each other against one shared data model.
Rollout to Roche Japan
The platform went into use at Roche Japan, replacing the macro workbook as the way evaluation reports get produced.
Maintained Since
SoluteLabs still runs and extends the system, and the engagement has grown into further work across geographies.
Outcomes
Three outcomes from an engagement that is still running: the reporting time it took out, the cost it took out, and the fact that the system it replaced has stayed replaced.
50%+ time saved
Report generation is automated end to end, from CSV ingest through to the finished PDF.
The manual data entry the macro workbook required is gone.
65%+ cost savings
The unmaintained macro workflow was retired, and with it the cost of keeping it running.
Lab diagnostics data is analyzable downstream instead of sitting in PDFs on individual machines.
In production since 2021
The platform is in production at Roche Japan and SoluteLabs still maintains it.
The engagement has grown into further work with Roche across geographies.
Sitting on a legacy system no one can safely replace?
That’s the brief you just read: decoded, rebuilt offline-first, and in production since 2021. Let’s talk about yours.

