Reflex Logo

xSeriCon

Working Directly on Engineering Drawings: How xSeriCon Built Vizop, a Chemical Plant Safety Analysis Platform, in Pure Python

Grid
Gradient Reflex Logo
xSeriCon logo
10%Of multi-week workshop time saved for clients, worth thousands of dollars in engineering costs per study
10-20Highly paid engineers in each risk workshop whose time the app saves
3Engineers built the entire platform in pure Python, with no frontend specialist
Founded2015
Websitexsericon.com

Vizop: chemical plant safety analysis platform built with Reflex

Here's how Peter Clarke, Managing Director of xSeriCon, describes Reflex after more than a year of building with it:

"Reflex just felt like a big box of tools that we could do whatever we wanted with. We can do everything in Python, both the back end and the front end."

Meet xSeriCon, a safety consultancy working in the chemical industry. xSeriCon does risk analysis for the companies that design and build chemical factories, including major engineering firms, as well as end users across oil and gas, chemical, and pharmaceutical companies. Any time one of those companies builds something new or modifies a facility, they need a series of risk assessments to identify every accident that could happen and make sure enough protection is built in to keep that risk under control.

Those assessments, including HAZOP, LOPA, and alarm rationalization studies, are where xSeriCon's product comes in. The team is building Vizop, a Reflex app that helps clients gather, manage, and present the colossal amount of data a safety study generates.

Safety Studies That Run for Weeks

A single risk study can run for days or even weeks, with 10 to 20 highly paid engineers working through a facility section by section. The data they produce is not neat sensor readings. It is human-generated, narrative-type information that does not fit into convenient patterns or molds, which is exactly what makes the work so labor-intensive.

"The amount of information that you gather during one of these studies can be quite colossal, and every case is different. It's a lot of human-generated narrative-type data which doesn't fit into convenient patterns or molds. That's why it's so labor-intensive."
Peter ClarkeManaging Director at xSeriCon

The established tools in the market did not help. Competing apps are desktop-bound, dated, and hard to learn. Peter set a different bar for Vizop: an engineer should be able to type in a URL and start working.

"I wanted to get as near as possible to the point where somebody could just walk up, type in the URL, and start using it with no instruction and no training. That's a little bit utopian, but I want to get as close as I can to that. And I think Reflex actually does help us quite a lot with that."
Peter ClarkeManaging Director at xSeriCon

Three Generations: From wxPython to Django to Reflex

Vizop is the third generation of the app, and the story of the first two explains why xSeriCon values Reflex so highly.

The first generation was a standalone desktop app: Python backend, Python frontend, built on the wxPython windowing library. It worked, but the library was legacy, and xSeriCon wanted Vizop to be an online, multi-user app. That was going to be very difficult as a pure desktop program.

So the team switched to Django, and spent six months regretting it.

"Honestly, Django, I hated it on day one, and I still hated it on the day we ditched it, which was about six months later. It was just like wrestling with a barrel of snakes."
Peter ClarkeManaging Director at xSeriCon

The deeper problem was structural. xSeriCon hired a frontend developer to build the Django UI, and the two halves of the app never came together.

"We just found that the backend and frontend weren't talking to each other properly. No matter how many meetings we had or how many specs I wrote saying "this is what I want it to do," we basically couldn't get it to work."
Peter ClarkeManaging Director at xSeriCon

The end result was several tens of thousands of dollars of code that never even ran. With Reflex, that failure mode does not get managed better. It disappears entirely: there is no handoff between a backend developer and a frontend developer, because the same engineer writes both ends in the same language.

When Peter went looking for the next option, a search turned up four candidates. One stood out.

"Reflex was the obvious standout candidate, even though at that time it was very new and raw. I'm a Python kind of fuddy-duddy who only knows how to code in Python, so it looked like the obvious choice."
Peter ClarkeManaging Director at xSeriCon

Choosing it was not a casual decision. Vizop is xSeriCon's commercial product, and the team was betting it on a framework that had only just appeared.

"It was a bit of a risk for us to stake everything on a very, very new framework."
Peter ClarkeManaging Director at xSeriCon

