Legacy Lakesuperior code.

Stefano Cossu e01d1999f7 Minor fixes for Grayspread. %!s(int64=3) %!d(string=hai) anos
.github 89b405fe54 Add release notes template. %!s(int64=6) %!d(string=hai) anos
bin 20d9102627 Docker adjustments. %!s(int64=4) %!d(string=hai) anos
docker 20d9102627 Docker adjustments. %!s(int64=4) %!d(string=hai) anos
docs e785448d1a Tweaks for RTD. %!s(int64=4) %!d(string=hai) anos
ext d5f89c59fd "Simplify" _lookup() and _lookup_1bound(). %!s(int64=5) %!d(string=hai) anos
lakesuperior e01d1999f7 Minor fixes for Grayspread. %!s(int64=3) %!d(string=hai) anos
sandbox 11b18a0ae1 Allow opening a RW transaction inside a RO one. %!s(int64=5) %!d(string=hai) anos
tests 6b71d46b73 LDPR instantiation improvements: %!s(int64=4) %!d(string=hai) anos
.gitignore 22af6a8ed9 Ignore HTML files generated by Cython annotate and LMDB data files. %!s(int64=5) %!d(string=hai) anos
.gitmodules bdfe4bd145 Implement callback iterations; move all callback functions to separate module. %!s(int64=5) %!d(string=hai) anos
.travis.yml 8d9b863ac9 Merge branch 'master' into development %!s(int64=5) %!d(string=hai) anos
Dockerfile 20d9102627 Docker adjustments. %!s(int64=4) %!d(string=hai) anos
LICENSE 2fdc1b902e Initial commit: some boilerplate borrowed from Combine, basic folder structure and documentation. %!s(int64=6) %!d(string=hai) anos
MANIFEST.in 96348cc7cc Add core_config to MANIFEST.in. %!s(int64=4) %!d(string=hai) anos
README.rst 1524d9203b Add release notes; update docs here and there. %!s(int64=5) %!d(string=hai) anos
code_of_conduct.md 84e744b073 Doc update. %!s(int64=6) %!d(string=hai) anos
conftest.py 5dea35d6d3 Config loading and parsing restructuring: %!s(int64=4) %!d(string=hai) anos
docker-compose.yml 20d9102627 Docker adjustments. %!s(int64=4) %!d(string=hai) anos
lmdbtest.py acca1a1a53 Cython (#77) %!s(int64=5) %!d(string=hai) anos
pytest.ini b628f01866 ETags (fixes #75) %!s(int64=5) %!d(string=hai) anos
readthedocs.yml e05f6f41c0 Support for Python 3.6 in readthedocs. %!s(int64=5) %!d(string=hai) anos
requirements.txt b73053368d Prepare for alpha9 %!s(int64=6) %!d(string=hai) anos
requirements_dev.txt 138726115f Update to stomp.py 5.x. %!s(int64=4) %!d(string=hai) anos
requirements_rtd.txt a5e18b0206 Add cymem to requirements_rtd. %!s(int64=5) %!d(string=hai) anos
setup.cfg f0248dee52 Package software. %!s(int64=6) %!d(string=hai) anos
setup.py e01d1999f7 Minor fixes for Grayspread. %!s(int64=3) %!d(string=hai) anos
valgrind-python.supp acca1a1a53 Cython (#77) %!s(int64=5) %!d(string=hai) anos

README.rst

Lakesuperior
============

|build status| |docs| |pypi| |codecov|

Lakesuperior is a Linked Data repository software. It is capable of storing and
managing large volumes of files and their metadata regardless of their
format, size, ethnicity, gender identity or expression.

Lakesuperior is an alternative `Fedora Repository
`__ implementation. Fedora is a mature repository
software system historically adopted by major cultural heritage institutions
which extends the `Linked Data Platform `__
protocol.

Guiding Principles
------------------

Lakesuperior aims at being a reliable and efficient Fedora 4 implementation.

Its main goals are:

- **Reliability:** Based on solid technologies with stability in mind.
- **Efficiency:** Small memory and CPU footprint, high scalability.
- **Ease of management:** Tools to perform migration, monitoring and
maintenance included.
- **Simplicity of design:** Straight-forward architecture, robustness
over features.

Key features
------------

- Stores binary files and RDF metadata in one repository.
- Multi-modal access: REST/LDP, command line and native Python API.
- (`almost `_) Drop-in replacement for Fedora4
- Very stable persistence layer based on
`LMDB `__ and filesystem. Fully
ACID-compliant writes guarantee consistency of data.
- Term-based search and SPARQL Query API + UI
- No performance penalty for storing many resources under the same
container, or having one resource link to many URIs
- Extensible provenance metadata tracking
- Fits in a pocket: you can carry 50M triples in an 8Gb memory stick.

Installation & Documentation
----------------------------

With Docker::

git clone --recurse-submodules https://github.com/scossu/lakesuperior.git
cd lakesuperior
docker-compose up

With pip (requires a C compiler to be installed)::

pip install lakesuperior

The full, current documentation is maintained in `Read The Docs
`__. Please refer to that for more info,
including installation instructions.

.. |build status| image:: http://img.shields.io/travis/scossu/lakesuperior/master.svg?style=flat
:alt: Build Status
:target: https://travis-ci.org/username/repo

.. |docs| image:: https://readthedocs.org/projects/lakesuperior/badge/
:alt: Documentation Status
:target: https://lakesuperior.readthedocs.io/en/latest/?badge=latest

.. |pypi| image:: https://badge.fury.io/py/lakesuperior.svg
:alt: PyPI Package
:target: https://badge.fury.io/py/lakesuperior

.. |codecov| image:: https://codecov.io/gh/scossu/lakesuperior/branch/master/graph/badge.svg
:alt: Code coverage
:target: https://codecov.io/gh/scossu/lakesuperior