Tools to help students make informed financial decisions about college.
- Status: Alpha
- This project is under construction. Please wear a hardhat.
This project is not fully functional, but feel free to give it a spin. Here's how:
- Install the setup dependencies if you don't have them.
- Go to the local directory where you want the project to be created, make a virtual environment, clone this repository (or your own fork of it).
mkvirtualenv college-costs
git clone https://github.com/cfpb/college-costs.git .
setvirtualenvproject
- Set up front-end resources and database assets:
./local_setup.sh
- If you want the college-search function to work (you know you do), you'll need to prep and fire up solr.
Adust thebuild_solr_schema
command to match your local installation of solr and your solr version number.
The example is for a brew-installed solr, with brew using the user's home director as its Cellar site and solr version 4.10.2.
Be sure you're in the projects root directory,/college-costs/
:
./manage.py build_solr_schema > ~/homebrew/Cellar/solr/4.10.2/example/solr/collection1/conf/schema.xml
solr start
The last step is to rebuild the solr index:
./manage.py rebuild_index --noinput
- After that finishes, fire up a local web server:
./manage.py runserver
The college-cost tools should show up at http://127.0.0.1:8000/paying-for-college/
The app is set up to run as a component of CFPB's website, consumerfinance.gov, so if you run it locally, some fonts and font-related icons may not load because of Cross-Origin Resource Sharing policies.
You can run python tests from the project root with this command:
./pytest.sh
To run JavaScript unit tests:
npm test
To run functional tests, you need to make sure that you have version 4.0+ of Node.js. Install/upgrade it using either npm
or brew
.
You'll also need webdriver-manager and protractor:
npm install -g webdriver-manager protractor
webdriver-manager update --standalone
To run the tests:
# start webdriver in a terminal tab:
webdriver-manager start
# if you're running it on a localhost, in a fresh tab:
python manage.py runserver
# and in a third tab:
protractor test/functional/conf.js
If you find a bug or see a way to improve the project, we'd love to hear from you. Add an issue, or fork the project and send us a pull request with your suggested changes.
This project is based on the current CFPB Paying for College suite of tools for students.