# {{ lab_name | replace("_", " ") | title }}

{{ lab_description }}

Generated by MADSci template: `lab/standard` v{{ template_version }}

## Overview

This is a standard MADSci lab with all manager services running via Docker Compose.

### Services

| Service | Port | Description |
|---------|------|-------------|
| Lab Manager (Squid) | 8000 | Central lab configuration and dashboard |
| Event Manager | 8001 | Distributed event logging and querying |
| Experiment Manager | 8002 | Experiment tracking and management |
| Resource Manager | 8003 | Resource and inventory tracking |
| Data Manager | 8004 | Data capture and storage |
| Workcell Manager | 8005 | Workflow coordination and scheduling |
| Location Manager | 8006 | Location and spatial management |

### Infrastructure

| Service | Port | Description |
|---------|------|-------------|
| PostgreSQL | 5432 | Relational database for Resource Manager |
| MongoDB | 27017 | Document database for other managers |
| Redis | 6379 | Message queue and caching |

## Quick Start

```bash
# Start all services
madsci start
# or
docker compose up -d

# Check service health
madsci status

# Stop all services
madsci stop
# or
docker compose down
```

## Configuration

Default settings live in `settings.yaml` (safe to commit to git).
Secrets and credentials go in `.env` (gitignored).
Environment variables override both files.

Edit `settings.yaml` to customize ports, database names, and other non-secret settings.
Edit `.env` to set database credentials and other secrets.

## Workflows

Place workflow YAML files in the `workflows/` directory. Example:

```bash
madsci run workflow workflows/example.workflow.yaml
```

## Documentation

For more information, see the [MADSci documentation](https://ad-sdl.github.io/MADSci/).
