
Modernizing a Safety Platform: Kanban Integration & TypeScript Migration
About the Client
LM Safety is a New Zealand-based occupational hygiene and health & safety consulting firm, headquartered in Cromwell, Otago. With over 40 years of combined experience, their consultants work across sectors from construction and food manufacturing to oil, gas, and tourism, helping organizations manage everything from dust and noise exposure to indoor air quality and thermal stress.
As a HASANZ-registered practice, LM Safety holds itself to the highest national standards for occupational health consulting. Their work goes well beyond compliance checks; the team focuses on building lasting safety cultures within the organizations they serve.
About HazNode
HazNode is LM Safety’s purpose-built business management platform, an all-in-one solution designed specifically for occupational hygiene and environmental consultants. Rather than stitching together a handful of generic tools, HazNode brings every part of a consultant’s workflow under one roof: quoting, project management, field data collection, laboratory workflows, reporting, and client management.
The platform was built to reflect the reality of how these consultants work, moving between office, field, and lab, often juggling multiple active projects at once. That complexity made it especially important for the interface to be clear, intuitive, and efficient.
The Challenge
LM Safety approached Technext with a focused requirement: integrate a Kanban board view into HazNode to give their team a better visual handle on active work. The Kanban view was drawn from Aurora a modern admin and landing page template from ThemeWagon and the goal was to bring that exact experience into HazNode.
What started as a straightforward integration revealed a more layered challenge. The existing interface had been built on a different design system, and importing the Aurora Kanban component without modifications would have introduced visible inconsistencies throughout the platform. Font treatments, spacing, color logic, and interactive elements simply didn’t align cleanly.
Beyond the visual friction, the existing codebase had a longer-term concern: it was written in JavaScript, which left certain categories of runtime errors open the kind that only surface when someone clicks the wrong sequence of things at the wrong time. There was an opportunity to address that during the same engagement.
Our Approach
Once we had a clear picture of the inconsistencies, we brought our findings to the client. That conversation shaped the strategy for the whole engagement.
Rather than rush the Kanban integration in isolation, we proposed a two-stage approach: deliver the Kanban view first, exactly as the client needed it, then work through the broader interface to resolve every inconsistency that the integration had surfaced. This meant the client got their core feature without delay, and the cleanup happened gradually and deliberately, not as a scramble after launch.
Alongside the visual work, we migrated the codebase to TypeScript. TypeScript brings strict type checking to the development process, which means an entire class of errors that previously could only be discovered at runtime would now be caught during development. For a platform that consultants rely on in the field and the lab, that kind of reliability matters.
What We Delivered
The scope of the engagement covered several areas:
- Kanban board integration drawn from the Aurora theme, implemented as the client specified, giving project managers a visual drag-and-drop view of active work items
- Full TypeScript migration across the front-end codebase, replacing the existing JavaScript implementation and introducing compile-time error detection
- Strategic UI customisation to resolve the design inconsistencies introduced during the Kanban integration covering layout, spacing, typography, and colour
- Section-level feature additions in areas the client identified as needing functional improvements
- A redesigned landing page that brings the same updated visual language to the public-facing side of the product
Results
The delivered platform looks and behaves like a single, coherent product. The Kanban view fits naturally into the broader interface rather than sitting as a grafted-on addition, and users moving between sections don’t encounter the kind of visual jarring that can quietly erode trust in a tool.
The TypeScript migration gives the development team a more stable foundation going forward. Future changes to HazNode can be made with greater confidence the type system will surface problems early, before they reach the people using the platform in the field.
The updated landing page also gives LM Safety a stronger first impression for prospective clients exploring HazNode, with the same visual quality as the application itself.
Key Achievements
- Delivered a fully integrated Kanban view that improves how teams visualise and manage active project work
- Completed a JavaScript-to-TypeScript migration, reducing exposure to runtime errors across the front-end
- Resolved design inconsistencies introduced by the theme integration, resulting in a visually consistent UI throughout
- Implemented custom feature additions in targeted sections of the platform
- Shipped a refreshed landing page aligned with the updated application design
Industry
Occupational Hygiene & Environmental Consulting
Provided Service
Front-end Development
Tech Stack
React 19, TypeScript, Material UI v7, Emotion, Sass
Location

Cromwell
