Architecture and Design
Sync-in is built on several core principles:
- Performance and speed, even with millions of files.
- Full data ownership and control, guaranteed to the owner end-to-end.
- Simplicity and lightness, by avoiding massive and unnecessary indexing.
- Innovative features, such as virtual anchoring, fine-grained permissions, and nested sharing.
- Robust and native security, based on authentication standards and the security by design principle.
- Scalability and interoperability, without compromising fluidity.
Sync-inβs architecture implements these principles through several key mechanisms that define its approach.
Space governance and operational visibilityβ
Collaborative spaces define a manager role, responsible for supervising the files, members, shares, and permissions associated
with the space.
Governance also covers the management of anchored files, with strict rules ensuring that the original rights attached to the file remain
unchanged, even when the anchor is administered at the space level.
This approach provides clear, ready-to-use governance, rarely offered in file collaboration platforms.
π See: Collaborative space management
Granular permissions and nested sharingβ
Sync-in introduces advanced rights management: a share can be redelegated while still giving the owner full visibility and control
over the entire chain of shares.
This unique approach allows the owner to manage, adjust, or revoke child shares with full transparency.
π See: Managing shares in collaborative spaces and Managing child shares.
Virtual anchoring without duplicationβ
The anchoring mechanism makes it possible to link a file or folder to a space without moving or duplicating it.
The item is accessible as if it were physically present (interface, WebDAV, API), while still following the permission rules of the target
space.
This avoids redundancy and provides better control over data distribution.
π See: Anchored files concept
Native WebDAV protocol implementationβ
While other solutions rely on external libraries (such as sabre-dav in PHP), Sync-in provides its own WebDAV implementation, fully compliant
with RFC 4918 and developed in TypeScript.
This technical choice ensures native support, optimized performance, and seamless integration into the platformβs global security model.
π See: WebDAV
Optimized and integrated synchronizationβ
Sync-in provides a native file synchronization system, optimized and consistent with the Web interface.
It relies on existing APIs to ensure uniform behavior in terms of control, security, and auditing.
Thanks to optimized handling of copy and move actions, network usage is reduced.
This feature also includes advanced mechanisms such as automatic transfer resume, synchronization simulation, data loss protection, regular
expression filtering...
π See: Synchronization
Database optimized for performanceβ
Sync-in only indexes files that require metadata (comments, shares, anchors, synchronizations, etc.).
This approach drastically reduces the size of the database, improving both fluidity and overall platform performance.
Freedom and no vendor lock-inβ
Files are not absorbed or stored in a database: they remain directly accessible on the filesystem.
This ensures users retain the freedom to work on their data outside the platform, with the ability to modify, move, or use it with other tools,
without any constraint or dependency on Sync-in.
Modern technical stackβ
Sync-in is built on a modern and consistent stack, designed for performance, maintainability, and scalability.
TypeScriptβ
The use of TypeScript provides static typing, improved readability, more efficient maintenance for developers, and enables shared logic between frontend and backend.
Backend: NestJS + Fastifyβ
The backend relies on NestJS, a modular, modern, and structured framework, combined
with Fastify for optimal performance.
This combination makes it possible to balance developer productivity with high production performance.
Frontend: Angularβ
The user interface is built with Angular, providing a solid structure and long-term maintainability for complex
applications.
This choice ensures functional consistency and scalability over time.
Software Architectureβ
Sync-in is based on a layered architecture that clearly separates security, business logic, APIs, and data persistence.
Each request is filtered through guards that enforce authentication and authorization rules before accessing internal services.
This organization strengthens security, improves maintainability, and ensures the scalability of the platform.
π For a detailed presentation of the different layers: Deepwiki β Sync-in Server Architecture