Riser/Sheet

How it works, screen by screen

Nine sections, one screenshot each. Every one is a capture of the running app on the demo project that is seeded into each account — a hospital wing with a looped cross main, a fire pump, a backflow preventer and a standpipe — solved.

Nothing below is a mockup, and no figure on any of these screens was typed into it. The pressures, flows, velocities and verdicts are the solver’s output for that project, and the caption under each figure says which solve produced them.

Draw the network

The Design view is a drawing surface with the solver behind it. Place a sprinkler, a junction or a demand point, draw pipe between them, and the network is laid out for you. Selecting things, dragging them, aligning and distributing them all work the way they do in a drawing tool, and every edit is one undoable change to the same document the sheets show.

Six overlays go on and off independently: flow arrows, node pressures, velocities, the governing path, the hose path and the loops. All six are on in the figure below, which is why every pipe carries its size, length and flow and every node its pressure.

No position on the drawing is computed by the page. The layout comes back from the same Rust crate that solves the network, and the PDF draws the figure from that same layout, so the schematic a reviewer holds is the schematic the designer arranged.

The RiserSheet workspace in Design view. A sprinkler network is drawn as a schematic: a riser at the left, two branch lines of six pendent sprinklers each, a standpipe outlet, and a dashed cross main closing a loop. Every pipe is labelled with its size, length and flow, and every node with its pressure. A nameplate at the right reads Pass, plus 21.3 psi at the riser.
Design view on the looped hospital wing in the seeded demo project, with all six overlays on. The crate lays the drawing out and the solver supplies every pressure, flow and velocity on it.

Layout mode is the same document to scale, with a scale bar to measure it against. A drag on its own never changes a length: the one place the drawing writes back to the sheet is “set lengths from drawing”, behind a button that names the pipes it will change and the values it will write.

The same network in Layout mode, drawn to scale with a 25 foot scale bar at the bottom left. The branch lines sit close together and the cross main runs the length of the wing.
The same network in Layout mode: the same document to scale, with the scale bar the drawing is measured against.

Or type it as a sheet

A designer already thinks in rows of pipes, so the drawing has a second face. Tab and Enter move like a spreadsheet, paste from Excel fills the input columns, and adding a row whose end node does not exist creates the node. The pipe sheet and the node sheet are the same document as the drawing, one segmented control apart.

The columns on the left were typed. Equivalent length, elevation and flow were not — they are read-only output, set in the mono face so the numbers line up down the column and so it is obvious at a glance which half of the sheet is yours.

The workspace in Sheet view. A pipe sheet lists sixteen pipes with columns for from and to node, size, length, fittings, equivalent length, elevation and flow. A node sheet begins below it. The nameplate at the right still reads Pass.
Sheet view on the same remote area. The left columns were typed; equivalent length and flow are the solver’s, recomputed on every keystroke.

It re-solves as you type

There is no calculate button. The whole remote area re-solves inside one animation frame after every keystroke, and the nameplate at the right changes with it. The solver is one Rust crate compiled to WebAssembly, so the arithmetic happens in the browser without a round trip, and it is the same crate the server links natively when it builds the report.

Select a pipe or a node and the inspector reads out that row of the sheet standing on end: what you entered above the rule, what was solved below it. The link at its foot goes to the row itself, because the drawing and the sheet are the same document and a number you want to change is always in one place.

The drawing with the inspector docked at its right edge, open on pipe P16. The inspector lists the pipe’s from and to node, its 8 inch size, 44 feet of length, 25 feet of equivalent length, its fittings, and then 677.0 gpm of flow, 4.3 ft per second, 0.3 psi of friction and 9.5 psi of elevation.
Select a pipe and the inspector reads out its own row: the four columns above the rule were typed, the six below it were solved.

Know the margin

The nameplate is the stamped plate an NFPA 13 submittal carries, and it says one of two words. Pass or Fail, and by how many psi at the riser, over the demand, the supply at that flow, and what the system needs. The graph beside it puts the demand point on the supply curve so the margin is a distance rather than a claim.

