Architecture et Conception
Sync-in repose sur plusieurs principes fondamentaux :
- Performance et rapidité, même avec plusieurs millions de fichiers.
- Contrôle total des données, garanti au propriétaire de bout en bout.
- Simplicité et légèreté, grâce à l’absence d’indexation massive et inutile.
- Innovations inédites, telles que l’ancrage virtuel, la granularité fine ou le partage imbriqué.
- Sécurité robuste et native, fondée sur les standards d’authentification et le security by design.
- Évolutivité et interopérabilité, sans sacrifier la fluidité.
L’architecture de Sync-in met en œuvre ces principes à travers plusieurs mécanismes clés qui définissent son approche.
Gouvernance des espaces et visibilité opérationnelle
Les espaces collaboratifs définissent un rôle de manager, chargé de superviser les fichiers, membres, partages et permissions
associés à l’espace.
La gouvernance inclut également la gestion des fichiers ancrés, avec des règles strictes garantissant que les droits originaux attachés au fichier
restent inchangés, même lorsque l’ancre est administrée au niveau de l’espace.
Cette approche offre une gouvernance claire et prête à l’emploi, rarement proposée dans les solutions de gestion de fichiers collaboratifs.
👉 Voir : Management des espaces collaboratifs
Permissions granulaires et partage imbriqué
Sync-in introduit une gestion avancée des droits : un partage peut être redélégué tout en laissant au propriétaire la visibilit é et le
contrôle sur l’ensemble de la chaîne de partages.
Cette approche unique permet de gérer, ajuster ou révoquer les partages enfants en toute transparence.
👉 Voir : Gestion des partages dans les espaces collaboratifs et Gestion des partages enfants.
Ancrage virtuel sans duplication
Le mécanisme d’ancrage permet de lier un fichier ou dossier à un espace sans déplacer ni dupliquer le contenu.
L’élément est accessible comme s’il était physiquement présent (interface, WebDAV, API), tout en bénéficiant des règles de permission
propres à l’espace.
Cette logique évite la redondance et offre une meilleure maîtrise de la diffusion des données.
👉 Voir : Concept des fichiers ancrés
Implémentation native du protocole WebDAV
Là où d’autres solutions reposent sur des bibliothèques externes (comme sabre-dav en PHP), Sync-in possède sa propre implémentation WebDAV
conforme à la RFC 4918 et développée en TypeScript.
Ce choix technique garantit un support natif, des performances optimisées et une intégration homogène dans le modèle de sécurité global de la
plateforme.
👉 Voir : WebDAV
Synchronisation optimisée et intégrée
Sync-in propose un système de synchronisation de fichiers natif, optimisé et cohérent avec l’interface Web.
Il s’appuie sur les API existantes pour garantir un comportement uniforme en matière de contrôle, sécurité et audit.
Grâce à la gestion des actions de copie et déplacement la consommation réseau est réduite.
Cette fonctionnalité s’accompagne de nombreux mécanismes complémentaires, tels que la reprise automatique des transferts, la simulation des
synchronisations, la protection contre la perte de données, filtrage par regexp...
👉 Voir : Synchronisation
Base de données optimisée pour la performance
Sync-in n’indexe que les fichiers nécessitant des métadonnées (commentaires, partages, ancrages, synchronisations, etc.). Cette approche réduit drastiquement la taille de la base de données, améliorant ainsi la fluidité et les performances de la plateforme.
Liberté et absence de verrouillage
Les fichiers ne sont pas absorbés ni stockés dans une base de données : ils restent accessibles directement sur le système de fichiers. Cette approche garantit à l’utilisateur la liberté de travailler sur ses données en dehors de la plateforme, avec la possibilité de les modifier, déplacer ou utiliser avec d’autres outils, sans contrainte ni dépendance à Sync-in.
Stack technique moderne
Sync-in repose sur une stack moderne et cohérente, pensée pour la performance, la maintenabilité et l’évolutivité.
TypeScript
L’utilisation du langage TypeScript apporte le typage statique, une lisibilité renforcée, une maintenance plus efficace pour les développeurs, et favorise le partage de logique commune entre frontend et backend.
Backend : NestJS + Fastify
Le backend s’appuie sur la stack NestJS, un framework modulaire, moderne et structurant, couplé à Fastify pour des performances optimales. Cette combinaison permet de concilier productivité de développement et haute performance en production.
Frontend : Angular
L’interface utilisateur est développée avec Angular, offrant une structure solide, une bonne intégration à long terme
pour les applications complexes.
Ce choix garantit une cohérence fonctionnelle et une scalabilité sur le long terme.
Architecture logicielle
Sync-in s’appuie sur une architecture en couches qui sépare nettement la sécurité, la logique métier, les API et la persistance des
données.
Chaque appel est filtré par des guards qui appliquent les règles d’authentification et d’autorisation avant d’accéder aux services internes.
Cette organisation renforce la sécurité, améliore la maintenabilité et garantit l’évolutivité de la plateforme.
👉 Pour une présentation détaillée des différentes couches : Deepwiki – Sync-in Server Architecture