Services
Custom software developmentUmbraco developmentWeb developmentCRM developmentERP developmentAI & LLM integration.NET development & modernizationE-commerce developmentIntegrations & automationCloud & DevOpsMaintenance, support & project rescueDedicated teams & white-label
Our Work
Case studiesProducts
About Blog Contact
CRM & ERP · Transport and logistics

Moving Jongeneel's operations platform from Umbraco 8 to 17 on .NET 10

An internal platform for inspections, toolboxes and transport planning, upgraded from Umbraco 8 to Umbraco 17 on .NET 10 with daily workflows intact.

ClientJongeneel
IndustryTransport and logistics
Year2025–2026
CategoryCRM & ERP
Completed toolbox quiz question in the Jongeneel platform
8 → 17Umbraco versions in one migration
.NET 10runtime, replacing .NET Framework
The client

About Jongeneel

Transport company that manages inspections, safety checklists, equipment and staff administration through an internal platform.

Jongeneel is a transport company. Its staff use an internal platform for inspections, safety checklists, equipment, employee administration and daily coordination. Access is authenticated and role based, with modules for toolboxes, inspections, materials, CRM data, transport planning and reporting.

The platform ran on Umbraco 8 and .NET Framework. OSKI was asked to move it onto a supported, secure foundation while keeping the features the business relies on every day.

The challenge

What had to be solved

The upgrade went from Umbraco 8 all the way to 17 and changed the runtime too.

  • Daily-critical modules had to keep working through and after the upgrade.
  • Custom back-office plugins needed to stay compatible.
  • The deprecated NuPicker plugin had no path forward.
  • Background jobs, notifications and scheduled tasks had to keep running reliably.
The approach

How the team built it

Mapped the risks before touching code

The team analyzed the Umbraco 8 solution: its structure, dependencies and business-critical modules. That review exposed the migration risks and set the upgrade path.

Two upgrades in one move

OSKI migrated the solution to Umbraco 17 and refactored it onto .NET 10. Project structure, dependencies and internal libraries were updated, and custom back-office plugins kept working.

NuPicker out, Contentment in

NuPicker was replaced with Contentment, and its behavior was rebuilt with equivalent features.

Tests as a safety net

xUnit and Moq tests kept checking critical business logic during the migration. Hangfire jobs, notifications and scheduled tasks were maintained and extended.

Repeatable builds

Docker supports local development and deployment, and CI/CD pipelines produce consistent builds.

The outcome

What changed

Jongeneel's platform now runs on a fully supported stack.

  • Umbraco 17 and .NET 10 replace Umbraco 8 and .NET Framework.
  • Background processing is reliable and monitored with Serilog and Sentry.
  • Builds and deployments are automated and consistent across environments.
  • The platform has a stable base for further development and scaling.
Screens

Inside the product

Start a project

Have a similar project? Tell us about it.

A spec, a Figma file or three paragraphs is enough to start.

  1. First reply · from an engineer, not a sales rep
  2. 30-min call · with Roman, our CTO, to clarify scope
  3. After the call · a written proposal with plan, team and price
Roman Oleksuk
Roman Oleksuk, CTOPrefer to talk? Pick a slot in Roman's calendar
We reply from a human mailbox. No newsletters. Your brief stays under NDA on request. We use your details only to reply; see our privacy policy.