# Resource Types (https://yapl.app/en/docs/user-guides/resources/resource-types)

# Resource Types

YAPL supports four main resource types, each designed for different tracking needs. Understanding these types helps you organize resources effectively.

## Overview of Types

| Type            | Description             | Tracking Method         |
| --------------- | ----------------------- | ----------------------- |
| **Person**      | Human resources (labor) | Time-based (hours/days) |
| **Equipment**   | Reusable assets         | Time-based (hours/days) |
| **Materials**   | Physical goods          | Quantity-based (units)  |
| **Consumables** | Single-use items        | Quantity-based (units)  |

## Person (Labor)

Person resources represent human labor assigned to tasks.

### Characteristics

| Property     | Description                  |
| ------------ | ---------------------------- |
| Time-based   | Allocated by hours or days   |
| Skillset     | Track capabilities and roles |
| Availability | Work schedules and capacity  |
| Cost         | Hourly or daily labor rates  |

### Examples

- Project managers
- Engineers and architects
- Labor workers
- Supervisors
- Subcontractors

### Person Fields

| Field       | Description            | Required |
| ----------- | ---------------------- | -------- |
| Name        | Person's name          | Yes      |
| Code        | Employee/contractor ID | Optional |
| Hourly Rate | Labor cost per hour    | Optional |
| Daily Rate  | Labor cost per day     | Optional |
| Status      | Active/Inactive        | Yes      |
| Description | Role and skills        | Optional |

### Tracking Labor

Person resources are tracked by:

- **Availability** - Work schedule and capacity
- **Utilization** - Hours assigned vs. available
- **Cost** - Labor rate multiplied by time
- **Skills** - Matching capabilities to tasks

## Equipment

Equipment represents reusable assets that are allocated by time.

### Characteristics

| Property    | Description                     |
| ----------- | ------------------------------- |
| Reusable    | Used repeatedly across projects |
| Time-based  | Allocated by hours or days      |
| Schedulable | Can detect conflicts            |
| Depreciable | Track value over time           |

### Examples

- Heavy machinery (excavators, cranes, bulldozers)
- Vehicles (trucks, vans, forklifts)
- Tools (power tools, scaffolding)
- Technology (computers, tablets, surveying equipment)

### Equipment Fields

| Field       | Description          | Required |
| ----------- | -------------------- | -------- |
| Name        | Equipment identifier | Yes      |
| Code        | Unique code          | Optional |
| Hourly Rate | Cost per hour        | Optional |
| Daily Rate  | Cost per day         | Optional |
| Status      | Active/Inactive      | Yes      |
| Description | Details and notes    | Optional |

### Tracking Equipment

Equipment is tracked by:

- **Availability** - When equipment is free vs. allocated
- **Utilization** - Hours/days used vs. available
- **Cost** - Rate multiplied by allocation time
- **Location** - Where equipment is assigned

## Materials

Materials represent physical goods consumed or incorporated into projects.

### Characteristics

| Property       | Description             |
| -------------- | ----------------------- |
| Quantity-based | Tracked by units        |
| Consumable     | Used up during projects |
| Inventory      | Track stock levels      |
| Costed         | Price per unit          |

### Examples

- Materials (concrete, steel, lumber)
- Electrical supplies (wiring, fixtures)
- Plumbing materials (pipes, fittings)
- Finishing materials (paint, flooring)

### Material Fields

| Field       | Description         | Required |
| ----------- | ------------------- | -------- |
| Name        | Material name       | Yes      |
| Code        | SKU or product code | Optional |
| Unit        | Measurement unit    | Yes      |
| Unit Cost   | Price per unit      | Optional |
| Status      | Active/Inactive     | Yes      |
| Description | Specifications      | Optional |

### Measurement Units

Common units for materials:

- **Volume**: cubic meters, cubic yards, gallons, liters
- **Weight**: kilograms, pounds, tons
- **Length**: meters, feet, linear feet
- **Area**: square meters, square feet
- **Count**: pieces, units, each

