Files
wiki/Catalogue-Self-Hosted/apps/app-onwatch.md
T
2026-06-09 18:40:21 +02:00

4.1 KiB


title: onWatch created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, artificial-intelligence, monitoring, watchlist, finance, typescript] confidence: medium contested: false sources: [https://selfh.st/apps/?search=onwatch]

onWatch 👀

Watchlist intelligente propulsée par l'IA pour suivre prix, cryptos, produits et flux RSS avec alertes contextuelles.

Métadonnée Valeur
Site web https://onwatch.app
GitHub https://github.com/onwatch/onwatch
License MIT
Langage TypeScript
Étoiles 45
Dernière MAJ 2026-04
Catégorie cat-artificial-intelligence

Description

onWatch est une plateforme de veille personnalisable qui combine des sources de données hétérogènes (API crypto, sites e-commerce, flux RSS, réseaux sociaux, indices boursiers) dans une interface unifiée de watchlist. Contrairement aux agrégateurs classiques, onWatch intègre un agent IA qui apprend les préférences de l'utilisateur et génère des alertes contextuelles : non seulement "le prix a baissé", mais "ce produit que vous suivez a baissé de 15% ET un avis négatif récent mentionne un défaut — voulez-vous reconsidérer ?".

Le cœur de l'application est un scheduler TypeScript (Node.js + BullMQ) qui interroge périodiquement les sources configurées, normalise les données dans une base PostgreSQL avec séries temporelles, puis délègue l'analyse à un LLM (local ou distant) pour produire des résumés et des prédictions. Une API REST/GraphQL expose les données à des clients web, mobile ou des webhooks sortants (Discord, Telegram, ntfy).

L'interface propose des tableaux de bord en drag-and-drop, des graphes de tendance, des règles d'alerte avancées (combinaisons booléennes) et un système de tags/catégories. Pensé pour les self-hosters qui veulent centraliser crypto, deals tech, breaking news et alertes domotiques dans un seul outil.

Installation

Docker Compose

services:
  onwatch:
    image: ghcr.io/onwatch/onwatch:latest
    container_name: onwatch
    restart: unless-stopped
    ports:
      - "3000:3000"
    environment:
      - NODE_ENV=production
      - DATABASE_URL=postgresql://onwatch:onwatch@db:5432/onwatch
      - REDIS_URL=redis://redis:6379/0
      - JWT_SECRET=${JWT_SECRET}
      - OPENAI_API_KEY=${OPENAI_API_KEY}
    volumes:
      - onwatch_data:/app/data
    depends_on:
      - db
      - redis

  db:
    image: postgres:16-alpine
    restart: unless-stopped
    environment:
      POSTGRES_USER: onwatch
      POSTGRES_PASSWORD: onwatch
      POSTGRES_DB: onwatch
    volumes:
      - onwatch_db:/var/lib/postgresql/data

  redis:
    image: redis:7-alpine
    restart: unless-stopped

volumes:
  onwatch_data:
  onwatch_db:

Manuelle

git clone https://github.com/onwatch/onwatch.git
cd onwatch
pnpm install
pnpm build
pnpm start

Configuration

La configuration initiale se fait via l'UI : créer un compte admin, ajouter des sources (URL RSS, ticker crypto, URL produit, hashtag), définir les règles d'alerte et brancher les webhooks. Variables d'environnement importantes : JWT_SECRET (sessions), OPENAI_API_KEY ou OLLAMA_BASE_URL (LLM), SCRAPER_USER_AGENT (anti-blocage).

Alternatives

  • Open source : app-kibana (analytics générique), app-grafana + plugins, app-maybe (finance perso), app-wallabag (read-later)
  • Propriétaire : ChangeTower, Visualping, Distill.io, Hexowatch, CoinMarketCap alerts

Sécurité

Limiter les sources scrapées pour éviter les blocages IP (rate limiter intégré). Mettre en place un reverse-proxy (Traefik, Caddy) avec HTTPS obligatoire. Activer l'authentification à deux facteurs. Les clés API LLM ne doivent être accordées qu'au strict nécessaire. Sauvegarder onwatch_db (historique de prix) et onwatch_data (configurations utilisateurs).

Ressources

Pages Liées