Web

SocialCare-Hub

2026 loupix57 Actif
SocialCare-Hub

Plateforme SaaS travail social - microservices, digitalisation, React TypeScript, API Gateway

Technologies

ReactTypeScript

Documentation du projet

SocialCare Hub - Plateforme SaaS pour le Travail Social

🎯 Vision

SocialCare Hub est une solution SaaS unifiée et intégrée destinée aux travailleurs sociaux, permettant de digitaliser et optimiser l'ensemble du processus de travail social tout en maintenant l'aspect humain essentiel à ces métiers.

🏗️ Architecture Globale

Stack Technologique

  • Backend: Node.js avec Express.js + TypeScript
  • Frontend: React avec TypeScript + Material-UI
  • Base de données: PostgreSQL + Redis (cache)
  • Mobile: React Native
  • Cloud: AWS (ECS, RDS, S3, CloudFront)
  • Sécurité: OAuth 2.0, JWT, chiffrement end-to-end
  • APIs: REST + GraphQL

Architecture Microservices

┌─────────────────────────────────────────────────────────────┐
│                    FRONTEND LAYER                          │
├─────────────────────────────────────────────────────────────┤
│  React Web App  │  React Native App  │  Admin Dashboard   │
└─────────────────────────────────────────────────────────────┘
                              │
┌─────────────────────────────────────────────────────────────┐
│                   API GATEWAY                              │
│  Authentication │  Rate Limiting │  Request Routing        │
└─────────────────────────────────────────────────────────────┘
                              │
┌─────────────────────────────────────────────────────────────┐
│                 MICROSERVICES LAYER                        │
├─────────────────────────────────────────────────────────────┤
│ User Service │ Client Service │ Planning Service │          │
│              │                │                 │          │
│ Evaluation   │ Collaboration  │ Resources       │ Finance  │
│ Service      │ Service        │ Service         │ Service  │
│              │                │                 │          │
│ Analytics    │ Communication  │ Training        │ Mobile   │
│ Service      │ Service        │ Service         │ Service  │
└─────────────────────────────────────────────────────────────┘
                              │
┌─────────────────────────────────────────────────────────────┐
│                  DATA LAYER                                │
├─────────────────────────────────────────────────────────────┤
│ PostgreSQL │ Redis Cache │ Elasticsearch │ S3 Storage      │
└─────────────────────────────────────────────────────────────┘

📁 Structure du Projet

SocialCare_Hub/
├── backend/                 # Services backend
│   ├── api-gateway/        # Gateway API
│   ├── user-service/       # Gestion utilisateurs
│   ├── client-service/     # Gestion dossiers clients
│   ├── planning-service/   # Planification et suivi
│   ├── evaluation-service/ # Évaluation et diagnostic
│   ├── collaboration-service/ # Collaboration inter-services
│   ├── resources-service/  # Gestion des ressources
│   ├── communication-service/ # Communication
│   ├── finance-service/    # Gestion financière
│   ├── analytics-service/  # Analytics et reporting
│   ├── training-service/   # Formation et développement
│   └── mobile-service/     # API mobile
├── frontend/               # Application web React
├── mobile/                 # Application mobile React Native
├── shared/                 # Code partagé (types, utils)
├── infrastructure/         # Configuration cloud (Terraform)
├── docs/                  # Documentation
└── scripts/               # Scripts de déploiement

🚀 Installation et Démarrage

Prérequis

  • Node.js 18+
  • Docker et Docker Compose
  • PostgreSQL 14+
  • Redis 6+

Installation Rapide

# Cloner le projet
git clone <repository-url>
cd SocialCare_Hub

# Installer les dépendances
npm run install:all

# Configurer les variables d'environnement
cp backend/api-gateway/.env.example backend/api-gateway/.env
cp backend/user-service/.env.example backend/user-service/.env
cp backend/client-service/.env.example backend/client-service/.env
cp backend/planning-service/.env.example backend/planning-service/.env
cp frontend/env.example frontend/.env

# Démarrer l'environnement de développement
npm run dev

# Ou avec Docker
docker-compose up -d

Démarrage séparé

Backend uniquement

# Installer les dépendances backend
npm run install:backend

# Configurer la base de données
npm run db:migrate
npm run db:seed

# Démarrer l'API Gateway
cd backend/api-gateway
npm run dev

# Dans un autre terminal, démarrer le User Service
cd backend/user-service
npm run dev

