High performance file syncing and sharing, with also Markdown WYSIWYG editing, Wiki, file label and other knowledge management features.
Go to file
2012-08-07 10:40:34 +08:00
app Reduce ccnet dependency and add app dir. 2012-07-28 16:36:10 +08:00
common copy some files from ccnet/lib to seafile/lib 2012-08-06 17:10:25 +08:00
controller Add monitor, httpserver, controller, tests and tools. 2012-08-07 10:40:34 +08:00
daemon copy some files from ccnet/lib to seafile/lib 2012-08-06 17:10:25 +08:00
gui Make seafile-apple run. 2012-08-04 19:53:23 +08:00
httpserver Add monitor, httpserver, controller, tests and tools. 2012-08-07 10:40:34 +08:00
include Rebase to latest seafile. 2012-08-04 12:03:45 +08:00
lib copy some files from ccnet/lib to seafile/lib 2012-08-06 17:10:25 +08:00
m4 copy some files from ccnet/lib to seafile/lib 2012-08-06 17:10:25 +08:00
monitor Add monitor, httpserver, controller, tests and tools. 2012-08-07 10:40:34 +08:00
python Make seafile-apple run. 2012-08-04 19:53:23 +08:00
server copy some files from ccnet/lib to seafile/lib 2012-08-06 17:10:25 +08:00
tests Add monitor, httpserver, controller, tests and tools. 2012-08-07 10:40:34 +08:00
tools Add monitor, httpserver, controller, tests and tools. 2012-08-07 10:40:34 +08:00
web Make seafile-apple run. 2012-08-04 19:53:23 +08:00
.gitignore Add monitor, httpserver, controller, tests and tools. 2012-08-07 10:40:34 +08:00
autogen.sh Init seafile repo. 2012-07-27 19:47:42 +08:00
ccnet-web.sh.in Make seafile-apple run. 2012-08-04 19:53:23 +08:00
configure.ac Add monitor, httpserver, controller, tests and tools. 2012-08-07 10:40:34 +08:00
Makefile.am Add monitor, httpserver, controller, tests and tools. 2012-08-07 10:40:34 +08:00
README.markdown Add README file. 2012-07-28 16:45:03 +08:00

Introduction

Seafile is a distributed file synchronization client/server. A user first creates a synchronized folder on a server, then sync it with any local folder. It is distributed in the sense that a client can sync with any server, public key authentication is used, no login from client is required.

Feature Summary

Seafile can be used to build a full-fledged cloud storage platform. It has following features:

  1. Full web operations like create folders, upload files, move files.
  2. Synchronizing on demand (every client can choose what to sync)
  3. Sync with existing folders
  4. Sharing groups, users can create and join groups.
  5. Full version operation like SyncFolder history, single file history, file restore.
  6. Organizations, users can create and join organizations like github.

Seafile uses GIT's version control model, but simplified for automatic file synchronization. Every synchronized folder is like a GIT repository. It has its own unique history, which consists of a list of commits. File history, commit diff, etc., are all supported.

Multiple storage backends can be used to store metadatas and files.

Dependency

The following packages are required to build seafile:

json-glib >= 0.10.2
valac >= 0.8
libsearpc >= 1.0
libccnet >= 0.9.3
libmysqlclient-dev
libzdb >= 2.10.2

Compile

To compile the daemon components, just

./autogen.sh; ./configure; make; make install

To also compile the server components, use

./configure --enable-server