This is a Rails application with a Postgres database containing both API endpoints and web views. The API is a JSON REST API. The web app and the API use the same database.
We use Elasticsearch to search for manifest records. Elasticsearch offloads read-access from the database and provides full-text search capabilities painful to apply directly to a database.
Redis is used for Sidekiq job processing. The Redis + Sidekiq solution offloads the database/Elasticsearch syncing to an async process.
Here are some tips and resources for getting started on this project. Note not all resources are available to people outside of the EPA / 18F for security reasons.
- Join the
#c-epa-emanifest
and#e-manifest-partners
channels in the 18F Slack organization. - Ask in Slack for the Vendor Onboarding document for background on the problem space.
- Read the project brief.
- Make sure you're added to the Trello board.
- Set up the app using the instructions in CONTRIBUTING.md.
This project is in the worldwide public domain. As stated in CONTRIBUTING:
This project is in the public domain within the United States, and copyright and related rights in the work worldwide are waived through the CC0 1.0 Universal public domain dedication.
All contributions to this project will be released under the CC0 dedication. By submitting a pull request, you are agreeing to comply with this waiver of copyright interest.