Skip to main content

This is a CLI tool for building the Nottingham New Theatre's History Project content database.

Project description

History Project API Generator

This project generates a JSON API from the history-project content repository. It does that in two steps:

  • load: Generate a sqlite database from the source files.
  • dump: Use that database to generate a JSON API.

Endpoints

Usage

From source

  • Ensure you have Poetry installed.
  • Run poetry install.
  • Clone the history project repository into the content/ directory. You can do a shallow clone for this: GIT_LFS_SKIP_SMUDGE=1 git clone --depth 1 --branch master git@github.com:newtheatre/history-project content.
  • Run ./nthp load to generate the sqlite database from the content files.
  • Run ./nthp dump to generate the API from the database into the dist/ directory.

From PyPi

  • With pip installed run pip install --user nthp-api. If you have your local bin folder on your path you should now be able to run nthp.
  • Within the history-project repo run nthp load to generate the sqlite database from the content files.
  • Run nthp dump to generate the API from the database into the dist/ directory.

Alternatively you can run nthp build to run both steps in one go.

Contributing

pre-commit hooks

pre-commit hooks are used to lint the source code using Black and ruff

  • Ensure you have pre-commit installed.
  • Run pre-commit install to install pre-commit hooks.

Tests

Run pytest or use the included PyCharm run configuration.

Release

See the bin/release.sh script for the release process. This assumes that your local machine has the correct credentials to publish to PyPi.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nthp_api-0.1.8.tar.gz (28.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nthp_api-0.1.8-py3-none-any.whl (36.7 kB view details)

Uploaded Python 3

File details

Details for the file nthp_api-0.1.8.tar.gz.

File metadata

  • Download URL: nthp_api-0.1.8.tar.gz
  • Upload date:
  • Size: 28.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.6 Linux/5.19.0-46-generic

File hashes

Hashes for nthp_api-0.1.8.tar.gz
Algorithm Hash digest
SHA256 1a27e7f901220e7601c28ad2cee2fd3e0c694ac41d51046ad26a32cefce8bd80
MD5 b5b280a5a6755757198b8912cfa2ba3c
BLAKE2b-256 62eabbd3e75b2a50867c4d8ba537cef177ca146046d5bc5cabe8e7ece0030d96

See more details on using hashes here.

File details

Details for the file nthp_api-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: nthp_api-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 36.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.6 Linux/5.19.0-46-generic

File hashes

Hashes for nthp_api-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 73d61e658d88a5d80843d7531575e5244ac0160903be0063dfb765f86fb7ce8f
MD5 9db8591220a757bff74ece0b250b3bf0
BLAKE2b-256 a12887a603891cce8d573f9e226b076c330018c69d7dea6866ecf05b932c235f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page