mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-02-07 20:03:33 -05:00
fc09750662bf72c707db4cf2ca748e620b47d2af
We only want static files to not come from the browser cache when they have changed. The best way to do this is by cache busting the URLs. Otherwise, we want static files to be cached for a long time. This commit sets the `Expires` HTTP header to 1 year in the future. Previously it was set to 12 hours, the default. From the Flask docs: > Default cache control max age to use with send_static_file() (the default > static file handler) and send_file(), in seconds. Override this value on a > per-file basis using the get_send_file_max_age() hook on Flask or Blueprint, > respectively. Defaults to 43200 (12 hours).
…
…
notifications-admin
Application to handle the admin functions of the notifications application.
Features of this application
- Register users
- Register services
- Download CSV for an email or SMS batch
- Show history of notifications
- Reports
First-time setup
You need Node which will also get you NPM, Node's package management tool.
brew install node
n is a tool for managing different versions of node. The following installs n and uses the latest version of node.
npm install -g n
n latest
npm rebuild node-sass
The frontend dependencies are managed using NPM and Bower. To install or update all the things, run
npm install
npm run build
The app runs within a virtual environment. To install virtualenv, run
[sudo] pip install virtualenv
To make a virtualenv for this app, run
mkvirtualenv -p /usr/local/bin/python3 notifications-admin
pip install -r requirements.txt
./scripts/bootstrap.sh
Building the frontend
If you want the front end assets to re-compile on changes, leave this running in a separate terminal from the app
npm run watch
Running the application
workon notifications-admin
./scripts/run_app.sh
Then visit localhost:6012
Domain model
All the domain models are defined in the models.py file.
Description
Languages
Python
69.3%
HTML
16.6%
JavaScript
11.1%
SCSS
0.9%
Nunjucks
0.7%
Other
1.4%