mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-02-05 02:42:26 -05:00
c858869a523349c6eeecc8a157948b3badea2deb
Refactored the forms so that fields like email_address can be used in multiple forms. Refactored form validation so that a query function is passed into the form to be run, this way the form is not exposed to the dao layer and the query is more efficient. This PR still requires some frontend attention. Will work with Chris to update the templates.
…
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
Create a virtual environment for this project
mkvirtualenv -p /usr/local/bin/python3 notifications-admin
Building the frontend
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
Most of the frontend dependencies are managed using Git Submodules. Some are managed with NPM and Bower. To install or update all the things, run
git submodule init
git submodule update
npm install
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:
pip install -r requirements.txt
./scripts/bootstrap.sh
./scripts/run_app.sh
Note: the ./scripts/bootstrap.sh script only needs to be run the first time to create the database.
URL to test app:
localhost:6012/helloworld
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%