Project Electron is an initiative to build sustainable, open, and user-centered infrastructure for the archival management of digital records at the Rockefeller Archive Center.
Project Electron consists of a specification and web application to facilitate ongoing transfers of digital records and their associated metadata from organizations to archives, a repository to store digital records and metadata, an API layer to manage system interactions, and integrations with current and future systems which assist in the archival processes of appraisal, acquisition, arrangement, description, access and preservation.
Read the project values and see our licensing principles and approaches.
See our Guide to Digital Transfer to learn more about the process for transferring digital records to the archives.
A Django web application to support and regularize the ongoing secure transfer of digital records and their metadata to the archives. Explore the Aurora user documentation and find the code in the Aurora GitHub repository.
An API gateway, microservice applications, and supporting libraries which enable integrations between current and future systems and assist in the archival processes of accessioning, preservation, and discovery. Explore all Project Electron repositories on GitHub.
- zodiac: an API gateway and administration interface for Project Electron microservices, managed via a message queue.
- ursa major: discovers and stores bags.
- fornax: creates Archivematica-compliant Submission Information Packages.
- gemini: downloads packages from the Archivematica Storage Service and stores them in Fedora.
- aquarius: transforms and delivers accessions, archival objects and digital objects to ArchivesSpace.
- libra: generates reports on files and activities in Fedora.
- zorya: creates bags from files generated by disk imaging and digitization processes.
- aquila: stores, calculates, and assigns PREMIS rights statements.
DIMES is a React web application which provides the front-end user interface for the online discovery of archival collections, objects, and agents.
The Request Broker processes and delivers request data submitted by users from an archival discovery environment.
Cartographer manages JSON tree representations of all the archival collections, sub-collections, and parts (record group, subgroup, series, subseries, etc.) by a designated agent/creator.
A data pipeline which fetches data from ArchivesSpace, transforms it according to our data model, indexes it in Elasticsearch, and serves it up via an API.
- pisces: retrieves, merges and transforms data for discovery.
- scorpio: adds and deletes archival data (collections, objects, agents and terms) from an Elasticsearch index.
- argo: provides a wrapper around the Elasticsearch REST API, and adds additional endpoints required by the DIMES user interface.
- asterism: helpers and common patterns used in Project Electron infrastructure.
- Electron Bonder: client library for working with the Project Electron APIs built using ArchivesSnake.
- rac_es: helpers for Elasticsearch.
- rac-schemas: JSON schemas and validation helpers.
- IIIF pipeline: a pipeline to create image derivatives and IIIF Manifests.
Our model for archival data is based on the Portland Common Data Model (PCDM). Check out the working model overview and JSON schema validations in the RAC Schemas Repository.
All code and documentation are available under the MIT license, and all documentation is available under the CC0 license.