Discovered already running and configured Apr 30, 2026. All 34 farm tables registered as collections with icons and display templates.
| URL | https://directus.edmd.me |
| Local | http://192.168.8.100:8055 |
| Container | directus/directus:latest on CT100 |
| Database | farmdb on 192.168.8.100:5432 (Directus stores its own metadata in directus_* tables in the same DB) |
| Login | doctor@edwarddelgrosso.com (changed from delgross@ on Apr 30) |
| Admin password | Stored in container env ADMIN_PASSWORD โ rotate and move to Vaultwarden |
| Volumes | /mnt/container-data/directus/{uploads,extensions,database} |
Directus connects to your existing PostgreSQL tables and presents them as editable collections in a polished admin UI. Unlike NocoDB, which is more spreadsheet-shaped, Directus is more form/admin-shaped โ better for:
- Editing one record at a time with proper field types
- Managing relationships between tables (foreign keys auto-detected)
- File uploads attached to records
- Role-based access if you want to give helpers read-only or limited-edit access
It does NOT replace your data โ it sits on top of farmdb. The Farm MCP server, direct psql, and any other tool see the same tables and the same edits.
All 34 farm tables registered. Top-level collections have proper icons, colors, display templates, and sort orders configured via the Directus API on Apr 30:
| Collection | Icon | Display Template |
|---|---|---|
| species | local_florist (green) | {{common_name}} ({{scientific_name}}) |
| plantings | yard (dark green) | {{species_id.common_name}} โ {{location_id.name}} |
| harvests | agriculture (yellow) | {{planting_id.species_id.common_name}} โ {{harvest_date}} |
| hives | hive (amber) | {{name}} |
| hive_inspections | inventory (amber) | {{hive_id.name}} โ {{inspection_date}} |
| locations | place (brown) | {{name}} |
| suppliers | store (blue) | {{name}} |
| inventory | inventory_2 (blue) | (default) |
| equipment | build (gray) | (default) |
| observations | visibility (purple) | sorted by observation_date |
| orders | shopping_cart (blue) | sorted by order_date |
| order_items | list (blue) | (default) |
| collections | collections (magenta) | {{name}} |
| species_collections | link (magenta) | (default) |
| species_images | image (green) | (default) |
The 19 species_* type-specific subtables (annual, aquatic, berry, biennial, bulb, cover_crop, fern, fruit_tree, grass, groundcover, herb, mushroom, nut_tree, perennial, rose, shrub, tree, vegetable, vine) are grouped under “species” in the navigation sidebar with the category icon, so they collapse together and don’t dominate the nav.
- Two UIs editing the same data: Directus and NocoDB both edit
farmdb. Don’t use them long-term simultaneously โ pick one after a few days of comparison. directus_*system tables infarmdb: 30 internal tables sit alongside your 14 farm tables. Mostly harmless but visible in any direct psql session.- Bootstrap email is in container env:
ADMIN_EMAIL=delgross@edwarddelgrosso.comis in the compose env but only matters for first-run user creation. The actual user record was updated todoctor@edwarddelgrosso.comvia API and is durable. If the database is ever wiped, the env var would recreate with the old email.
ADMIN_PASSWORD and DIRECTUS_KEY are exposed in the container’s environment variables. Both are also in chat history. Both should be rotated and moved to Vaultwarden.