# Dans d'autres terminaux, démarrer les autres services
cd backend/client-service
npm run dev

cd backend/planning-service
npm run dev

Frontend uniquement

# Installer les dépendances frontend
npm run install:frontend

# Démarrer le serveur de développement
cd frontend
npm run dev

Accès aux applications

  • Frontend : http://localhost:5173
  • API Gateway : http://localhost:3000
  • User Service : http://localhost:3001
  • Client Service : http://localhost:3002
  • Planning Service : http://localhost:3003
  • Prisma Studio : http://localhost:5555

Variables d'Environnement

Créer un fichier .env à la racine :

# Base de données
DATABASE_URL=postgresql://user:password@localhost:5432/socialcare_hub
REDIS_URL=redis://localhost:6379

# JWT
JWT_SECRET=your-super-secret-jwt-key
JWT_EXPIRES_IN=24h

# AWS
AWS_ACCESS_KEY_ID=your-access-key
AWS_SECRET_ACCESS_KEY=your-secret-key
AWS_REGION=eu-west-1

# Email
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=your-email@gmail.com
SMTP_PASS=your-password

# Services externes
SENDGRID_API_KEY=your-sendgrid-key

🔧 Scripts Disponibles

# Installation
npm run install:all          # Installe toutes les dépendances
npm run install:backend      # Installe backend uniquement
npm run install:frontend     # Installe frontend uniquement

# Développement
npm run dev                  # Démarre tout l'environnement
npm run dev:backend          # Démarre backend uniquement
npm run dev:frontend         # Démarre frontend uniquement

# Build
npm run build               # Build tous les services
npm run build:backend       # Build backend
npm run build:frontend      # Build frontend

# Tests
npm run test                # Lance tous les tests
npm run test:backend        # Tests backend
npm run test:frontend       # Tests frontend

# Déploiement
npm run deploy:staging      # Déploie en staging
npm run deploy:production   # Déploie en production

📊 Modules Disponibles

✅ Phase 1 (Modules de Base)

  • [x] Gestion des dossiers clients (Service Client - Port 3002)
  • [x] Planification et suivi (Service Planification - Port 3003)
  • [x] Communication de base
  • [x] Authentification et autorisation (API Gateway + User Service)

🚧 Phase 2 (Modules Avancés)

  • [ ] Collaboration inter-services
  • [ ] Évaluation et diagnostic
  • [ ] Gestion des ressources
  • [ ] Analytics de base

📋 Phase 3 (Modules Spécialisés)

  • [ ] Protection de l'enfance
  • [ ] Aide aux personnes âgées
  • [ ] Insertion professionnelle
  • [ ] Santé mentale
  • [ ] Application mobile

🔒 Sécurité

  • Chiffrement end-to-end des données sensibles
  • Conformité RGPD/HIPAA
  • Audit trails complets
  • Gestion des permissions granulaires
  • Authentification multi-facteurs
  • Sauvegarde automatique

📈 Monitoring

  • Logs centralisés avec ELK Stack
  • Métriques avec Prometheus + Grafana
  • Alertes avec PagerDuty
  • Health checks automatiques
  • Performance monitoring

🤝 Contribution

  1. Fork le projet
  2. Créer une branche feature (git checkout -b feature/AmazingFeature)
  3. Commit les changements (git commit -m 'Add AmazingFeature')
  4. Push vers la branche (git push origin feature/AmazingFeature)
  5. Ouvrir une Pull Request

📄 Licence

Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.

📞 Support

  • Documentation : /docs
  • Issues : GitHub Issues
  • Email : support@socialcare-hub.com
  • Slack : #socialcare-hub-support

SocialCare Hub - Révolutionner le travail social avec la technologie 🤝

Code source

Projet open source hébergé sur GitHub.

  • 0 étoiles
  • 0 forks
  • TypeScript
Voir le dépôt GitHub

Projets suggeres

Devis par e-mail

Recevoir votre devis

Indiquez votre e-mail : le PDF part tout de suite, sans engagement.

Récapitulatif

    Total HT
    TTC (TVA 20 %)

    Où envoyer votre devis ?

    Le PDF arrive à cette adresse en quelques secondes.

    Préciser votre besoin facultatif
    • Sans engagement
    • Réponse sous 24 h ouvrées
    • Devis PDF par e-mail

    Tarif HT selon les options choisies. Devis PDF envoyé par e-mail.