77 lines
1.8 KiB
Markdown
77 lines
1.8 KiB
Markdown
# Item
|
|
An item is the base concept for CDB. Everything is an Item. An Item describes a general product or object.
|
|
|
|
## Defining an Item
|
|
An Item is defined within a markdown file with frontmatter. Items are the root dataset of CDB. One can use [this](https://git.hydrar.de/red/itemdb) as a starting point or create their own items.
|
|
|
|
For example, we define a "Water" Item:
|
|
```markdown
|
|
---
|
|
name: "Water"
|
|
variants:
|
|
common:
|
|
name: "Common Water"
|
|
---
|
|
|
|
# Water
|
|
This is a Water Item
|
|
```
|
|
|
|
The file consist of the frontmatter, containing values for the item, and the rest of the markdown file containing a description.
|
|
|
|
## Variants
|
|
Variants are different version of the same item. Each variant can have their own values. Each item needs at least one variant.
|
|
|
|
For our water example:
|
|
```yml
|
|
name: "Water"
|
|
variant:
|
|
regular:
|
|
name: "Regular Water"
|
|
sparkling:
|
|
name: "Sparkling Water"
|
|
destilled:
|
|
name: "Destilled Water"
|
|
```
|
|
|
|
Here we have defined three "Water" item variants.
|
|
|
|
## Inventory
|
|
With the items defined, you can start tracking their inventory. See [Transaction](Transaction.md).
|
|
|
|
### Min
|
|
You can set a minimum required inventory for an item variant. This will trigger events when an item reaches a low inventory threshold.
|
|
|
|
```yml
|
|
name: "Water"
|
|
variants:
|
|
regular:
|
|
name: "Regular Water"
|
|
min: 2
|
|
```
|
|
|
|
This will ensure that at least two units of the "Regular Water" item variant are in inventory.
|
|
|
|
### Expiry
|
|
You can set a default expiry time for an Item Variant. This value is defined as days until expiry.
|
|
|
|
```yml
|
|
name: "Water"
|
|
variants:
|
|
regular:
|
|
name: "Regular Water"
|
|
expiry: 30
|
|
```
|
|
|
|
This will mark any item variant as expired if it's older than 30 days.
|
|
|
|
### Barcodes
|
|
You can associate barcodes with your item variants. This is useful for Quick Adding Items.
|
|
|
|
```yml
|
|
name: "Water"
|
|
variants:
|
|
regular:
|
|
name: "Regular Water"
|
|
barcodes: [12345678]
|
|
```
|