Legacy Lakesuperior code.

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

README.md


title: Lakesuperior

This repository is no longer under active development. It is kept here for historical reference. The effort to build a compact asset repository has been moved to [https://git.knowledgetx.com/scossu/lsup_repo].

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.