When it fails, the notes list says what would fix it. The suggested fix is a second solve, not a rule of thumb: the solver tries a change, reports the one that passes, and states the margin that change leaves. Advisory notes say so in as many words, so a velocity warning is never mistaken for a code limit.

A failing remote area. The nameplate reads Fail, 3.5 psi short at the riser, over a demand of 635.8 gpm needing 39.7 psi against 36.2 psi of supply. A supply-versus-demand graph marks the shortfall as minus 3.5 psi. The notes list below opens with a red note saying demand exceeds supply by 3.5 psi, and that stepping the schedule 10 one inch pipe up to one and a quarter inch passes with 2.8 psi to spare.
The failing retail unit in the seeded demo project, one pipe size short. The suggested fix names the one change that passes and the margin it leaves, both from the solver’s own second run.

One supply, every area

A project has one water supply and every remote area in it is calculated against that supply. Enter a hydrant flow test or a tank, and the curve is plotted on the flow-to-the-1.85 scale a plan reviewer expects, readable at any flow. Change the flow test and every area in the project can be re-run against the new one.

A fire pump is a table of curve points, and a backflow preventer or a meter is a table of losses from the manufacturer’s curve. Both are applied when an area is solved, and the composite curve is the one the workspace shows.

The water supply page. A hydrant flow test reads 70 psi static, 55 psi residual at 1600 gpm. A fire pump table holds three curve points at 0, 1000 and 1500 gpm. A supply curve is plotted beside them on the flow to the 1.85 scale, reading 68.3 psi at 500 gpm.
One supply per project, with the pump curve and the device losses that sit on it. The plotted curve and the reading at 500 gpm are the solver’s, from the flow test entered on the left.

The project overview leads with that supply, then lists every remote area with the date it was last solved and the margin it solved to. Above them sits the project’s title block — address, authority having jurisdiction, code edition — which is what the corner of a shop drawing says and what the report cover repeats.

A project overview. A title block gives the address, the authority having jurisdiction and the code edition. A water supply plate leads with 70.0 psi static, 55.0 psi residual and 1,600.0 gpm, over a ruled list of the rest of the flow test. Below it one remote area is listed with its solve date and a Pass of plus 21.3 psi.
The project the areas hang off: the supply they are all judged against, then every remote area with the margin it last solved to.

Loops, pumps, standpipes and antifreeze

A tree system solves by working back from the remote head. A loop or a grid does not, so the Pro plan solves those by the node method and reports what it did: which pipes closed the loop, the imbalance it closed to, and how many iterations it took. A standpipe outlet takes its own demand at its own pressure, and it says so when it governs.

Antifreeze runs on Darcy-Weisbach rather than Hazen-Williams, because a glycol solution is not water and the Hazen-Williams C-factor has nowhere to put viscosity. Automatic remote area selection, multiple hose demands, and the firm logo and NICET number on the report are Pro as well.

The notes list for the looped hospital wing. Notes say that the standpipe governs and needs 65 psi at the hose valve, that the looped network was solved with the node method with one independent loop to balance, and that reference values are still pending a check against the printed NFPA 13 2022 so reports print as preliminary. Fitting notes name which size each fitting was priced at. A green note reads Passes with 21.3 psi to spare. Below the list, a loop closures panel shows P13 to P16 to P14 closing at 0.0 psi in two iterations.
What the Pro features report about themselves on the same area: the loop’s balance and iteration count, the standpipe that governs, and the fitting size each equivalent length was taken at.

Hand over the report

When an area passes, the report is eight sections: the cover and summary, the water supply with its curve, the node data, the pipe data, the network schematic, the supply and demand graph, the pipe and fitting quantities, and the notes and assumptions with the designer statement. The browser previews every sheet before the PDF is built.

