Skip to content

GSA/notifications-admin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

US Notify Admin

Cloned from the brilliant work of the team at GOV.UK Notify, cheers!

US Notify admin application - https://notifications-admin.app.cloud.gov (contact team for access)

  • Register and manage users
  • Create and manage services
  • Send batch emails and SMS by uploading a CSV
  • Show history of notifications

QUICKSTART


NOTE: Set up the notifications-api repo locally FIRST, you'll need both the docker network it provides and a functioning api to make use of the notifications-admin repo. It is expected as a byproduct of getting notifications-api running you will also be running VS Code and the Remote Containers extension, and that docker daemon is running and the API is as well.

Open the notifications-admin repo in VS Code (File->Open Folder, select notifications-admin folder)

create a .env file as detailed in the .env Setup section below

Using VS Code's command pallette (cmd+shift+p), search "Remote Containers: Open folder in Container..."

choose devcontainer-admin folder (note: this is a subfolder of notifications-admin/). This will open a new window, closing the current one in the process. After the new window loads, hit "show logs" link in the bottom-right. If this is the first build it will take a few minutes to create the image. The process completes shortly after running gulp.js and compiling front-end files.

Select View->Open View..., then search/select “ports”. Await a green dot on the port view, then open a new terminal and run the web server: make run-flask

Visit localhost:6012

NOTE: any .py code changes you make should be picked up automatically in development. If you're developing JavaScript code, open another vscode terminal and run npm run watch to achieve the same.


.env Setup

create a .env file using sample.env as a template cp sample.env .env (or via VS Code file browser)

from the notifications-api checkout, copy the values in that repo's .env file for AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY into this repo's .env file.

Change BASIC_AUTH_USERNAME and BASIC_AUTH_PASSWORD to what you'd like them to be for this deployment.

To test the application

From a terminal within the running devcontainer:

# run all the tests
make test

# continuously run js tests
npm run test-watch

To run a specific JavaScript test, you'll need to copy the full command from package.json.

Running a11y-scans locally

Unlike most of the tests and scans, pa11y-ci cannot currently be run from within the VSCode dev container.

  1. Run make run-flask from within the devcontainer
  2. Run make a11y-scan from your host computer.

Further docs [STILL UK DOCS]

License && public domain

Work through commit 543be77 is licensed by the UK government until the MIT license. Work after that commit is in the worldwide public domain. See LICENSE.md for more information.

Contributing

As stated in CONTRIBUTING.md, all contributions to this project will be released under the CC0 dedication. By submitting a pull request, you are agreeing to comply with this waiver of copyright interest.