Catalyst Notify admin application - https://notifications.thecatalyst.org.uk/
- Register and manage users
- Create and manage services
- Send batch emails and SMS by uploading a CSV
- Show history of notifications
At the moment we run Python 3.6 in production.
brew install node
NPM is Node's package management tool. n
is a tool for managing different versions of Node. The following installs n
and uses the long term support (LTS) version of Node.
npm install -g n
n lts
In the root directory of the application, run:
echo "
export NOTIFY_ENVIRONMENT='development'
export FLASK_APP=application.py
export FLASK_ENV=development
export WERKZEUG_DEBUG_PIN=off
"> environment.sh
To run parts of the app, such as uploading letters, you will need appropriate AWS credentials. See the Wiki for more details.
In the root directory of the application, run:
# install dependencies, etc.
make bootstrap
# run the web app
make run-flask
Then visit localhost:6012.
Any Python code changes you make should be picked up automatically in development. If you're developing JavaScript code, run npm run watch
to achieve the same.
# install dependencies, etc.
make bootstrap
# 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
.
requirements.txt
is generated from the requirements.in
in order to pin versions of all nested dependencies. If requirements.in
has been changed, run make freeze-requirements
to regenerate it.