Seafile is an open-source cloud storage and file-sync platform focused on privacy and team collaboration. Files are organized into libraries that sync independently, can be encrypted with a user-chosen password, and support conflict resolution based on version history rather than timestamps. Beyond sync and share, Seafile adds metadata management, a drive client, and built-in tools for collaborative document editing and wikis.
Seafile fits teams and individuals who want Dropbox- or Google Drive-style file sync and sharing but need the data to stay on infrastructure they control, such as regulated industries, research groups handling sensitive datasets, or privacy-conscious individuals. The selective sync and resumable transfers matter for users with large file libraries or unreliable connections, since only a chosen subset of folders needs to sync to any given device and interrupted uploads pick up where they left off instead of restarting. Client-side and library-level encryption suit teams that want the storage provider, in this case their own server, to be unable to read file contents even in the event of a server compromise. The metadata and view features, including table, Kanban, gallery, map, and statistics views, extend Seafile past pure file storage into lightweight project and document management, useful for teams that want to avoid running a separate wiki or knowledge-base tool. The drive client, which mounts a library as a virtual drive and syncs files on demand, is useful for users with libraries too large to keep a full local copy of on a laptop, and mobile clients for iOS and Android extend that same on-demand access to phones and tablets.
Seafile is split across several repositories: this sync client daemon repository, a separate server core (AGPLv3), the Seahub web UI (Apache 2.0), desktop clients for Windows, macOS, and Linux, an iOS app (Apache 2.0), an Android app (GPLv3), and a WebDAV adapter. The desktop syncing client in this repository is licensed under GPLv2. Splitting the codebase this way lets the server, web interface, and each platform client version and release independently while sharing the same sync protocol.