turns a collection of documents into a browsable ZIM file
Project description
Nautilus
nautilus
turns a collection of documents into a browsable ZIM file.
It downloads the video (webm or mp4 format – optionnaly recompress them in lower-quality, smaller size), the thumbnails, the subtitles and the authors' profile pictures ; then, it create a static HTML files folder of it before creating a ZIM off of it.
Preparing the archive
To be used with nautilus, your archive should be a ZIP file.
- it doesn't need to be structured, but it can.
- it doesn't need to be compressed. It's usually recommended not to.
- it should contain a
collection.json
file, but not required (see bellow). - it should only contain to-be-included files. No filtering is done.
- Audio and video files should be in ogg format with
.ogg
/.ogv
extension to be supported on all platform (mp3
/mp4
would work only on platform with native support).
cd content/path
zip -r -0 -T ../content_name.zip *
JSON collection file
Either inside the archive ZIP as /collection.json
or elsewhere,
specified via --collection mycollection.json
, you must supply a JSON file describing your content.
The user-interface only gives access to files referenced properly in the collection.
At the moment, the JSON files needs to provide the following fields for each item in an Array:
[
{
"title": "...",
"description": "...",
"authors": "...",
"files": ["relative/path/to/file"]
}
]
About page
Either inside the archive ZIP as /about.html
or elsewhere, specified via --about myabout.html
,
you may supply an about page in HTML format. It will be displayed in a modal popup and will include
at its bottom your secondary-logo if provided.
- Use only content tags (no
<html />
nor<head />
nor<script />
etc) - Use inline styling if required but no styling is recommended.
- Include one logo inline if required.
Requirements
zimwriterfs
for ZIM file packaging. Use--no-zim
to skip this step.wget
andunzip
to install JS dependencies. Seeget_js_deps.sh
if you want to do it manually.wget
is used to download archive files as well.handlebars
is used to compile JS templates
Installation
nautilus
is a python program. if you are not using the docker image, you are advised to use it in a virtualenv. See requirements.txt
for the list of python dependencies.
docker
docker run -v my_dir:/output openzim/nautilus nautiluszim --help
pip
pip install nautiluszim
nautiluszim --help
Usage
nautiluszim --archive my-content.zip
Notes
- On macOS, the locale setting is buggy. You need to launch it with
LANGUAGE
environment variable (as ISO-639-1) for the translations to work.
LANGUAGE=fr nautiluszim --language fra
Development
See CONTRIBUTING.md
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file nautiluszim-1.0.2.tar.gz
.
File metadata
- Download URL: nautiluszim-1.0.2.tar.gz
- Upload date:
- Size: 4.0 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.8.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7c1fc98b5850a57ff92810501f4f6b1db58981c0d1fda14d57cebdd82e7ec6b8 |
|
MD5 | 08e84dcc346caed22c483679248c860d |
|
BLAKE2b-256 | 06ff29ab14e7afc60e57ef0d50be30232ff79a31f67b0a229a1060ca01948b28 |
File details
Details for the file nautiluszim-1.0.2-py3-none-any.whl
.
File metadata
- Download URL: nautiluszim-1.0.2-py3-none-any.whl
- Upload date:
- Size: 4.2 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.8.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 69b6a4426ae7d99200ea6b4e3658edb3033c7533416c3f425f33ed50a95c53bf |
|
MD5 | 5994840ae85cb7ccf2773e0c6c3059ac |
|
BLAKE2b-256 | 58aa802c77967f8d23db7b1d5fb99afd75d8cc4add3cde02457a3ae91479faba |