Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

458 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wildeditor

Version: 0.4.31

Wildeditor is a browser-based editor for LuminariMUD wilderness data. It combines a React map editor, a FastAPI REST API, an MCP/JSON-RPC facade, and an optional AI chat service in one repository.

Project status: pre-release and under active development. Networked deployments require the documented self-hosted Auth, service credentials, private database boundaries, and operator controls.

What it does

  • Draws, edits, and deletes wilderness regions and paths in the -1024..1024 coordinate space.
  • Maps API payloads to strict shared TypeScript domain types.
  • Stores regions and paths as MySQL spatial POLYGON and LINESTRING values.
  • Manages region descriptions, hints, profiles, and review metadata.
  • Exposes wilderness operations as MCP tools, resources, and prompts.
  • Provides an optional chat assistant whose application-data access goes through MCP.

Architecture

React frontend (:5173) ────────────────> Backend API (:8000) ──> MySQL/MariaDB
        │                                      │
        │                                      └───────────────> MCP (:8001)
        └────> Chat agent (:8002) ─────────────> MCP (:8001) ──> Backend API
                  │
                  └────> memory or Redis session storage

React frontend ──> Supabase Auth (browser authentication)
Supabase Auth ──> PostgreSQL (identity only)

The service boundary is intentional: the chat agent calls MCP, and MCP calls the backend. See Architecture for ownership, trust boundaries, and data flow.

Repository layout

Path Responsibility
apps/frontend/ React 19, Vite, Tailwind CSS, and strict TypeScript UI
apps/backend/ FastAPI REST API and SQLAlchemy/GeoAlchemy MySQL access
apps/mcp/ FastAPI MCP/JSON-RPC facade and AI-assisted wilderness tools
apps/agent/ FastAPI chat/session service backed by MCP
packages/shared/ Shared frontend domain contracts
packages/auth/ Shared Python principals, JWT/service authentication, and MCP API-key authentication
docs/ Current documentation, ADRs, active plans, and archive

Quick start

Prerequisites

  • Node.js 26.6.0 and npm 12.0.2 (the versions pinned by .nvmrc and package.json)
  • Python 3.14 (service images currently use 3.14.6)
  • A MySQL-compatible LuminariMUD database with the expected wilderness tables

Install the JavaScript workspace and start the frontend:

nvm install
nvm use
npm install --global npm@12.0.2
npm ci
cp apps/frontend/.env.development.example apps/frontend/.env.local
npm run dev

The frontend expects a backend at http://localhost:8000/api. Configure the service-specific environment files and start the Python services separately; the complete commands are in Development setup.

Local service URLs:

Service URL
Frontend http://localhost:5173
Backend http://localhost:8000
Backend OpenAPI http://localhost:8000/docs
MCP http://localhost:8001
Chat agent http://localhost:8002

Validation

Run the smallest checks relevant to a change. The standard repository checks are:

npm run lint
npm run type-check
npm run build

PYTHONPATH=packages/auth/src python -m pytest -q packages/auth/tests
(cd apps/backend && PYTHONPATH=. python -m pytest tests/ -m "not integration" --tb=short)
(cd apps/mcp && PYTHONPATH=. python -m pytest tests/ --tb=short)

npm test currently invokes placeholder workspace scripts and is not meaningful test coverage. Root tests/ contains live-service and credential-dependent probes; run those only when their dependencies are explicitly in scope.

Documentation

Historical plans, completed migrations, incident notes, superseded deployment guides, and earlier status reports are retained under docs/archive/. They are not operational instructions.

License

MIT

About

A full-stack wilderness editor for LuminariMUD with advanced drawing tools, precision coordinate system, and real-time validation.

Resources

Contributing

Security policy

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages