mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-02-04 18:32:33 -05:00
fd54eeaeb7552f547d3e20a5c8650cab04e6b6b2
Because this commit’s parent added a few new images, we are now serving at least a handful of images, therefore a few additional HTTP requests. It’s better to combine multiple HTTP requests into one for performance reasons (up to a point). This commit adds an extra step to the preprocessing of SASS files which takes any images it finds, base64 encodes them and inlines them into the distributed CSS files. It also modifies the content security policy to allow inline images.
…
…
…
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%