# SOGOMS **Service Oriented GO MicroServices** - Plateforme SaaS modulaire multi-tenant. ## Vision SOGOMS est un framework backend léger en Go qui transforme un simple fichier de schéma YAML en API REST complète. Conçu pour héberger plusieurs applications SaaS sur une même infrastructure avec isolation totale des données. ``` schema.yaml → SOGOMS → API REST + Auth + CRUD + Push ``` ## Caractéristiques - **Léger** : binaires Go compilés (~10MB), pas de dépendances runtime - **Modulaire** : 1 fonctionnalité = 1 microservice - **Configurable** : SQL et routing en YAML, sans recompilation - **Sécurisé** : JWT, isolation par user_id, bcrypt - **Auto-supervisé** : health checks, restart automatique - **Temps réel** : push MQTT vers les applications (roadmap) - **Schema-driven** : génération d'API depuis la structure DB (roadmap) ## Services actuels | Service | Rôle | Statut | |---------|------|--------| | `sogoctl` | Superviseur, health checks | Stable | | `sogoway` | Gateway HTTP, auth JWT, CRUD | Stable | | `sogoms-db` | Accès MariaDB | Stable | | `sogoms-logs` | Logging centralisé | Stable | | `sogoms-smtp` | Envoi emails, templates | Stable | ## Roadmap | Phase | Service | Description | |-------|---------|-------------| | 11 | sogoms-crypt | Chiffrement données sensibles | | 12 | sogoms-imap/mailproc | Lecture et traitement emails | | 13 | sogoms-cron | Tâches planifiées | | 14 | sogoms-push | Push temps réel (MQTT) | | 15 | sogoms-schema | API auto-générée depuis schema | ## Applications | Application | Description | URL | |-------------|-------------|-----| | **Prokov** | Gestion de projets et tâches | prokov.unikoffice.com | ## Déploiement ```bash ./deploy.sh ``` ## Documentation - [Documentation technique](DOCTECH.md) - Architecture, API, configuration - [Roadmap](TODO.md) - Suivi des tâches et évolutions ## Prérequis - Go 1.22+ - MariaDB/MySQL - Container Linux (Alpine recommandé) ## Licence Propriétaire - Tous droits réservés