Giter Site home page Giter Site logo

nationalarchives / ds-caselaw-privileged-api Goto Github PK

View Code? Open in Web Editor NEW
2.0 4.0 2.0 675 KB

An API to the National Archives Find Case Law service

Home Page: https://api.caselaw.nationalarchives.gov.uk/docs

License: MIT License

Dockerfile 0.81% Python 99.01% Shell 0.17%
api caselaw find-caselaw national-archives

ds-caselaw-privileged-api's Introduction

The National Archives: Find Case Law

This repository is part of the Find Case Law project at The National Archives. For more information on the project, check the documentation.

API Server

Exposing an API to archived case law.

Requirements.

Python >= 3.12

Installation & Usage

Ensure that the MARKLOGIC_API_CLIENT_HOST environment is set to point at the Marklogic server.

This project uses Poetry to manage dependencies. You can install them with poetry install, and access a virtual environment with poetry shell.

To run the server, run script/server; open http://localhost:8080/ in a browser

Documentation

Run the server and check http://localhost:8080/docs/

Running with Docker (untested)

To run the server on a Docker container, please execute the following from the root directory:

docker-compose up --build

Tests

Run script/test

Linting

Run pre-commit install to set up linting, and/or copy the pre-push.sample file to .github/hooks/pre-push

Deployment

Staging

The main branch is automatically deployed with each commit. The deployed API Swagger docs can be viewed at https://api.staging.caselaw.nationalarchives.gov.uk/docs

Production

To deploy to production:

  1. Create a new release.
  2. Set the tag and release name to vX.Y.Z, following semantic versioning.
  3. Publish the release.
  4. Automated workflow will then force-push that release to the production branch, which will then be deployed to the production environment.

The production Swagger API docs are at https://api.caselaw.nationalarchives.gov.uk/docs

ds-caselaw-privileged-api's People

Contributors

anthonyhashemi avatar dependabot[bot] avatar dragon-dxw avatar jacksonj04 avatar lozette avatar renovate[bot] avatar rjw1 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

rjw1 qinghao-guan

ds-caselaw-privileged-api's Issues

Action Required: Fix Renovate Configuration

There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.

Error type: Preset is invalid JSON (github>nationalarchives/ds-find-caselaw-docs)

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Pending Approval

These branches will be created by Renovate only once you click their checkbox below.

  • Update dependency ds-caselaw-marklogic-api-client to v23
  • Update dependency lxml to v5
  • ๐Ÿ” Create all pending approval PRs at once ๐Ÿ”

Awaiting Schedule

These updates are awaiting their schedule. Click on a checkbox to get an update now.

  • Lock file maintenance

Pending Status Checks

These updates await pending status checks. To force their creation now, click the checkbox below.

  • Update dependency requests to v2.32.3

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

docker-compose
docker-compose.yaml
dockerfile
Dockerfile
  • python 3.12
github-actions
.github/workflows/ci.yml
  • actions/checkout v4
  • actions/setup-python v5
  • pre-commit/action v3.0.1
  • actions/checkout v4
  • actions/setup-python v5
  • abatilo/actions-poetry v3.0.0
.github/workflows/codeql.yml
  • actions/checkout v4
  • github/codeql-action v3
  • github/codeql-action v3
  • github/codeql-action v3
.github/workflows/release.yml
  • actions/checkout v4
.github/workflows/secrets.yml
  • actions/checkout v4
pep621
pyproject.toml
poetry
pyproject.toml
  • python >=3.12, <4
  • fastapi >=0.103.2
  • python-dotenv >=1.0.0
  • ds-caselaw-marklogic-api-client 18.0.0
  • django-environ >=0.11.2
  • requests >=2.31.0
  • requests-toolbelt >=1.0.0
  • lxml >= 4.9.3
  • httpx >= 0.25.0
  • uvicorn >= 0.23.2
  • pytest ^8.0.0
pre-commit
.pre-commit-config.yaml
  • pre-commit/pre-commit-hooks v4.6.0
  • psf/black 24.4.2
  • astral-sh/ruff-pre-commit v0.4.5
  • pre-commit/mirrors-mypy v1.10.0

  • Check this box to trigger a request for Renovate to run again on this repository

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.