# Notify Bridge A generic bridge between service providers and notification targets. Notify Bridge monitors services (like Immich photo servers) for changes and dispatches notifications to configurable targets (Telegram, webhooks) using customizable templates. ## Architecture - **Service Providers** — Connectors to external services (Immich, more coming) - **Trackers** — Monitor specific collections within a provider for changes - **Tracking Configs** — Define what events to watch for and scheduling rules - **Notification Targets** — Where to send notifications (Telegram chats, webhook URLs) - **Template Configs** — Jinja2 templates that format notifications per provider type ## Project Structure ``` packages/ core/ — Shared library: providers, models, notifications, templates server/ — FastAPI REST server with SQLite database frontend/ — SvelteKit dashboard (Svelte 5, Tailwind CSS v4) ``` ## Quick Start ```bash # Backend cd packages/server pip install -e . NOTIFY_BRIDGE_DATA_DIR=./test-data NOTIFY_BRIDGE_SECRET_KEY=your-secret-key-min-32chars \ python -m uvicorn notify_bridge_server.main:app --host 0.0.0.0 --port 8420 # Frontend cd frontend npm install npm run dev ``` ## Supported Providers - **Immich** — Photo/video server with album change detection