Document Confidentiel v1.0 — 01/05/2026

Référentiel Technique TaskFlow

Plateforme intelligente tout-en-un de gestion de tâches, projets, calendriers et productivité. Ce document est le guide de référence unique pour l'équipe de développement EDA SOLUTIONS SUITES.

11
Modules
REST
API
PWA
Offline
100%
Responsive
WCAG
Accessible
🏗️ Architecture

Architecture Globale du Système

Flux de données, couches applicatives et communication

🖥️ Client (PC / Tablette / Smartphone / PWA)
🎨 Frontend — HTML5 / CSS3 / JS ES6+ / AJAX / jQuery
🔌 API REST PHP
Endpoints modulaires
🛡️ Middleware
Sécurité / Auth
🗄️ MySQL / MariaDB
Base de données
📁 Stockage Fichiers
Local / S3
📦 Cache / IndexedDB
PWA Offline
# Circuit de communication TaskFlow
Client (PC/Tablette/Smartphone/PWA)
    │ AJAX (JSON) ↔ HTTPS
    ▼
Frontendapi.request('endpoint', data)
    │
    ▼
API REST PHPRouter::dispatch() → ControllerService
    │
    ▼
Base de Données MySQL → PDO::query() → $result
    │
    ▼
JSON Responsejson_encode($data) → FrontendrenderUI()
⚙️ Stack

Stack Technique Officielle

Technologies validées pour le développement

Frontend

HTML5 sémantique, CSS3 (variables, flexbox, grid, animations), JavaScript ES6+ natif, AJAX, jQuery 3.7+, JSON.

HTML5CSS3 JS ES6+AJAX jQuery

Backend

PHP 8.2+, API REST modulaire, MVC personnalisé, Router PHP natif, JWT (optionnel), Middleware de sécurité.

PHP 8.2+REST MVCJWT

Base de Données

MySQL 8.0+ / MariaDB 10.6+, indexation optimisée, transactions SQL, backups journaliers automatiques.

MySQL 8.0+MariaDB Indexation

PWA

Service Worker, Cache API, IndexedDB, Push API, Manifest, Splash screen, Mode standalone offline.

Service WorkerIndexedDB Push API

Librairies

Chart.js, FullCalendar, SortableJS, SweetAlert2, Animate.css, AOS, Day.js, jQuery UI.

Chart.jsFullCalendar Day.js

Sécurité

Bcrypt (coût 12), anti-CSRF, anti brute-force, validation double, HTTPS, cookies HttpOnly/Secure/SameSite.

BcryptCSRF HTTPS
📦 Modules

11 Modules Fonctionnels Intégraux

Couverture complète de tous les besoins de productivité

🔐 Inscription & Connexion

Formulaire nom, email, mot de passe, acceptation CGU. Cookie sécurisé HttpOnly/Secure/SameSite. Connexion sociale Google/Microsoft.

🛡️ Sécurité renforcée

Hashage Bcrypt coût 12, token anti-CSRF sur tous les formulaires, anti brute-force (blocage 15min après 5 échecs), validation double client+serveur.

🔑 2FA & Récupération

Double authentification SMS/email ou Google Authenticator. Lien de récupération mot de passe valable 24h envoyé par email.

👤 Profil utilisateur

Modification nom, email, avatar, mot de passe. Déconnexion de tous les appareils. Suppression de compte.

📊 Widgets dynamiques

Tâches du jour, urgentes, projets actifs, stats productivité, calendrier rapide, progression objectifs, notifications récentes.

🔄 Personnalisation

Drag & drop des widgets, ajout/suppression, sauvegarde automatique de la disposition, rafraîchissement temps réel.

✅ CRUD complet

Titre, description riche, priorité (4 niveaux), statut, date limite, récurrence, catégorie, couleur, pièces jointes (max 10 fichiers, 5MB).

📋 Vues multiples

Liste triable, Kanban (drag & drop), Timeline chronologique, Calendrier intégré. Sous-tâches avec progression automatique.

📁 Projets & Équipes

Création projet avec dates, description, catégorie. Ajout membres, rôles (propriétaire/membre/invité), permissions.

📈 Visualisation

Kanban, Diagramme Gantt, Timeline, Sprint Agile. Progression en %, documents partagés, deadlines.

