RockefellerArchiveCenter / cartographer_backend

Backend for Cartographer app

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

cartographer_backend

An Django application which provides a backend API to manage JSON tree representations of all archival collections, sub-collections, and parts (record group, subgroup, series, subseries, etc.) by a designated agent/creator ("arrangement maps" for short).

cartographer_backend is part of Project Electron, an initiative to build sustainable, open and user-centered infrastructure for the archival management of digital records at the Rockefeller Archive Center.

Build Status

Local Development

Install git and clone the repository

$ git clone https://github.com/RockefellerArchiveCenter/cartographer_backend.git

With Docker installed, run docker-compose from the root directory

$ docker-compose up

Once the application starts successfully, you should be able to access the application in your browser at http://localhost:8000

When you're done, shut down docker-compose

$ docker-compose down

Or, if you want to remove all data

$ docker-compose down -v

Routes

Method URL Parameters Response Behavior
GET /maps modified_since - returns only maps modified since the time provided (as a Unix timestamp)
published - if present, returns only published maps
200 Returns a list of maps, ordered by most recent first
GET /delete-feed deleted_since - returns only maps deleted since the time provided (as a Unix timestamp) 200 Returns a list of deleted maps, ordered by most recent first
GET /status 200 Returns the status of the application
GET /schema.json 200 Returns the OpenAPI schema for this application

Development

This repository contains a configuration file for git pre-commit hooks which help ensure that code is linted before it is checked into version control. It is strongly recommended that you install these hooks locally by installing pre-commit and running pre-commit install.

License

This code is released under an MIT License.

About

Backend for Cartographer app

License:MIT License


Languages

Language:Python 69.0%Language:HTML 21.5%Language:Shell 8.0%Language:Dockerfile 1.0%Language:CSS 0.5%Language:JavaScript 0.0%