Documentation Index
Fetch the complete documentation index at: https://docs.chataigne.ai/llms.txt
Use this file to discover all available pages before exploring further.
Châtaigne est une plateforme qui transforme WhatsApp en solution complète de
commande par language naturel pour les restaurants.
Principes Architecturaux Fondamentaux
Domain-Driven Design
Séparation claire entre la logique métier et les détails techniques
Clean Architecture
Structure en couches concentriques pour une meilleure organisation
Event-Driven
Architecture orientée événements pour un découplage optimal
1. Domain-Driven Design (DDD)
Notre architecture suit les principes du Domain Driven Design pour maintenir une séparation claire entre la logique métier et les détails techniques. Cela nous permet de :Isoler le domaine métier des détails d’implémentation
Faciliter l’ajout et la modification des différentes intégrations sans
impacter le cœur métier
Maintenir une cohérence dans le traitement des commandes à travers différents
canaux
2. Clean Architecture
L’application est structurée en plusieurs couches concentriques :3. Event-Driven
Notre système est fortement orienté événements afin de découpler la logique de chaque intégration en réaction à certains évenements :Stack Technique
Technologies Principales
Framework
NestJS (Node.js)
Base de données
PostgreSQL avec Prisma ORM
Message Queue
Redis/BullMQ
Cache
Redis
API Documentation
OpenAPI/Swagger
Intégrations Principales
Messaging
WhatsApp Business API via 360Dialog
Paiement
Stripe
POS
Hubrise
Livraison
Uber Direct, Shipday
Impression
Expedy
Principes de Design Clés
Modularité
• Chaque intégration est isolée dans son propre module• Les adaptateurs permettent de modifier les classes domaine en classe adaptée à chaque intégration
Résilience
• Gestion des erreurs standardisés• Retry patterns pour les appels externes• Queue de messages pour les opérations asynchrones lourdes en ressources/temps
Scalabilité
• Architecture modulaire• Interface claires pour les fonctionnalités stratégiques permettant de remplacer facilement l’intégration• Interface claire des intégrations de Messaging pour un switch simple entre Whatsapp et Instagram