### Tracking Materials

Materials are tracked by:

- **Quantity** - Units allocated to tasks
- **Cost** - Unit price multiplied by quantity
- **Inventory** - Available stock levels
- **Usage** - Planned vs. actual consumption

## Consumables

Consumables are single-use items that support project execution.

### Characteristics

| Property      | Description                       |
| ------------- | --------------------------------- |
| Single-use    | Not returned after use            |
| Supporting    | Enable work but not incorporated  |
| Replenishable | Regularly restocked               |
| Lower value   | Typically less expensive per unit |

### Examples

- Safety equipment (gloves, masks, vests)
- Fuel and lubricants
- Cleaning supplies
- Office supplies
- Disposable tools (blades, bits)

### Consumable Fields

| Field       | Description         | Required |
| ----------- | ------------------- | -------- |
| Name        | Consumable name     | Yes      |
| Code        | Product code        | Optional |
| Unit        | Package/measurement | Yes      |
| Unit Cost   | Price per unit      | Optional |
| Status      | Active/Inactive     | Yes      |
| Description | Details             | Optional |

### Tracking Consumables

Consumables are tracked by:

- **Usage Rate** - Consumption over time
- **Reorder Level** - When to restock
- **Cost** - Ongoing expense tracking
- **Allocation** - Assignment to tasks/projects

## Choosing the Right Type

### Decision Guide

| If the resource...                | Use Type            |
| --------------------------------- | ------------------- |
| Is a human worker/laborer         | Person              |
| Is reused across projects         | Equipment           |
| Is measured by time allocation    | Person or Equipment |
| Is incorporated into deliverables | Materials           |
| Is tracked by quantity units      | Materials           |
| Is single-use and supporting      | Consumables         |
| Is regularly replenished          | Consumables         |

### Examples by Type

| Resource       | Type        | Reason                     |
| -------------- | ----------- | -------------------------- |
| Site Manager   | Person      | Human labor, time-based    |
| Electrician    | Person      | Human labor, skilled trade |
| Excavator      | Equipment   | Reused, time-based         |
| Concrete       | Materials   | Quantity, incorporated     |
| Diesel fuel    | Consumables | Single-use, supporting     |
| Steel beams    | Materials   | Quantity, incorporated     |
| Safety helmets | Consumables | Supporting, replaced       |
| Scaffolding    | Equipment   | Reused, time-based         |

## Type-Specific Features

### Person Features

- Work schedule management
- Availability tracking
- Skill matching
- Labor cost calculation
- Utilization reports

### Equipment Features

- Calendar-based scheduling
- Conflict detection
- Maintenance tracking (future)
- Depreciation calculation (future)

### Material Features

- Inventory management
- Quantity tracking
- Waste calculation
- Supplier information (future)

### Consumable Features

- Usage rate tracking
- Reorder notifications (future)
- Bulk allocation
- Cost allocation

## Converting Between Types

Resources cannot be converted between types after creation. If you need to change a resource's type:

1. Create a new resource with correct type
2. Update task assignments
3. Deactivate the old resource

<Callout type="warn">
  Choose resource types carefully during creation. Type conversion requires creating a new resource.
</Callout>

## Best Practices

### Consistent Classification

- Establish type guidelines for your organization
- Document classification rules
- Train team on proper categorization

### Naming Conventions

By type:

- **Equipment**: Include model/serial (e.g., "Excavator CAT-320-01")
- **Materials**: Include specifications (e.g., "Concrete Mix 4000PSI")
- **Consumables**: Include size/type (e.g., "Safety Gloves - Large")

### Cost Tracking

- Set rates for all equipment
- Update material costs regularly
- Track consumable expenses

## Related Topics

- [Creating Resources](/docs/user-guides/resources/creating-resources) - Add new resources
- [Resource Groups](/docs/user-guides/resources/resource-groups) - Organize resources
- [Assigning Resources](/docs/user-guides/resources/assigning-resources) - Allocate to tasks