After the recent incident, we have restored access to the website from outside the CERN network, however access from certain worldwide locations is still being blocked.

CERN Accelerating science

Hacking Invenio

Welcome to the Invenio Developers' corner. Before diving into the source, make sure you don't miss our user-level and admin-level documentation as well. And now, back to the source, and happy hacking!

General information, coding practices

Common Concepts
Summarizing common terms you will encounter here and there.
Coding Style
A policy we try to follow, for good or bad.
Release Numbering
Presenting the version numbering scheme adopted for Invenio stable and development releases.
Directory Organization
How the source and target directories are organized, where the sources get installed to, what is the visible URL policy, etc.
Modules Overview
Presenting a summary of various Invenio modules and their relationships.
Test Suite
Describes our unit and regression test suites.

For more developer-related information, be sure to visit Invenio wiki.

Module-specific information

BibAuthorID Internals
Describes information useful to understand how BibAuthorID works.
BibAuthority Internals
Describes information useful to understand how BibAuthority works.
BibClassify Internals
Describes information useful to understand how BibClassify works, the taxonomy extensions we use, how the keyword extraction algorithm works.
BibConvert Internals
Describes information useful to understand how BibConvert works, and the BibConvert functions can be reused.
BibFormat Internals
Describes information useful to understand how BibFormat works.
BibRank Internals
Describes information useful to understand how the various ranking methods available in bibrank works, and how they can be tweaked to give various output.
BibSort Internals
Describes information useful to understand how BibSort module works and how various data manipulations are done, stored and retrieved.
BibRecord Internals
Describes information useful to manipulate single records.
BibDocFile Internals
Describes information useful to manipulate documents within records.
MiscUtil Internals
Describes information useful to understand what can be found inside the miscellaneous utilities module, like database access, error management, date handling library, etc.
WebJournal Internals
Describes the WebJournal database and required MARC tags for article records.
WebSearch Internals
Describes information useful to understand the search process internals, like the different search stages, the high- and low-level API, etc.
WebAccess Internals
Describes information useful to understand the access control process internals, its API, etc.
WebStyle Internals
Describes how to customize WebDoc files, etc.
WebSubmit Internals
Describes information useful to understand the document submission internals.
BibSched Internals
Describes information useful to understand the bibliographic task scheduler internals.