The report preview, section 1 of 8. A title block heads the sheet, above the project name and remote area, an amber banner reading PRELIMINARY, reference data pending source verification, and a green verdict reading Passes, plus 21.3 psi at the riser. A job table and a design criterion table follow.
The report as the browser previews it, sheet by sheet, before the PDF is built. The preliminary banner is the reference data’s real state in this build, not a placeholder.

The PDF is stored with the inputs it was built from, so a report you sent last month still says what it said. Its footer carries the solver version, the reference-data version and the code edition, which is what makes a calculation re-checkable rather than merely printable.

The banner on both is worth reading rather than glossing over. Some records in the reference tables have not yet been checked against their published source, and until they are, every report prints marked preliminary. That is the product refusing to let a PDF look more finished than the data behind it.

How the solver is checked

Page 1 of the generated PDF, on letter paper. The title block sits top left with the firm name and date top right. Under the project name and remote area are the preliminary banner, a paragraph naming what the software did and what the designer of record is responsible for, and the Passes verdict. Job, design criterion, and demand and supply tables fill the page, over a footer carrying the solver version, the reference data version, the code edition and the page number.
Page 1 of the eight-page PDF, rendered from the file the backend produced for the seeded demo project. Every figure on it is the same solve the workspace showed.

Reviewers and roles

Three roles. An owner runs the organisation and its billing, a designer does the work, and a reviewer reads. Reviewer seats are free and unlimited, because the person approving a calculation is the second user of it and charging for that would mean two people sharing one login.

The members section of organisation settings. Three members are listed: a designer on a billable seat, the owner on a billable seat, and a reviewer on a free seat. Each row carries a role control. An invites section below sends a link and notes that reviewer seats are free.
Seats and roles in the seeded demo project's organisation. A reviewer seat is free, which is why a plan reviewer never has to share a login.

A reviewer sees the same drawing, the same sheets and the same report, and the tools that would change them go quiet. Nothing is hidden from them: read-only here means the edits are refused, not that the calculation is.

The same workspace signed in as the reviewer. A band under the top bar says the seat is a reviewer seat, which is read only, and that an owner can change the role in organisation settings. In the toolbar the four drawing tools are greyed out while the view controls stay live.
The same remote area on a reviewer seat: the drawing tools go quiet, the drawing, the sheets and the report do not.

Try it before you sign up

Six calculators run the same WebAssembly module as the app, with no account and no email capture, so the answer on those pages is the answer inside the product. They are the honest way to check the arithmetic against a hand calculation before trusting it with a submittal.

The free Hazen-Williams friction loss calculator. Flow of 150 gpm through 100 feet of two inch schedule 40 black steel at a C-factor of 120 gives 19.9 psi of total friction loss, 0.1989 psi per foot, 14.3 feet per second and a 2.067 inch internal diameter. A drawn pipe section beside the result carries the same four values as dimensions.
One of the six calculators, signed out and with no account. It loads the same WebAssembly module the workspace runs, so the answer here is the answer inside the product.

On a phone the workspace keeps the drawing, the verdict and the camera, and drops the tools a phone cannot drive. Editing a sheet of pipe data needs a keyboard, and pretending otherwise would cost a designer a mistyped length rather than save them a trip to a desk.

The workspace on a 390 pixel wide phone. The breadcrumb keeps its last segment, the nameplate reads Pass with plus 21.3 psi at the riser above the drawing, and the toolbar keeps only the two view tabs and the camera controls.
The same area on a phone. Editing a sheet needs a keyboard, so a phone gets the drawing, the verdict and the camera, and drops the tools it cannot use.
Riser/Sheet
HYDRAULIC CALCNFPA 13

Know the margin.

The trial runs 14 days with every feature and no card. You land in the finished sample project, so the first calculation you read is a completed one, and the demo projects this page is drawn from are in the account with it.

What it does not do

The drawing half of a CAD package. There is no DXF import, no head spacing, no sheet set and no plotting. The Design view draws the network you calculated; it is not the drawing you submit. The designer of record stays responsible for the inputs, the adopted code edition and field verification.