README.md 3.74 KB
Newer Older
1
2
3
4
# Lufi

## What does Lufi mean?

Luc Didry's avatar
Luc Didry committed
5
Lufi means Let's Upload that FIle. It's a E2E encrypted file sharing software.
6

Ilker Kulgu's avatar
Ilker Kulgu committed
7
8
9
10
11
12
13
14
15
16
17
## Which browsers are compatible?

Lufi is tested and working on the following browsers / devices :
    - Firefox
    - Chrome
    - Internet Explorer 11
    - Microsoft Edge
    - Safari
    - iOS devices (ipad, iphone)
    - Android devices (Galaxy tab, Galaxy S8)

18
19
20
21
## What does it do?

It stores files and allows you to download them.

duthils's avatar
duthils committed
22
23
Is that all? No. All the files are encrypted **by the browser**! It means that your files **never** leave your computer unencrypted.
The administrator of the Lufi instance you use will not be able to see what is in your file, neither will your network administrator, or your ISP.
24

Armando Lüscher's avatar
Armando Lüscher committed
25
The encryption key part of the URL is a anchor (Cf. [Fragment Identifier](https://en.wikipedia.org/wiki/Fragment_identifier)), that means this part is only processed client-side and does not reach the server. :-)
Luc Didry's avatar
Luc Didry committed
26

27
28
## License

Luc Didry's avatar
Luc Didry committed
29
Lufi is licensed under the terms of the AGPL. See the [LICENSE](LICENSE) file.
30
31
32

## Official instance

Luc Didry's avatar
Luc Didry committed
33
34
There is a demonstration site, available at <https://demo.lufi.io>, with strong limitations on time and file size.

Armando Lüscher's avatar
Armando Lüscher committed
35
To really use Lufi, you can go to <https://framadrop.org>, provided by the [Framasoft association](https://framasoft.org) (you can help them to keep providing free services at <https://soutenir.framasoft.org>).
36
37
38
39
40
41
42

## Logo

Because Lufi is quite similar to Luffy, like in "[Monkey D. Luffy](https://en.wikipedia.org/wiki/Monkey_D._Luffy)" from [One Piece](https://en.wikipedia.org/wiki/One_Piece) manga, the logo is a straw hat, made with pain, love and [Inkscape](https://inkscape.org/).

## Wiki (work in progress)

43
The official wiki will contain all you need to know about Lufi (installation, configuration, etc.). Go to <https://framagit.org/fiat-tux/hat-softwares/lufi/wikis/home> or clone it:
44
45

```
46
git clone https://framagit.org/fiat-tux/hat-softwares/lufi.wiki.git
47
48
49
50
```

## Encryption

Armando Lüscher's avatar
Armando Lüscher committed
51
All the encryption/decryption processes take place in your browser. The encryption key is never sent over the network.
52

53
However please note that some metadata are sent unencrypted:
54
55
56
57
58

* the file name
* its size
* its mimetype

59
60
## Client

61
62
63
There is the web interface, but you can use a CLI client too! Have a look at [lufi-cli](https://framagit.org/fiat-tux/hat-softwares/lufi-cli) or install it directly with `sudo npm install -g lufi-cli`.

There is another client in Python too: <https://framagit.org/setop/pylufic>.
64

65
66
## Internationalization

Luc Didry's avatar
Luc Didry committed
67
Lufi comes with several languages.
68

Luc Didry's avatar
Luc Didry committed
69
Please, see [this wiki page](https://framagit.org/fiat-tux/hat-softwares/lufi/wikis/contribute#internationalization) to know how to contribute to internationalization.
Luc Didry's avatar
Luc Didry committed
70

71
72
73
74
75
76
## Authors

See [AUTHORS.md](AUTHORS.md) file.

## Contribute!

77
Please consider contributing, either by [reporting issues](https://framagit.org/fiat-tux/hat-softwares/lufi/issues) or by helping the internationalization. And of course, code contributions are welcome!
78

79
The details on how to contribute are on the [wiki](https://framagit.org/fiat-tux/hat-softwares/lufi/wikis/contribute).
80

Luc Didry's avatar
Luc Didry committed
81
82
This software uses [Fiat Tux Code of conduct](https://framagit.org/fiat-tux/code-of-conduct/blob/master/README.md).

Luc Didry's avatar
Luc Didry committed
83
84
85
86
## Make a donation

You can make a donation to the author on [Tipeee](https://www.tipeee.com/fiat-tux) or on [Liberapay](https://liberapay.com/sky/).

duthils's avatar
duthils committed
87
## Other dependencies
88
89
90
91
92

Lufi is written in Perl with the [Mojolicious](http://mojolicio.us) framework.

It uses:

Luc Didry's avatar
Luc Didry committed
93
94
* [Materialize](http://materializecss.com/) framework to look not too ugly
* [jQuery](https://jquery.com)
95
96
* [Stanford Javascript Crypto Library](http://bitwiseshiftleft.github.com/sjcl/)
* [Moment.js](http://momentjs.com/) for displaying real dates instead of unix timestamps.
Luc Didry's avatar
Luc Didry committed
97
* [Filesize.js](http://filesizejs.com/) for displaying file sizes