Skip to content

Repository files navigation

FromEdwin Monitor

A comprehensive, out-of-the-box monitoring solution with a no-code web interface

FromEdwin Monitor is a highly opinionated implementation of open-source monitoring tools, unified through an intuitive web interface. Built for teams who want enterprise-grade monitoring without the complexity.

Build Status Documentation Status License: MIT

✨ Features

  • 🔍 Availability Monitoring - Track website uptime and service availability
  • 📊 Performance Insights - Monitor response times and performance metrics
  • 🚨 Intelligent Alerting - Get notified when issues occur
  • 📈 Visual Dashboards - Beautiful, intuitive monitoring dashboards
  • 🔧 No-Code Setup - Configure monitoring through a web interface
  • 🐳 Docker Ready - Deploy with a single command
  • 🔗 Integration Ready - Built-in support for popular monitoring tools

Upcoming Features

  • Performance monitoring and optimization insights
  • Statistical analysis and reporting
  • Budget tracking and cost optimization
  • Energy consumption monitoring

🚀 Quick Start

Prerequisites

  • uv (installs and manages Python)
  • Python 3.12+ (pinned via .python-version; tested with 3.14)
  • Docker & Docker Compose
  • Git

Installation

  1. Clone the repository

    git clone https://github.com/fromedwin/monitor.git
    cd monitor
  2. Install Python dependencies with uv

    uv sync

    This creates a local .venv and installs everything from pyproject.toml / uv.lock.

    Useful commands:

    uv run python src/manage.py migrate   # run Django management commands
    uv add <package>                      # add a dependency
    uv lock                               # refresh the lockfile after edits
    uv sync                               # install/sync the locked environment
  3. Start all services

    ./fromedwin start

    The script will automatically create a .env file with default values if one doesn't exist. You can customize the environment variables in the .env file as needed.

    Or alternatively:

    docker compose up -d
  4. Access the application

    open http://localhost:8000

That's it! Your monitoring system is now running locally.

API authentication

The REST API at /api/v1/ accepts ShellUI JWT tokens only (Authorization: Bearer <token>). Tokens are issued by the ShellUI identity service (default: id.shellui.com).

Configure these environment variables in .env:

Variable Description
SHELLUI_JWT_ORIGIN Identity service URL (default: https://id.shellui.com; JWKS at {origin}/.well-known/jwks.json)
SHELLUI_JWT_ALGORITHMS Allowed JWT algorithms for JWKS verification (default: RS256,ES256,EdDSA)
SHELLUI_JWT_SECRET Optional legacy HS256 shared secret (only needed if not using JWKS)
CORS_ALLOWED_ORIGINS Comma-separated web app origins allowed to call the API

The web app sends the ShellUI accessToken to the backend. Set VITE_BACKEND_URL in the web app to point at this server (http://localhost:8000 in development, https://fromedwin.com in production).

🐳 Docker Management

The project includes a convenient script (fromedwin) to manage Docker services:

Start Services

./fromedwin start

This starts all Docker services (database, monitoring, worker, and main services) in detached mode.

Stop Services

./fromedwin stop

This stops all Docker services and cleans up containers.

📖 Documentation

Comprehensive documentation is available at fromedwin-monitor.readthedocs.io

Quick Links

Local Development

To run the documentation locally for development:

  1. Install dependencies (docs tooling is in the dev group, included by default):

    uv sync
  2. Start the local documentation server:

    uv run sphinx-autobuild ./docs ./docs/_build --port 8001
  3. Access local documentation at http://localhost:8001

The documentation will automatically rebuild when you make changes to the source files.

Contributing

We welcome contributions! Please see our Contributing Guide for details.

🤝 Community

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

Special thanks to the open-source projects that make FromEdwin Monitor possible:

  • Lighthouse Viewer - Performance visualization
  • Django, Prometheus, Grafana, and the entire open-source monitoring ecosystem

Made with ❤️ by the FromEdwin team

About

No code Prometheus setup for instance down monitoring

Topics

Resources

Code of conduct

Contributing

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages