139cccc004b055271a1ecf2a7740c8b1910a53ba
[wolnelektury.git] / README.md
1 # Wolne Lektury
2
3 ![Wolne Lektury](src/wolnelektury/static/img/logo-bez.png)
4
5
6 Wolne Lektury is a free internet library maintained by Modern Poland Foundation.
7
8 It's a service based on [Django](https://www.djangoproject.com/), using
9 [Librarian](https://git.mdrn.pl/librarian.git) to publish books in various formats.
10
11
12 License
13 -------
14
15   ![AGPL Logo](http://www.gnu.org/graphics/agplv3-155x51.png)
16     
17     Copyright © 2008-2019 Fundacja Nowoczesna Polska <fundacja@nowoczesnapolska.org.pl>
18     
19     For full list of contributors see AUTHORS section at the end. 
20
21     This program is free software: you can redistribute it and/or modify
22     it under the terms of the GNU Affero General Public License as published by
23     the Free Software Foundation, either version 3 of the License, or
24     (at your option) any later version.
25
26     This program is distributed in the hope that it will be useful,
27     but WITHOUT ANY WARRANTY; without even the implied warranty of
28     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
29     GNU Affero General Public License for more details.
30
31     You should have received a copy of the GNU Affero General Public License
32     along with this program.  If not, see <http://www.gnu.org/licenses/>.
33     
34
35 Dependencies
36 ============
37
38  * Python 3.5-3.7
39  * All packages listed in requirements.txt
40
41
42 How to deploy (development version)
43 =============
44
45 1. Checkout the source code from Git and enter the directory
46 2. Install libraries (we recommend using pip):
47
48     pip install -r requirements/requirements.txt
49
50 3. Setup your local configuration in src/wolnelektury/localsettings.py. You need to generate a new SECRET_KEY, database stuff and domain related stuff.
51 4. Populate database:
52     
53     ./manage.py migrate
54
55 5. Run the server
56
57    ./manage.py runserver
58
59     
60 6. Import some books which are available on http://www.wolnelektury.pl or on bitbucket mirror: http://bitbucket.org/lqc/wlbooks/
61    If you use Bitbucket, you also need Mercurial to fetch books (you can install it using: pip install mercurial).
62    After downloading books, log into administration, go to Books and choose 'Browse' to select book file,
63    then fire 'Import book' to upload it. Some books have invalid XML, so you can get an error
64    (just ignore it and look for other books).
65    
66 7. We provide localization of the software in following languages: Polish, Russian, German, English, Spanish, French and Lithuanian.
67    Translation strings are based on gettext and can be found under 'locale' dir.
68    There are also JavaScript files for jQuery countdown plugin (static/js/jquery.countdown-*.js).
69
70
71 Bundled software
72 ================
73
74 * django-chunks
75   in `src/chunks`
76   based on [django-chunks](http://code.google.com/p/django-chunks/)
77   by Clint Ecker <clintecker@gmail.com>,
78   [New BSD License](http://www.opensource.org/licenses/bsd-license.php)
79 * [django-newtagging](http://www.bitbucket.org/zuber/django-newtagging/)
80   in `src/newtagging`
81   by Marek Stępniowski <marek@stepniowski.com>,
82   [MIT License](http://www.opensource.org/licenses/mit-license.php),
83   based on [django-tagging](http://code.google.com/p/django-tagging/), also under [MIT License](http://www.opensource.org/licenses/mit-license.php)
84 * [jPlayer](http://jplayer.org/)
85   in `src/catalogue/static/jplayer`
86   by Happyworm,
87   [MIT License](http://opensource.org/licenses/MIT)
88 * [Switch template tag](http://djangosnippets.org/snippets/967/)
89   in `src/wolnelektury/templatetags/switch_tag.py`
90   by adurdin
91 * Javascript in `src/wolnelektury/static/js/contrib`
92   with relevant attribution and licensing
93   
94
95 Authors
96 =======
97  * Marek Stępniowski  <marek@stepniowski.com>
98  * Łukasz Rekucki <lrekucki@gmail.com>
99  * Radek Czajka
100  * Łukasz Anwajler
101  * Marcin Koziej
102  * Aleksander Łukasz
103  * Jan Szejko
104  * Mariusz Machuta