Initial vault setup
This commit is contained in:
@@ -0,0 +1,131 @@
|
||||
---
|
||||
title: Hook0
|
||||
created: 2026-06-08
|
||||
updated: 2026-06-08
|
||||
type: app
|
||||
tags: [catalogue, webhooks, events, integration, rust, app-marathon3-rattrapage-a]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [https://selfh.st/apps/?tag=Webhooks, https://hook0.com/]
|
||||
---
|
||||
|
||||
# 🪝 Hook0
|
||||
|
||||
> **Webhook-as-a-Service open source** : récepteur de webhooks multi-source, gestion d'abonnements, retries, signature HMAC, et logs d'événements.
|
||||
|
||||
## 📋 Informations Générales
|
||||
|
||||
| Champ | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | [hook0.com](https://hook0.com) |
|
||||
| **GitHub** | [hook0/hook0](https://github.com/hook0/hook0) |
|
||||
| **License** | MIT |
|
||||
| **Langage** | Rust |
|
||||
| **Étoiles GitHub** | 0.5k ⭐ |
|
||||
| **Catégorie** | [[cat-webhooks|Webhooks]] |
|
||||
|
||||
## 📝 Description
|
||||
|
||||
**Hook0** est un projet français (Tindalos, 2022) qui propose une **plateforme de gestion de webhooks** open source. Il sépare la production d'événements (vos services) de leur consommation (vos intégrations), avec gestion des retries et des erreurs.
|
||||
|
||||
Fonctionnalités :
|
||||
- ✅ **Abonnements aux webhooks** : par service et type d'événement
|
||||
- ✅ **Signature HMAC** : vérification d'intégrité
|
||||
- ✅ **Retries automatiques** : backoff exponentiel
|
||||
- ✅ **Logs d'événements** : tous les deliveries
|
||||
- ✅ **Dashboard web** : monitoring temps réel
|
||||
- ✅ **API REST** : intégration programmatique
|
||||
- ✅ **OIDC** : support authentification
|
||||
- ✅ **Multi-tenant** : séparation par organisation
|
||||
- ✅ **TypeScript SDK** : émetteur de webhooks
|
||||
- ✅ **Haute performance** : backend Rust
|
||||
|
||||
**Différence vs solutions custom** : Hook0 = solution prête à l'emploi, pas besoin de coder l'orchestration, retries, signature, logs. Une seule brique à maintenir.
|
||||
|
||||
**Pour qui** : équipes SaaS qui envoient des webhooks à leurs clients, plateformes d'intégration, projets qui consomment des webhooks tiers en grand nombre.
|
||||
|
||||
## 🚀 Installation
|
||||
|
||||
### Docker Compose (recommandé)
|
||||
|
||||
```yaml
|
||||
version: '3.8'
|
||||
services:
|
||||
hook0:
|
||||
image: hook0/hook0:latest
|
||||
container_name: hook0
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- HOOK0_DB_HOST=db
|
||||
- HOOK0_DB_NAME=hook0
|
||||
- HOOK0_DB_USER=hook0
|
||||
- HOOK0_DB_PASSWORD=*** - HOOK0_OIDC_ISSUER=https://authentik.example.com
|
||||
- HOOK0_OIDC_CLIENT_ID=hook0
|
||||
- HOOK0_OIDC_CLIENT_SECRET=*** - HOOK0_URL=https://hook0.example.com
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.hook0.rule=Host(`hook0.example.com`)"
|
||||
- "traefik.http.routers.hook0.tls.certresolver=letsencrypt"
|
||||
depends_on:
|
||||
- db
|
||||
|
||||
db:
|
||||
image: postgres:15-alpine
|
||||
container_name: hook0-db
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- POSTGRES_USER=hook0
|
||||
- POSTGRES_PASSWORD=*** - POSTGRES_DB=hook0
|
||||
volumes:
|
||||
- hook0_db:/var/lib/postgresql/data
|
||||
|
||||
hook0-worker:
|
||||
image: hook0/hook0:latest
|
||||
container_name: hook0-worker
|
||||
restart: unless-stopped
|
||||
command: ["./hook0", "worker"]
|
||||
environment:
|
||||
- HOOK0_DB_HOST=db
|
||||
- HOOK0_DB_NAME=hook0
|
||||
- HOOK0_DB_USER=hook0
|
||||
- HOOK0_DB_PASSWORD=*** depends_on:
|
||||
- db
|
||||
|
||||
volumes:
|
||||
hook0_db:
|
||||
```
|
||||
|
||||
## 🔄 Alternatives
|
||||
|
||||
### Open Source
|
||||
- [[app-webhook]] — récepteur simple
|
||||
- [[app-convoy]] — webhooks delivery reliability
|
||||
- **Svix** — équivalent commercial open core
|
||||
- **Knative Eventing** — plateforme d'événements K8s
|
||||
- **NATS** — messaging system
|
||||
- **EventCloud** — pub/sub
|
||||
|
||||
### Propriétaires
|
||||
- **Svix Cloud** — hosted commercial
|
||||
- **AWS EventBridge** — service AWS
|
||||
- **Zapier Webhooks** — no-code
|
||||
- **IFTTT** — automatisation grand public
|
||||
|
||||
## 🔐 Sécurité
|
||||
- **Signature HMAC SHA-256** : authentification des payloads
|
||||
- **OIDC** : authentification UI et API
|
||||
- **Rate limiting** : protection contre flood
|
||||
- **HTTPS obligatoire** : TLS pour webhooks
|
||||
- **Audit log** : tous les événements tracés
|
||||
- **Sandboxing** : validation payloads
|
||||
- **Mises à jour Rust** : sécurité mémoire native
|
||||
|
||||
## 📚 Ressources
|
||||
- [Documentation](https://docs.hook0.com/)
|
||||
- [GitHub](https://github.com/hook0/hook0)
|
||||
- [Démo](https://www.hook0.com/)
|
||||
|
||||
## Pages Liées
|
||||
- [[cat-webhooks]] — Catégorie Webhooks
|
||||
- [[app-convoy]] — Delivery reliability
|
||||
- [[recettes-docker-compose]] — Templates Docker
|
||||
Reference in New Issue
Block a user