Skip to content

Client buildERP

Flooring Operations App

Bid, purchasing, and warehouse work in one app, built to cut manual handoffs.

Problem

A commercial flooring contractor ran estimating, purchasing, and warehouse work through a legacy desktop system and shared spreadsheets. When a salesperson flagged material to order, the old system recorded a bare flag with no date, note, or routing, so requests moved by chat and coordinators re-read a long report several times a day to find their own orders. Company stock levels lived in a spreadsheet someone rebuilt by hand every morning.

What we built

  • Estimating and proposals Bids with options, line items, sundries, margin math, printable proposals, and copying a bid to another customer.
  • CRM with credit review Customer and contact records, an opportunity pipeline that turns into bids, sold bids that turn into jobs, and a credit check that holds proposals, sales, and job conversion until the account is approved.
  • Order intake and purchasing Coordinator and account-manager pairing, an in-app alert to the paired coordinator when material is marked to order, POs that pre-fill shipping instructions and CC the account manager, and vendor records with a PO message preview.
  • Warehouse and inventory Receiving into named locations and bins, pick tickets, pallet labels, one-step buy and release, inventory aging and turn rate, stock reports, CSV export, and a phone-friendly view of what is arriving in the coming week.
  • Jobs and field work Job records, change orders, job cost, installation tickets, crew scheduling, document storage, and a live WIP view of cost, change-order exposure, and margin per job.
  • Google Chat inside the app A user connects their own account to read conversations, reply in threads, find a conversation by name, and send files without leaving the system.
  • One search box across records, showing only what the user's role allows, with permissions set per role.

Result

Deployed to production, with estimating, customer credit, purchase orders, warehouse stock, job records, and Google Chat behind one sign-in. Coordinator alerts, pre-filled PO details, and one-step stock release were built to take manual handoffs out of the order-to-warehouse flow. New client requests keep shipping as reviewed releases.

Shipped systems

  • Estimating: bids, options, line items, margin math, proposals
  • Copy a bid to another customer
  • Opportunity pipeline that converts into bids; sold bids convert into jobs
  • Customer and contact records
  • Customer credit review that gates proposals, sales, and job conversion
  • Order intake and coordinator workflow
  • Purchase orders and vendor records
  • Warehouse receiving, locations, and bins
  • Pick tickets and pallet labels
  • Inventory aging, turn rate, stock reports, and CSV export
  • Arriving-soon warehouse view
  • Jobs, change orders, and job cost
  • Field installation tickets
  • Crew and install scheduling
  • Document storage
  • Reporting, including a live WIP view
  • Google Chat inside the app, with threads, conversation filter, and file attachments
  • Search across records, limited by role
  • Role-based permissions across nine job roles

Stack

  • Next.js, React, TypeScript
  • PostgreSQL on Supabase, Drizzle ORM
  • Google Workspace sign-in (Auth.js)
  • Google Chat API (per-user connection)
  • Vercel hosting
  • pnpm monorepo, Vitest, test-first development
  • OpenSpec spec-driven workflow
  • AI coding agents (Claude Code) under spec and test gates, with a human signing off every release

Role of MyOS

The Hit Network build team sat in on screen-share walkthroughs of the client's old system, wrote each feature up as a spec before any code, built it test-first, and released it to production only after review and sign-off.

Sources

  • Role-based permissions across nine job roles Role permission map in the shipped app, checked against the build record on Sept 23, 2026. Describes the permission model, not how many client staff are set up.

See all work

Want a system like this running in your business?

Start with a 30-minute consultation. You leave knowing the three workflows AI should run first. If there is no fit, we say so plainly.