-
Notifications
You must be signed in to change notification settings - Fork 4
Contributing
So you want to contribute code to FindingAids? Awesome! We encourage the following for getting enhancements/fixed incorporated into FindingAids.
- Browse the source
- Report bugs on GitHub Issues
- Fork the repo and submit a pull request on GitHub, bonus points for increasing the testing coverage
[We]((https://coveralls.io/r/NYULibraries/findingaids)
love
tests.
Seriously.
Please make sure you have tests to accompany your code changes.
A pull request with just a failing test is lovely.
A pull request with just code changes and no tests is whatever the opposite of lovely is.
Tests are in test
.
For testing framework, we use the default Rails mechanisms.
For deterministic HTTP testing we use VCR.
Just a development environment currently.
We use Jenkins and capistrano to deploy our code, so once your pull request has been merged, the changes will be pushed automatically to the appropriate environment. For quick deployment we have a set of shared deployment scripts.
There are many different parts to FindingAids, which means plenty of opportunities to contribute to improving the application. The main components are detailed below.
This being a rails application, UI components are in app/views
and app/assets
. At the NYU Division of Libraries we have a
shared set of layouts and assets that we leverage across applications so
you may want to start there.
Keep in mind we use Twitter's Bootstrap front-end framework to, well, bootstrap our UI.
We use Blacklight functionality for searching WebSolr. Blacklight allows for complete overrides of controllers and helper functions, so the best way to change or customize search functionality is by familiarizing yourself with the original Blacklight function and tweak from there.