Standalone WebGUI addon for Meshing-Around Meshtastic BBS bot
Find a file
Matt 341e21dfe2 Rework README with AI transparency and cleaner structure
- Added AI-assisted development disclosure upfront
- Cleaner organization with horizontal separators
- Proper attribution to SpudGunMan and upstream
- Streamlined content while maintaining all info

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-30 11:17:44 -07:00
docs/screenshots Fix screenshots - convert from base64 text to actual PNG files 2025-11-30 10:42:05 -07:00
templates Initial commit - Meshing-Around WebGUI Standalone Addon 2025-11-30 01:29:33 -07:00
config_schema.py Initial commit - Meshing-Around WebGUI Standalone Addon 2025-11-30 01:29:33 -07:00
Dockerfile Initial commit - Meshing-Around WebGUI Standalone Addon 2025-11-30 01:29:33 -07:00
main.py Initial commit - Meshing-Around WebGUI Standalone Addon 2025-11-30 01:29:33 -07:00
README.md Rework README with AI transparency and cleaner structure 2025-11-30 11:17:44 -07:00
requirements.txt Initial commit - Meshing-Around WebGUI Standalone Addon 2025-11-30 01:29:33 -07:00
schedules.json Initial commit - Meshing-Around WebGUI Standalone Addon 2025-11-30 01:29:33 -07:00

Meshing-Around WebGUI (Standalone Addon)

A web-based configuration and monitoring interface for the Meshing-Around Meshtastic BBS bot.

Note: This project was developed with AI assistance using Claude (Anthropic). We believe in transparency about AI-assisted development.


About

This is the standalone addon version - drop it into your existing meshing-around installation without modifying core files.

For the full integrated version with Packet Monitor and node name resolution, see: Meshing-Around-WebGUI-Integrated


Features

Feature Status Notes
Dashboard Service status and quick stats
Radio Connections Configure up to 9 interfaces (Serial/TCP/BLE)
Scheduler Visual management of scheduled broadcasts
Mesh Nodes View all nodes on your mesh
BBS Network Track BBS peer sync status
System Logs Filterable log viewer with auto-refresh
Configuration Edit all config.ini sections
Leaderboard ⚠️ Shows hex IDs (names require integrated version)
Packet Monitor Requires integrated version

Screenshots

Note: Screenshots are from the integrated version. In this addon, the leaderboard displays hex node IDs instead of names.

Dashboard

Dashboard

Radio Connections

Radio Connections

Mesh Nodes

Mesh Nodes

Scheduler

Scheduler Custom Schedules

BBS Network

BBS Network

System Logs

System Logs

Configuration

General Settings BBS Config

Activity Log

Activity Log


Installation

1. Copy files to your meshing-around installation

# Clone this repo
git clone https://forge.echo6.co/matt/Meshing-Around-WebGUI.git

# Copy to your meshing-around directory
cp -r Meshing-Around-WebGUI/* /path/to/meshing-around/webgui/

2. Add to docker-compose.yml

Add this service to your compose.yaml or docker-compose.yml:

  meshing-webgui:
    build:
      context: ./webgui
      dockerfile: Dockerfile
    container_name: meshing-webgui
    restart: unless-stopped
    ports:
      - "8085:8085"
    volumes:
      - ./config.ini:/app/config.ini:ro
      - ./data:/app/data
      - ./logs:/app/logs:ro
      - ./webgui/schedules.json:/app/schedules.json
    environment:
      - CONFIG_PATH=/app/config.ini
      - DATA_PATH=/app/data
      - LOGS_PATH=/app/logs
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8085/health"]
      interval: 30s
      timeout: 10s
      retries: 3

3. Start the WebGUI

docker-compose up -d meshing-webgui

Access at: http://your-server:8085


Configuration Notes

The WebGUI reads your existing config.ini and displays current settings. All toggles, inputs, and dropdowns reflect your current configuration.

Scheduler Migration:

The WebGUI uses its own scheduler stored in schedules.json, separate from meshing-around's built-in [scheduler] section. If you have existing scheduled broadcasts in config.ini, recreate them in the WebGUI's Scheduler section.

WebGUI scheduler features:

  • Visual schedule management
  • Multiple message types (broadcast, DM, channel-specific)
  • Enable/disable individual schedules without deleting

Project Structure

webgui/
├── main.py              # FastAPI application
├── config_schema.py     # Configuration field definitions
├── Dockerfile           # Container build instructions
├── requirements.txt     # Python dependencies
├── templates/
│   └── index.html       # Single-page application (Tailwind CSS)
├── static/              # Static assets
└── schedules.json       # Scheduler data (created on first run)

Integrated Version

For full functionality including Packet Monitor and node names on leaderboard, use the integrated version:

The integrated version includes modifications to mesh_bot.py and modules/system.py for:

  • Real-time packet monitoring
  • Node name resolution on leaderboards
  • TCP hostname:port bug fix

Acknowledgments

Original Project

This addon is designed for SpudGunMan/meshing-around. All credit for the mesh bot goes to SpudGunMan and the meshing-around community.

This Addon

  • AI-assisted development using Claude (Anthropic)
  • Maintained by matt/zvx-echo6


License

MIT License - Same as meshing-around upstream.

Meshtastic® is a registered trademark of Meshtastic LLC.