Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/defra/data-returns-api-platform
https://github.com/defra/data-returns-api-platform
Last synced: 6 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/defra/data-returns-api-platform
- Owner: DEFRA
- License: other
- Created: 2018-08-23T08:53:52.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2021-12-14T10:42:36.000Z (almost 3 years ago)
- Last Synced: 2024-04-14T07:53:10.070Z (7 months ago)
- Language: Java
- Size: 223 KB
- Stars: 1
- Watchers: 7
- Forks: 2
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Data Returns API Platform
[![Build Status](https://travis-ci.org/DEFRA/data-returns-api-platform.svg?branch=master)](https://travis-ci.org/DEFRA/data-returns-api-platform)
[![Maintainability](https://api.codeclimate.com/v1/badges/58078d7827cdeaefe0f0/maintainability)](https://codeclimate.com/github/DEFRA/data-returns-api-platform/maintainability)
[![Test Coverage](https://api.codeclimate.com/v1/badges/58078d7827cdeaefe0f0/test_coverage)](https://codeclimate.com/github/DEFRA/data-returns-api-platform/test_coverage)
[![Jitpack.io](https://jitpack.io/v/DEFRA/data-returns-api-platform.svg)](https://jitpack.io/#DEFRA/data-returns-api-platform)
[![Licence](https://img.shields.io/badge/Licence-OGLv3-blue.svg)](http://www.nationalarchives.gov.uk/doc/open-government-licence/version/3)The API platform provides a framework for developing RESTful API's using Spring Data REST for Java.
It provides a number of sensible defaults for both the API configuration and for building and verifyng API's which use this platform.
A RESTful API can be produced using this framework by simply defining the required data model using JPA (Java Persistence Annotations) and supplying a matching liquibase XML changelog to manage database migrations.
## Cloning
Cloning via SSH from behind a corporate firewall which blocks port 22:
```bash
git clone ssh://[email protected]:443/DEFRA/data-returns-api-platform
```## Prerequisites
- Java 1.8
- (Optional) Maven 3.52 or greater (or use the supplied mvnw wrapper)## Create a new API using the data-returns-api-platform
This project can be included using the [Jitpack](https://jitpack.io/) repository.
An example pom.xml using Jitpack to include the necessary dependencies:
```xml4.0.0
com.github.DEFRA.data-returns-api-platform
api-parent
{COMMIT_ID/RELEASE/TAG}
com.example
example-api
1.0.0
jarExample API
jitpack.io
https://jitpack.io
jitpack.io
https://jitpack.io
com.github.DEFRA.data-returns-api-platform
api-common
{COMMIT_ID/RELEASE/TAG}
com.github.DEFRA.data-returns-api-platform
api-common
{COMMIT_ID/RELEASE/TAG}
test-jar
testcommons
test
```
## Generating site reports
To generate all site reports to target/site:```bash
./mvnw verify site
```This report includes:
| Document | Description |
| --- | --- |
|Javadoc | Javadoc API documentation. |
|Test Javadoc | Test Javadoc API documentation.|
|Surefire Report | Report on the test results of the project.|
|Failsafe Report | Report on the integration test results of the project. |
|Checkstyle | Report on coding style conventions.|
|Source Xref | HTML based, cross-reference version of Java source code.|
|Test Source Xref | HTML based, cross-reference version of Java test source code.|
|FindBugs | Generates a source code report with the FindBugs Library.|
|JaCoCo | JaCoCo Coverage Report.|To include the OWASP dependency security report:
```bash
./mvnw -P full-verify verify site
```In addition to the reports listed above, this includes:
| Document | Description |
| --- | --- |
|dependency-check |Generates a report providing details on any published vulnerabilities within project dependencies. This report is a best effort and may contain false positives and false negatives.|## Contributing to this project
If you have an idea you'd like to contribute please log an issue.
All contributions should be submitted via a pull request.
## License
THIS INFORMATION IS LICENSED UNDER THE CONDITIONS OF THE OPEN GOVERNMENT LICENCE found at:
http://www.nationalarchives.gov.uk/doc/open-government-licence/version/3
The following attribution statement MUST be cited in your products and applications when using this information.
>Contains public sector information licensed under the Open Government license v3
### About the license
The Open Government Licence (OGL) was developed by the Controller of Her Majesty's Stationery Office (HMSO) to enable information providers in the public sector to license the use and re-use of their information under a common open licence.
It is designed to encourage use and re-use of information freely and flexibly, with only a few conditions.