Skip to content

ministryofjustice/hmpps-external-movements-ui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

287 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

HMPPS External Movements UI

Ministry of Justice Repository Compliance Badge Docker Repository on ghcr

A frontend application for HMPPS prison staff to manage and track external prisoner movements.

Overview

This service allows prison staff to:

  • Record and manage external prisoner movements
  • Track prisoner movements in and out of prisons
  • View movement history and audit logs

Getting Started

Installation

npm ci

Configuration

Create a copy of the .env.example file:

cp .env.example .env

Update the environment variables in .env to match your environment.

Running Locally

Using Docker compose:

docker compose pull
docker compose up

Or run the application directly:

npm run start:dev

The application will be available at http://localhost:3000

Development

Build

npm run build

Run Tests

Unit Tests

npm run test

Integration Tests

For local running, start a wiremock instance by:

docker compose -f docker-compose-test.yml up

Install Playwright if it has not been installed previously:

npx playwright install

Then run the server in test mode by:

npm run start-feature:dev
npm run int-test

Or run tests with the Playwright UI: npm run int-test-ui

By default, playwright will run in 8 parallel workers. This can be changed by setting the PARALLEL_WORKERS environment variable in your shell (ie, ~/.zshrc or ~/.zprofile).

Code Quality

npm run lint

npm run lint-fix

Syncing API Types With Swagger

Run npm run swagger-external-movements to pull the latest typedefs from the api backend.

Deployment

This application is deployed to the Cloud Platform using Helm charts located in helm_deploy/. Environment configurations:

Project Structure

├── server/              # Server-side code
│   ├── routes/          # Route controllers and views
│   ├── services/        # Business logic
│   ├── data/            # Data access layer
│   ├── middleware/      # Express middleware
│   └── views/           # Nunjucks templates
├── assets/              # Frontend assets (JS, SCSS, images)
├── integration_tests/   # Playwright integration tests
├── esbuild/             # Build configuration
└── helm_deploy/         # Kubernetes deployment configs

License

MIT License — see LICENSE for more details.

Support

For issues or questions, contact the HMPPS Digital team.

About

Allows for the scheduling, management and enquiry of various types of External Movements within the DPS Platform. (bootstrapped 2025-07-23)

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors