High performance file syncing and sharing, with also Markdown WYSIWYG editing, Wiki, file label and other knowledge management features.
Go to file
2014-06-08 14:55:16 +08:00
app apply the patch metioned in #518 2014-04-30 16:41:51 +08:00
common Improve object and block writting performance. 2014-05-16 15:24:06 +08:00
controller apply the patch metioned in #518 2014-04-30 16:41:51 +08:00
daemon Merge branch '3.0' 2014-05-12 17:02:08 +08:00
debian update msi/deb version to 3.0.4 2014-05-12 17:20:13 +08:00
doc [scripts] add server 2.1.0 upgrade scripts 2013-12-23 10:06:49 +08:00
fuse apply the patch metioned in #518 2014-04-30 16:41:51 +08:00
httpserver Free/Net/OpenBSD have another names for libevent2 headers. 2014-05-14 13:42:46 +04:00
include Remove unused code. 2014-05-05 16:32:30 +08:00
lib Free/Net/OpenBSD have another names for libevent2 headers. 2014-05-14 13:42:46 +04:00
m4 add i18n support in applet 2012-10-30 10:53:07 +08:00
msi update msi/deb version to 3.0.4 2014-05-12 17:20:13 +08:00
python [python] Rename group repo related api 2014-05-16 13:21:15 +08:00
scripts Merge branch '3.0' 2014-05-27 11:39:48 +08:00
server Free/Net/OpenBSD have another names for libevent2 headers. 2014-05-14 13:42:46 +04:00
tests [server, python] Add is_virtual field to SharedRepo object. 2013-12-17 10:46:02 +08:00
tools [scripts] fixed creating admin account in seafile-admin 2014-05-21 17:37:19 +08:00
.gitignore [server] added 3.0 upgrade script 2014-04-09 11:40:16 +08:00
autogen.sh Use uname command to detect Darwin platform 2014-06-08 14:55:16 +08:00
configure.ac Use uname command to detect Darwin platform 2014-06-08 14:55:16 +08:00
LICENCE.txt Add GPL Licence 2012-11-05 11:35:02 +08:00
Makefile.am remove icons and desktop files. their new home should be at seafile-client 2014-04-30 18:06:07 +04:00
README.markdown Clean up README.markdown 2014-05-07 22:28:08 -05:00
setupmac.sh [mac] Update to v1.8.0-mac 2013-07-31 19:32:30 +08:00
setupwin.py fixed some distribute problems 2013-02-20 19:54:51 +08:00
updateversion.sh Use uname command to detect Darwin platform 2014-06-08 14:55:16 +08:00

Introduction

Seafile is a next-generation open source cloud storage system with advanced support for file syncing, privacy protection and teamwork.

Collections of files are called libraries, and each library can be synced separately. A library can be encrypted with a user chosen password. This password is not stored on the server, so even the server admin cannot view a file's contents.

Seafile allows users to create groups with file syncing, wiki, and discussion to enable easy collaboration around documents within a team.

Feature Summary

Seafile is a full-fledged cloud storage platform. It has the following features:

Complete and advanced file syncing

  1. Selective synchronization of file libraries. Each library can be synced separately.
  2. Correct handling of file conflicts based on history instead of timestamp.
  3. Efficient bandwidth usage by only transfering contents not in the server, and incomplete transfers can be resumed.
  4. Sync with two or more servers.
  5. Sync with existing folders.
  6. Sync a sub-folder.
  7. Full version control with configurable revision number.

Full team collaboration support

  1. Groups with file syncing, wiki, discussion.
  2. Online file editing and comments.
  3. Sharing sub-folders to users/groups.
  4. Sharing single files between users.
  5. Sharing links.
  6. Personal messages.

Advanced privacy protection

  1. Library encryption with a user chosen password.
  2. Client side encryption.
  3. Never sends the user's password to the server.

Internal

Seafile's version control model is based on Git, but it is simplified for automatic synchronization does not need Git installed to run Seafile. Each Seafile library behaves like a Git repository. It has its own unique history, which consists of a list of commits. A commit points to the root of a file system snapshot. The snapshot consists of directories and files. Files are further divided into blocks for more efficient network transfer and storage usage.

Differences from Git:

  1. Automatic synchronization.
  2. Clients do not store file history, thus they avoid the overhead of storing data twice. Git is not efficient for larger files such as images.
  3. Files are further divided into blocks for more efficient network transfer and storage usage.
  4. File transfer can be paused and resumed.
  5. Support for different storage backends on the server side.
  6. Support for downloading from multiple block servers to accelerate file transfer.
  7. More user-friendly file conflict handling. (Seafile adds the user's name as a suffix to conflicting files.)
  8. Graceful handling of files the user modifies while auto-sync is running. Git is not designed to work in these cases.

Build and Run

See https://github.com/haiwen/seafile/wiki

Internationalization (I18n)

See po/i18n.markdown

Change Logs

See https://seacloud.cc/group/3/wiki/home/

Why Open Source

Our primary goal is to build a first-class product. Since we are only a small team, we think our goal can only be achieved by collaborating with the whole world.

Seafile is an open and extensible system. A library is a collection of files that could be synced. It can be presented to users as a Wiki, a set of notes, a gallery and so on. We have already write the Wiki module as an example. We need your contributions to make Seafile more versatile. Let's build an awesome system together!

Licence

Seafile and its desktop and mobile clients are published under the GPLv3.

The Seafile server's web end, i.e. Seahub, is published under the Apache License.

Contact

Twitter: @seafile https://twitter.com/seafile

Google Group: https://groups.google.com/forum/?fromgroups#!forum/seafile

IRC: #seafile on freenode