This project currently serves as a template spring API, build with gradle, with the following properties:
- Building with Circle CI (see circle.yml).
- Deployment with Heroku (see Procfile).
It can be forked and refactored for use as the basis of other projects.
This is a quickstart guide to help you get up and running with development of the ProRata-API.
You will need to have set up the ProRata-Database, which currently uses PostgreSQL 9.4.
- I recommend using IntelliJ IDEA for development.
- Import the project into IDEA, and you should be ready to go!
One of the benefits of IntelliJ IDEA is easy database management from the IDE. This can be achieved in the following way:
- Select View > Tool Windows > Databases. This will pin the Databases tool window to the right hand side of the IDE main screen.
- In the tool window, selet New (green plus symbol) > Data Source > PostgreSQL.
- Connect to your local development database using your local ProRata database credentials. For example, the following may be used (although please be secure with your local database credentials):
- Host: localhost
- Database: ProRata
- User: postgres
- Password: postgres
- URL: jdbc:postgresql://localhost:5432/postgres
- Ensure that you have downloaded the PostgreSQL driver JAR for use with IntelliJ IDEA. This can be achieved from within the same new database connection window, by clicking the "PostgreSQL" link, and in the new dialogue clicking the "Download" button under the "Driver files" section.
- It's a good idea to test your connection before saving the new connection. This can be done in the credentials dialogue by using the "Test Connection" button.
Currently, all that is needed to deploy to Heroku is to push to master! Github will push new commits out to CircleCI, which will push successful builds to Heroku.
- The progress of the build can be seen at the API's CircleCI dashboard.
- The testing deployment of the API is online at The project's Heroku dashboard.
Naturally, you will need log-in information for these sites. Please contact the project lead, Daniel Pawsey, at [email protected] for these.