Build static sites for paralex lexicons
Project description
This package is currently in beta. It is meant to render paralex lexicon files in mkdocs sites.
Installing
pip install mkdocs_paralex_plugin
Quick start
Create a configuration file for mkdocs, compatible with mkdocs-material.
It needs a special paralex
section, with minimally a paralex_package_path
(to the json file), lists of feature labels to use to separate tables, rows and columns. It can contain
site_name: "My site name"
docs_dir: docs
plugins:
- paralex:
paralex_package_path: "<name>.package.json"
layout_tables:
- mood
layout_rows:
- person/number
layout_columns:
- tense
repo_url: https://gitlab.com/<user>/<repo>
Large datasets
If your lexicon is massive, the generated site might exceed the free hosting capacity on gitlab or github. There is then two options: compressing some assets (should still work with most browsers), and if that is still not enough, serving just a sample of the data.
Compressing some assets
An easy way for the static site to take less space is to compress some assets. Just add a compress: true
key:
site_name: "My site name"
docs_dir: docs
plugins:
- paralex:
paralex_package_path: "<name>.package.json"
compress: true
layout_tables:
- mood
layout_rows:
- person/number
layout_columns:
- tense
repo_url: https://gitlab.com/<user>/<repo>
Presenting only a sample of the data
To limit the site generation to a sample of the data, you need two more keys under the paralex section. If sample_size
is set, the corresponding number of lexemes will be selected, and the site will only show that sample. If frequency_sample
is set to true
, then the chosen lexemes will be the most frequent.
site_name: "My site name"
docs_dir: docs
plugins:
- paralex:
paralex_package_path: "<name>.package.json"
sample_size: 5000
frequency_sample: true
layout_tables:
- mood
layout_rows:
- person/number
layout_columns:
- tense
repo_url: https://gitlab.com/<user>/<repo>
Hosting on gitlab
To generate the site, add a plain text file called .gitlab-ci.yml
, with the following content. The site will then be served at https://<username>.gitlab.io/<repository-name>
. For more on gitlab pages, see the gitlab pages docs.
image: python:3.8
pages:
stage: deploy
script:
- mkdir -p docs/
- pip install pandas mkdocs>=1.1.2 mkdocs-material mkdocs_paralex_plugin
- mkdocs build -d public/ --strict --verbose
artifacts:
paths:
- public/
only:
- master
Github pages
To generate for github pages, see the mkdocs documentation. In brief, checkout the main
or master
branch of your project, locally install the needed packages, then run the github pages builder:
mkdir -p docs/
pip install pandas mkdocs>=1.1.2 mkdocs-material mkdocs_paralex_plugin
mkdocs gh-deploy
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 mkdocs_paralex_plugin-0.1.12b0.tar.gz
.
File metadata
- Download URL: mkdocs_paralex_plugin-0.1.12b0.tar.gz
- Upload date:
- Size: 26.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.13.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0e7954ce7150a9669caeb3b76f075e8d560ba49a640424459622286ef5372d7f |
|
MD5 | f2967425ecd32f04c8a0ae0db3b45fd4 |
|
BLAKE2b-256 | b98c6553481ce65fa49d0dc2aca141eef58a903563d81f698acc8a57faf926f5 |
File details
Details for the file mkdocs_paralex_plugin-0.1.12b0-py2.py3-none-any.whl
.
File metadata
- Download URL: mkdocs_paralex_plugin-0.1.12b0-py2.py3-none-any.whl
- Upload date:
- Size: 26.2 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.13.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 811612738301248c5f5647d486152348168702520fd544a765ac5efa71a438e1 |
|
MD5 | d01b158a56cf7286166883118fde6af4 |
|
BLAKE2b-256 | 30f081a53b9a7c5e5bd71620ba9023aa3f2fd9ab4edf3bb19067400201b7664c |