Introduction to Invenio

What is a Registry?

Registries are used as a mechanism to support pluggable architecture using Python packages. A registry item is a Python package, class, function or file that is registered with application.

Registries can be configured in several ways. Usually using a config variable or entry_points.

A Invenio instance can consist of multiple packages, giving way to high adaptability and horizontal scaling.

What do I need?

Invenio requires a relational database backend to store information. MySQL or PostgreSQL (coming soon) are required for basic functionality, but there’s also support for a MongoDB of other experimental NoSQL solutions, including using SQLite for local development.

Get Started

If this is the first time you’re trying to use Invenio, or you are new to Invenio 2.0 coming from previous versions then you should read our getting started tutorials: