Manage collection inventories throught yaml files.
Project description
lesana is a python3 library to organize collections of various kinds. It is designed to have a data storage / serialization format that is friendly to git and other VCSs, but decent performances.
To reach this aim it uses yaml as its serialization format, which is easy to store in a VCS, share between people and syncronize between different computers, but it also keeps an index of this data in a local xapian database in order to allow for fast searches.
lesana supports collections of any kind, as long as their entries can be described with a mostly flat dictionary of fields of the types described in the documentation file field_types.
Some example collection schemas are provided, but one big strenght of lesana is the ability to customize your collection with custom fields by simply writing a personalized settings.yaml.
Installation
The recommended way to install lesana is to use the packages available for your distribution; see e.g. the list of distributions that provide lesana on repology.
Alternatively, the source code for lesana can be downloaded from the git repository at https://git.sr.ht/~valhalla/lesana; and releases are made on pypi.
lesana expects to run on a POSIX-like system and requires the following dependencies:
python3
GitPython optional, to add git support.
Under debian (and derivatives), the packages to install are:
apt install python3-jinja2 python3-ruamel.yaml python3-xapian \ python3-dateutil python3-git
lesana can be run in place from the git checkout / extracted tarball; to use setup.py you will also need setuptools (e.g. from the python3-setuptools package under debian and derivatives).
Contributing
Lesana is hosted on sourcehut:
License
Copyright (C) 2016-2024 Elena Grandi
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
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 lesana-0.10.1.tar.gz
.
File metadata
- Download URL: lesana-0.10.1.tar.gz
- Upload date:
- Size: 61.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7be10f6afef5571a6528d733f4d4d3dd542a73e7687048cb020710b96d37be8a |
|
MD5 | d4d91e7e85c7ff8436b6dfeeb28aa040 |
|
BLAKE2b-256 | e077509739c4e34fc04772b5a6cf0f7cad873d24520dac97f029d95f45f00825 |
File details
Details for the file lesana-0.10.1-py3-none-any.whl
.
File metadata
- Download URL: lesana-0.10.1-py3-none-any.whl
- Upload date:
- Size: 16.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8e5d220aa5cdeb246c58d68af38d1598da50faf9f56ece646ad367c10349cec2 |
|
MD5 | 31cd237274d082bba32705a2c1dbde80 |
|
BLAKE2b-256 | 2ec8453a68471d68df43e31efbeb6923b2f14ef3431ec75437ec72b912597239 |