diff --git a/docs/source/example.rst b/docs/source/example.rst new file mode 100644 index 0000000..9b232c9 --- /dev/null +++ b/docs/source/example.rst @@ -0,0 +1,24 @@ +.. _example_how_it_works: + +Example of how unisync works +============================ + +Let's say you have the following structure:: + + $ tree . + . + ├── big_file + └── folder +    ├── file +    └── other_file + +If you only want to synchronise `folder` and its content on your laptop the following will be automatically generated:: + + $ tree . + . + ├── big_file -> ../.data/big_file + └── folder +    ├── file +    └── other_file + +`big_file` is now a symbolic link and by mounting the remote directory you can still seemlessly access `big_file` through the network. diff --git a/docs/source/index.rst b/docs/source/index.rst index c148277..6d7408d 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -6,13 +6,26 @@ Documentation for unisync ========================= -Unisync is a data synchronising tool built around `unison`_ +Unisync is a data synchronising tool built around `unison`_ and expending on it. + +Unisync tries to solve two problems that are often solved separately but never together : + +* Keeping your data synchronised between multiple machines (through a central server), examples of this are rsync and of course unison. +* Being able to access and edit files stored on your server without having to download them, the gui interface of nextcloud for example. +* And of course I want to be able to do all of this without ever having to leave my terminal. + +Unisync solves this problem by placing each file on your local machine but with only the selected files and folders being physically present on your drive, +the others are replaced by symbolic links pointing to a directory that is mounted from your server. + +See this +:ref:`example_how_it_works`. .. _unison: https://github.com/bcpierce00/unison .. toctree:: :maxdepth: 2 :caption: Contents: - + + example modules