Inventory and collections
An example app for item records, quantities, relationships, photos, search, and atomic stock adjustments.
Example app Built from planned modules. Not a customer. Not a supported app today.
Illustrative rule: stock never drops below zero
| 1 | modules: | |
| 2 | +Added | data: |
| 3 | +Added | items: |
| 4 | +Added | owner: user |
| 5 | +Added | fields: |
| 6 | +Added | name: text |
| 7 | +Added | quantity: integer |
| 8 | +Added | constraints: |
| 9 | +Added | quantity: ">= 0" |
| 10 | +Added | rules: |
| 11 | +Added | adjust_stock: |
| 12 | +Added | on: stock.changed |
| 13 | +Added | apply: atomic_add(quantity) |
| 14 | +Added | reject_if: result < 0 |
Placeholder values and unfinished syntax. Not a released feature.
What is the Inventory and collections example app?
A user catalogs what they own or sell. Each item has a name, a quantity, a location, and photos. Items are grouped, tagged, and related to one another, such as a part that belongs to a kit. The user searches the list and adjusts counts as things come and go.
This category is a design target. It is not a claim that Edict already supports a complete inventory app.
What backend does the Inventory and collections example need?
- Item records.
- Quantities.
- Relationships.
- File storage.
- Search.
- Atomic inventory adjustments.
How do the planned modules compose in the Inventory and collections example?
The database is designed to hold items and their relationships, with constraints that keep data valid, such as a quantity that cannot be negative. Authentication is designed to make the catalog private to its owner, or shared if the owner allows it.
Atomic adjustment is the point of this example. If two devices change the same count at once, a naive read-then-write can lose one change. Business logic and the database are designed to apply each adjustment as a single atomic step and reject one that would break a constraint. Files is designed to store item photos with the same ownership as the item.
What would an illustrative rule look like in the Inventory and collections example?
The configuration above keeps a quantity at zero or above and applies each change atomically. The key names and syntax are placeholders and are not final.
What is example and what is planned in the Inventory and collections example?
All modules named here are planned and in development. Search is on the list of backend needs, but the planned depth of search is not specified, so this page makes no claim about search quality. Your app owns the item model, the units, and the reports, and complex reporting may need your own queries. Barcode scanning and any marketplace or shipping integration are outside this plan and are not shown as active.
See the Database and Business logic module pages for the planned design. Join the beta waitlist to follow progress.
Which examples are similar to Inventory and collections?
These share the most modules with this one.
Get an invitation when the beta opens.
Joining gets you email updates while Edict is built, and an invitation to the hosted beta when it opens.
Building now. No launch date yet.
Join the beta waitlist
Open the signup form on KitEdict is in development. Joining does not create an account or start a trial.