Marty Siksnis

Deler

Parts requests and orders for plumbing teams.

Deler lets workers request parts from their phones and gives project leaders a web dashboard for reviewing requests. Project leaders can adjust quantities, approve requests, and prepare orders to copy or export for a supplier.

I work as a plumber, so I’ve kept the request process short: find the part, choose a quantity, and send it. The project leader handles the review and ordering details.

  • My role: Independent product development across the web, mobile apps, and shared backend.
  • Platforms: Web, iOS, and Android.
  • Built with: React, Next.js, TypeScript, Supabase (PostgreSQL), and Stripe. Native apps: Swift (SwiftUI) and Kotlin (Jetpack Compose).
  • deler.app

Requesting parts

Deler on a phone: the hex nipple has been added with a badge showing 1, and a sheet titled Select quantity offers a grid of numbers from 1 to 32.
Deler on a phone: the request for Storgata 12 lists hex nipple, 20 pieces; elbow, 6 pieces; union, 1 piece. A Submit request button sits above the line Reviewed by Christian Halvorsen.
  1. Tap a part to add it, then tap its quantity to change it.
  2. Choose a quantity from the grid without opening the keyboard.
  3. Workers request the amount they need. The project leader can adjust it before ordering.
  4. Review the list and send it. The reviewer’s name appears below the button.

A worker selects parts and submits a request. Screenshots use demonstration data.

Reviewing a request

Deler on the web: Christian reviews three parts from Martin Nordmann, sent at 07:42. The hex nipple now reads 24 pieces. Each part shows an NRF number and buttons to approve or reject it.
  1. Requests show who sent them and when.
  2. The project leader can change quantities before approving. Deler records who made the change.
  3. NRF product numbers help identify the parts when ordering from Norwegian suppliers.

The project leader reviews the request in the web dashboard.

Preparing an order

Deler on the web: the Storgata 12 order, placed today at 07:48 by Christian Halvorsen, combines requests REQ-0246 and REQ-0247 into five parts, with Copy list and Export order buttons.
  1. Approved requests can be combined into one order.
  2. Copy the parts list, including NRF numbers.
  3. Export the order to send to a supplier.

An order prepared from two separate requests.

A shared backend

The web, iOS, and Android apps share a PostgreSQL backend for requests, approvals, and orders. Database functions handle the common rules, and permissions control which projects and records each person can access.

Keeping orders up to date

The Orders view uses Supabase Realtime to refresh when requests and orders change. Related database events are grouped into a refresh, avoiding a separate reload for every event.