Skip to content

ministryofjustice/analytical-platform

Repository files navigation

Ministry of Justice Analytical Platform

repo standards badge OpenSSF Scorecard

About this repository

The Analytical Platform provides users with a place to store, ingest and consume data.

This repository holds the Ministry of Justice’s Analytical Platforms published technical documentation and code to build the analytical infrastructure for our users.

For more information on the Analytical Platform please see the user guidance.

Analytical Platform repositories

We have a series of repositories for our work. We have adopted the naming convention of naming each repository starting with analytical-platform-*.

We also name things so that users can understand what a repository does through its name.

The repositories we manage with terraform see here.

Name Description
Analytical Platform (this repository) Analytical Platform infrastructure, public facing documentation, feature work, enhancements, and issues
Analytical Platform Actions Runner contains the GitHub Actions Runner image used by the Analytical Platform
Analytical Platform App Cloud Platform Deployment Template for Cloud Platform deployments of Analytical Platform Apps
Analytical Platform Auth Proxy This repository contains the authentication proxy image used by the Analytical Platform
Analytical Platform Control Panel The Control Panel is a management tool which provides Data Analysts and Data Scientists data management and tooling
Analytical Platform Dashboard The AP Dashboard is still in development
Analytical Platform GitHub Access This repository controls access to the Data Platform Service Area's GitHub which includes, Analytical Platform, Data Catalogue and Data Engineering's access to the Analytical Platform
Analytical Platform image build template contains the GitHub Actions Runner image used by the Analytical Platform
Analytical Platform Ingestion Notify Image for the Analytical Platform Ingestion service. It is deployed as an AWS Lambda function within the analytical-platform-ingestion account
Analytical Platform Ingestion Scan This repository contains the image used in the Analytical Platform Ingestion service. It is deployed as an AWS Lambda function within the analytical-platform-ingestion account and is called as part of the AWS Transfer Family Server workflows
Analytical Platform Ingestion Transfer This repository contains the image used in the Analytical Platform Ingestion service. It is deployed as an AWS Lambda function within the analytical-platform-ingestion account
Analytical Platform JML report Creates a joiners movers leavers report
Analytical Platform Jupyter Notebook image This repository contains the Jupyter Notebook image image used by the Analytical Platform
Analytical Platform Kubectl image This repository contains the GitHub Kubectl image used by the Analytical Platform
Analytical Platform RShiny base image This repository contains the GitHub RShiny Open Source Base image used by the Analytical Platform
Analytical Platform RStudio image This repository contains the RStudio image used by the Analytical Platform
Analytical Platform support This repository is used for support and provides templated forms for our users
Analytical Platform User Guidancel User guidance for the Analytical Platform which is hosted on GitHub Pages here
Analytical Platform Visual Studio Code This repository contains the Visual Studio Code image used by the Analytical Platform
Data Platform Services GitHub Access This repository manages access to Data Platform Service Area's GitHub including Analytical Platform, Data Catalogue and Data Engineering's access to Analytical Platform
Modernisation Platform environments repository Hosting environment for the Analytical Platform

Useful links

It may be also useful to look at:

Getting in touch

We are currently in the research and design phase, and are not yet accepting requests to host new data products.

In the meantime please get in touch via our #analytical-platform Slack channel with any questions.

Incident contact details

Slack: #ask-analytical-platform Email: [email protected]

Service team contact

As above - preferably our Slack channel: #ask-analytical-platform (or email [email protected])

Hosting environment

Modernisation Platform

Editing and publishing the Technical Documentation

The published documentation is created by editing *.html.md.erb files, found in the source folder.

The syntax is Markdown, more details can be found here.

While editing the files locally, you can start a Docker container that will use Middleman to act as a server hosting the web pages. See preview docs.

Every change should be reviewed in a pull request, no matter how minor. PR request reviewer/s should be enabled within the main branch protection settings.

Merging the changes to the main branch automatically publishes the changes via GH Action. See publishing.

Preview docs

You can preview how your changes will look, if you've cloned this repository to your local machine, run this command:

make preview

This will run a preview web server on http://localhost:4567 which you can open in your browser.

Use bash scripts/docs/docker.sh check to compile the site to HTML and check the URLs are valid.

This is only accessible on your computer, and won't be accessible to anyone else.

For more details see the tech-docs-github-pages-publisher repository.

Publishing

Any changes you push/merge into the main branch should be published to GitHub Pages site automatically.

Template configuration

The web page layout is configured using the config/tech-docs.yml file.

The template can be configured in config/tech-docs.yml

Further configuration options are described on the Tech Docs Template site: Global Configuration.

Contributing

Please read the contributing guide before sending pull requests, or creating issues.