pipeworks_mud_mapper.layout

Layout components for PipeWorks MUD Mapper.

This module provides the UI structure (Dash components) for the mapper application. Layout modules define the visual structure while callbacks in the callbacks/ module handle interactivity.

Architecture

The application uses a three-column layout plus action bar:

┌─────────┬─────────────────────────┬───────────┐
│  File   │       Map Panel         │  Room     │
│ Browser │        (7/12)           │Properties │
│  (2/12) │─────────────────────────│  (3/12)   │
│         │   LLM Assistant (Ollama)│           │
└─────────┴─────────────────────────┴───────────┘
│             Action Bar (Save, Status)         │
└───────────────────────────────────────────────┘

Module Layout

file_browser

Left column file list and “New Map” button.

map_panel

Center column with Plotly map and Z-level selector.

ollama_panel

Center column LLM Assistant for generating room descriptions.

properties_panel

Right column room editing form with coordinates and exits.

action_bar

Bottom bar with Validate, Export, Save buttons and status indicator.

main_layout

Assembles all components into the complete application layout.

Usage

Import and use in app.py:

from pipeworks_mud_mapper.layout import create_app_layout

app.layout = create_app_layout()

Or import individual components:

from pipeworks_mud_mapper.layout import (
    create_file_browser,
    create_map_panel,
    create_ollama_panel,
    create_properties_panel,
    create_action_bar,
)

See also

-, -, -

Submodules