📅 Calendrier FullCalendar : vues journalière, hebdomadaire, mensuelle, annuelle. Drag & drop, événements récurrents, blocs de temps, synchronisation Google/Outlook (futur).

🧠 Smart Planning : agenda, routines, habitudes, objectifs. Réorganisation automatique des tâches en retard, suggestions IA, alerte surcharge >80%.

⏱️ Pomodoro, timer, stopwatch. Graphiques Chart.js : temps travaillé, productivité journalière/hebdomadaire/mensuelle, complétion, performance.

👥 Équipes, commentaires, mentions @, partage tâches/projets, permissions. AJAX polling 30s, WebSocket prévu pour temps réel.

🔔 Push, navigateur, email, in-app. Déclencheurs : retard, rappel (1h/6h/24h), deadline proche, mention, commentaire, invitation équipe.

📎 Upload fichiers (images, PDF, docs, audio). Aperçu direct, téléchargement. Notes avec texte riche, catégorisation, liens vers tâches/projets.

🔍 Recherche instantanée AJAX sur tâches, projets, utilisateurs, notes, calendrier. Filtres par type, résultats en temps réel.

🗄️ Base de données

Structure Complète — 12 Tables

Schéma relationnel optimisé pour MySQL 8.0+

Table Colonnes clés Type Contraintes Index
users id, name, email, password, avatar, 2fa_secret INT PK, VARCHAR(100) UNIQUE email, NOT NULL email
tasks id, user_id, title, description, priority, status, due_date, recurrence, category, color, progress INT PK, FK→users NOT NULL title user_id, priority, status, due_date
subtasks id, task_id, title, completed, position INT PK, FK→tasks CASCADE delete task_id
projects id, owner_id, title, description, start_date, end_date, progress, color INT PK, FK→users NOT NULL title owner_id
project_members id, project_id, user_id, role INT PK, FK→projects,users UNIQUE(project_id,user_id) project_id, user_id
events id, user_id, title, description, start, end, recurrence, color INT PK, FK→users NOT NULL title, start user_id, start, end
comments id, entity_type, entity_id, user_id, content, created_at INT PK, FK→users NOT NULL content entity_type, entity_id
notifications id, user_id, type, title, message, read, data, created_at INT PK, FK→users NOT NULL message user_id, read, created_at
files id, user_id, entity_type, entity_id, filename, path, size, mime_type INT PK, FK→users NOT NULL filename entity_type, entity_id
notes id, user_id, title, content, category, pinned INT PK, FK→users NOT NULL title user_id, FULLTEXT(content)
habits id, user_id, title, description, frequency, streak, color INT PK, FK→users NOT NULL title user_id
pomodoro_sessions id, user_id, task_id, duration, type, completed_at INT PK, FK→users,tasks NOT NULL duration user_id, completed_at
📱 PWA

Mode PWA Professionnel

Installation, offline, notifications, performance

Installation

Icône 192×192 & 512×512, splash screen #0F4C81, mode standalone, nom "TaskFlow - EDA SOLUTIONS".

Mode Offline

Service Worker, Cache intelligent, IndexedDB, synchronisation différée, message d'alerte hors-ligne.

Push Notifications

Push API, rappels intelligents, notifications in-app, paramétrage personnalisé par type.

Performance

Chargement ≤ 2s, lazy loading, cache dynamique, score Lighthouse ≥ 90 (Performance/PWA/Accessibilité).

Design System

Glassmorphism, Dark/Light mode, palette #0F4C81/#4A90E2, typographie Inter/Calibri, animations fluides.

Sécurité PWA

HTTPS obligatoire, cookies HttpOnly/Secure/SameSite, Content Security Policy, protection XSS/SQLi.

🎮 Démo Interactive

Prévisualisation Live de TaskFlow

Essayez l'interface sur différents appareils — application fonctionnelle

📦 Livrables

Deliverables Finals

Ce qui sera livré à la fin du projet

📂 Code source complet

Frontend + Backend + Base de données + PWA. Architecture de dossiers propre et documentée.

📱 PWA installable

Manifest, Service Worker, icônes, splash screen. Fonctionnel offline sur tous les appareils.

📚 Documentation

Spécifications techniques, guide d'installation, guide utilisateur, documentation API complète.

🧪 Tests complets

Tests unitaires, fonctionnels, sécurité, performance, compatibilité navigateurs et appareils.