Case study for PlanB Consulting

MITS

A new simulator built to replace PlanB's previous one. During crisis-management exercises, PlanB's facilitators publish news stories, social media posts and emails into a closed copy of the outside world, and the organisation's team responds as the scenario unfolds.

Media Incident Training Simulator, for PlanB Consulting

What it does

  • News, Twitter, Facebook, email and web page templates
  • Facilitators post and reply in real time while the exercise runs
  • Invented personas to comment, question and troll
  • Separate views for facilitators, participants and administrators, with feedback after each exercise

Administrators set up exercises and manage facilitators, participants and personas.

How it fits together

  1. People

    • Facilitators
    • Participants
    • Administrators
  2. Front end

    • React app, rendered on AWS Lambda
    • Static files in S3
  3. API

    • GraphQL on Lambda
    • API Gateway for requests
    • API Gateway WebSockets for live updates
  4. Data and security

    • DynamoDB
    • S3 for uploads
    • Cognito sign-in
    • KMS encryption keys
How MITS fits together, from the people using it to where its data is kept. All of it is defined in Terraform and managed with Terragrunt.

How it's built

  • A React front end, rendered on the server by AWS Lambda, with its static files in S3.
  • A GraphQL API on Lambda behind API Gateway, with real-time updates over API Gateway WebSockets.
  • Data in DynamoDB, uploads in S3, sign-in with Cognito and encryption keys in KMS.
  • Infrastructure defined in Terraform and Terragrunt, checked with Checkov, with dependency updates from Dependabot.
  • React
  • GraphQL
  • AWS Lambda
  • API Gateway WebSockets
  • DynamoDB
  • S3
  • Cognito
  • Terraform

Tell us what you're building.

Email us about your project: what it needs to do, who it's for and when you'd like it live.