More than a year later, the bet has paid off. xSeriCon came on board around Reflex version 0.3 and has been building with it ever since. Peter, who describes himself as old school and coded roughly half the app himself, works alongside Paul, a full-time developer who works with Reflex every day. The entire app is hand-written Python, with no AI coding tools involved, or as Peter puts it, "RI: real intelligence instead of AI."

Building Vizop in Pure Python

Vizop gives xSeriCon's clients two ways to run a study. The first replicates the traditional worksheet: a spreadsheet-style interface with boxes to type in and tools to move, copy, and link items together. That familiarity matters, because it is what risk engineers have used for decades.

The second is the part Peter calls groundbreaking: engineers can work directly on the engineering drawing itself.

"What we really want is for the user to be able to work directly on the drawing instead of having to just look at the drawing and then type what they think about it into a spreadsheet. This is kind of groundbreaking, because none of the other competing apps on the market will do this."
Peter ClarkeManaging Director at xSeriCon

In Vizop today, an engineer can open a piping and instrumentation diagram, such as an LNG ship unloading facility, click on a symbol, and tell the app what it is. Once Vizop knows a component is a pressure sensor, a built-in database tells it how that component can fail and what safety protection it can provide, such as raising an alarm.

The app shipped recently and is in production use in-house, with the first external client studies ahead of it.

Why xSeriCon Chose Reflex

  • Everything in Python, front end and back end. After the Django experience, a single language across the whole app was the deciding factor for a Python-native team.
  • A box of tools, not a straitjacket. Django insisted on its own patterns, like username-and-password account flows that xSeriCon's licensing model did not need. Reflex let them build the app their way.
"Django seemed like it always wanted to force us to do things a certain way. It felt like it was forcing us to do it its way instead of doing it our way. Whereas Reflex just felt like a big box of tools that we could do whatever we wanted with."
Peter ClarkeManaging Director at xSeriCon
  • Documentation good enough to live in. Getting started was easy, and the docs remain part of the daily workflow more than a year in.
"The docs are really quite good on the website. I'm on there pretty much every day, and the user community is quite helpful."
Peter ClarkeManaging Director at xSeriCon
  • Depth beyond the docs, thanks to React. Reflex sits on top of React, so when the team needs more than the built-in components, the ceiling is far higher than the documented surface.
"Not everything is in the docs. Because it's got a relationship with React, there's a lot more stuff that it can do. Honestly, I don't understand it, but Paul understands it better than I do."
Peter ClarkeManaging Director at xSeriCon
  • Powerful and extensible, with room to grow. The team knew early Reflex was missing things they wanted, but the pace of releases gave them confidence those gaps would close, and in many cases they have.
"It just felt easy to get started with, quite powerful, quite extensible. We knew it was very young and growing, which was a good sign for us, because things are probably gonna get added. Which they have, in many cases."
Peter ClarkeManaging Director at xSeriCon

The Economics: Shaving Days Off Multi-Week Workshops

Vizop's pitch to clients is time. xSeriCon estimates the app's efficiency can shave at least 10% off workshop time, and in this industry that compounds fast.

"You've got 10 to 20 highly paid engineers sitting together in a room for two weeks. Every day that you can save is thousands and thousands of dollars of saved manpower costs. And perhaps even more importantly, it helps them meet the project timeline."

The roadmap pushes the same advantage further:

  1. Click-and-drag node highlighting, so engineers can mark up sections of a drawing inside Vizop instead of annotating PDFs in a separate app
  2. Automatic recognition of the standard symbols on engineering drawings
  3. Intelligent suggestions that pre-populate the safety worksheet based on what the drawing already shows

Today, engineers still mark up node highlights in Adobe Acrobat and switch back to their study tool. Pulling that workflow inside Vizop is the kind of consolidation the whole product is built around.

"It sounds like a small thing, but when you're working with hundreds of these drawings, every little bit of time and effort saved, and the fact that you can do it in one app instead of switching back and forth between two apps, is a real, real plus."
Peter ClarkeManaging Director at xSeriCon

What started as a desktop tool that only xSeriCon could run is now an online, multi-user product their clients can simply open in a browser.

"We've invested a lot of time and money into getting this far, and we're happy to keep on going with it. No regrets so far."
Peter ClarkeManaging Director at xSeriCon

Squares Large
Contact Us

Book a demo

Book a demo to see how you can build powerful Python web apps
for your team with Reflex AI.


Built with Reflex