Skip to content

Operations · App Starter

Inventory Template

A working inventory system — stock ledger, reorder alerts, PO receiving — generated into a codebase you own.

Describe what you stock and where, and Dual7 generates this inventory app around it: six connected entities, a movement-level stock ledger, and purchasing, shipped as a real full-stack app. Add a location, a unit of measure, or a whole costing method — it's your code, not a per-user license.

  • 6 core entities
  • Movement-level ledger
  • Code you own
  • Vibe + Governed modes

01 · Data model

What's inside: the data model

Inventory software is only as trustworthy as its ledger. This starter generates six connected entities, and every quantity on every screen is computed from recorded movements — no mystery counters to drift out of sync.

tablewhat it holds
itemsEverything you stock — SKU, unit of measure, cost, and current quantity per warehouse, derived from movements.
warehousesPhysical locations that hold stock — a back room, a 3PL, a van — each with its own on-hand view.
stock_movementsThe append-only ledger: every receipt, sale, transfer, and adjustment as a signed, timestamped row.
suppliersWho you buy from — contacts, lead times, and per-item pricing that feeds purchase order defaults.
purchase_ordersOrders out to suppliers with line items, expected dates, and a receiving status per line.
reorder_rulesPer-item, per-warehouse minimums and order quantities — the thresholds that drive reorder alerts.

02 · Screens

Signature modules

Stock ledger

01

On-hand quantity is never a number someone typed — it's the sum of movements. That means every count is auditable: click any quantity and see the receipts, sales, transfers, and adjustments that produced it, with who and when on each row.

Reorder alerts

02

When an item drops below its rule for a warehouse, it lands on the reorder screen with the suggested quantity and preferred supplier pre-filled. One review pass turns the list into draft purchase orders instead of a walk through the stockroom with a clipboard.

PO receiving

03

Receive against the order, line by line — partial deliveries, over-shipments, and rejections are normal states, not edge cases. Each received line writes a movement, so the ledger and the supplier's paperwork reconcile by construction.

Transfers

04

Move stock between warehouses with a paired out-and-in movement that can't half-complete. In-transit quantity is visible the whole way, which ends the classic argument about whether the missing pallet left or never arrived.

03 · Process

How it works

  1. 1You

    Describe what you stock

    Tell Dual7 what you carry, where it lives, and how you buy — units, locations, suppliers, and what running out actually costs you. Plain language is enough.

  2. 2Vibe mode

    Generate and shape it in Vibe mode

    Get the working system in minutes, then adjust conversationally: add a bin-location field, a second unit of measure, or a landed-cost calculation. Every change is real code you can read.

  3. 3Governed mode

    Deploy through the governed pipeline

    When the counts have to be trusted, ship through Dual7's approval gates to your own infrastructure — audit trail included, stock data in your database from day one.

04 · Fit

Who the Inventory starter is for

Operations managers leaving the shared spreadsheet

The stock sheet works until two people edit it during the same delivery. This starter keeps the columns you already track but adds the thing a spreadsheet can't: a movement history that explains every number, so shrinkage becomes a question with an answer.

Ecommerce sellers syncing more than one channel

When the same 400 SKUs sell in three places, inventory truth has to live somewhere neutral. Own the ledger, and each channel becomes an integration writing movements into your schema — not another dashboard claiming to be the source of record.

Wholesalers and distributors on per-user pricing

Warehouse software priced per login punishes exactly the teams who need everyone counting. With a generated codebase there's no seat math — pickers, receivers, and bookkeepers all work from the same tables at the cost of running your own app.

Builders replacing a module they only half use

Big ERP suites bundle inventory with accounting, MRP, and a decade of settings. If stock control is the part you actually need, generate just that — sized to your operation, extendable the day your operation changes.

05 · Yours

Customize it, own it

Make it yours

The generated schema is a starting point with opinions, not a cage. Rename items to products, materials, or parts and the screens follow. Add fields conversationally in Vibe mode — batch numbers, bin locations, a hazmat flag, a second currency on supplier pricing — and both the ledger and the reports pick them up.

Bigger moves are still just edits to your code: add a sales-order entity to reserve stock before it ships, wire a barcode scanner into receiving, or compute FIFO costing from the movement history you already have. The output is a normal full-stack codebase with no runtime dependency on Dual7, so your team can extend it directly.

Why a starter, not a subscription

Inventory data is operational memory — what you paid, what you lost, what moved where. Renting that memory from a subscription tool means your own stock history sits behind someone else's API limits and export formats. This starter generates the schema, screens, and rules as source code in your repository, running on your infrastructure with the ledger in your database.

The honest trade is that you operate the app instead of a vendor. Dual7's governed pipeline exists to make that safe for systems where wrong numbers cost money: approval gates before changes ship, an audit trail of what changed, and regeneration when you want to restructure rather than patch.

06 · Industries

Industry versions

Inventory template — frequently asked questions

What do I get when I start from this inventory template?

A working full-stack inventory system generated into a codebase you own: items, warehouses, suppliers, purchase orders, reorder rules, and an append-only movement ledger, with screens for receiving, transfers, and reorder alerts. It runs on your infrastructure with stock data in your database.

Can it handle multiple warehouses and locations?

Yes — warehouses are a first-class entity, every movement is tied to one, and reorder rules are set per item per warehouse. Transfers between locations are paired movements, so in-transit stock is visible and the totals always reconcile.

How are stock counts kept accurate?

Quantities are computed from the movement ledger rather than stored as editable numbers. Corrections happen as adjustment movements with a reason and an author, so a physical count that disagrees with the system becomes a recorded event you can report on — not a silent overwrite.

Does it support barcode scanning?

The starter ships keyboard-and-click screens, and adding scanning is a normal extension: a scan is just a fast way to look up an item and post a movement. Because you own the code, a USB or camera scanner wires into receiving and picking without waiting on a vendor roadmap.

Can I import my current stock levels and suppliers?

Yes — the schema is standard relational tables, so items, suppliers, and open POs load from CSV, and your starting quantities enter as opening-balance movements. That keeps day-one counts auditable the same way every later count is.

Related

Shankar Prabhu, Founder & CEO of Dual7
Published by Shankar Prabhu, Founder & CEO

Dual7 App Starters

Build your Inventory on your terms

A working inventory system — stock ledger, reorder alerts, PO receiving — generated into a codebase you own. Describe your version to start — the output is a project you own.