You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[](https://libraries.io/github/FAIRDataTeam/FAIRDataPoint)
6
11
7
-
`FAIR Data Point` (FDP) is a REST API for creating, storing, and serving `FAIR metadata`. This FDP implementation also presents a Web-based graphical user interface (GUI). The metadata contents are generated `semi-automatically` according to the [FAIR Data Point software specification](https://github.com/FAIRDataTeam/FAIRDataPoint-Spec) document.
12
+
[**FAIR Data Point** (FDP)](https://www.fairdatapoint.org) is a REST API for creating, storing, and serving **FAIR
13
+
metadata**. This FDP implementation also presents a Web-based graphical user interface (GUI). The metadata contents are
14
+
generated **semi-automatically** according to
15
+
the [FAIR Data Point software specification](https://github.com/FAIRDataTeam/FAIRDataPoint-Spec) document.
8
16
9
-
More information about FDP and how to deploy can be found at [FDP Deployment Documentation](https://fairdatapoint.readthedocs.io/).
17
+
## Usage
18
+
19
+
More information about FDP, how to deploy it and use it can be found in
20
+
the [FDP Deployment Documentation](https://fairdatapoint.readthedocs.io/).
21
+
22
+
## Related GitHub Projects
10
23
11
-
## Related projects
12
24
-[FAIR Data Point Client](https://github.com/FAIRDataTeam/FAIRDataPoint-client)
13
25
-[FAIR Data Point E2E Tests](https://github.com/FAIRDataTeam/FAIRDataPoint-E2E-Tests)
14
-
-[FAIR Data Point Docs](https://github.com/FAIRDataTeam/FAIRDataPoint-Docs)
26
+
-[FAIR Data Point Documentation](https://github.com/FAIRDataTeam/FAIRDataPoint-Docs)
FAIR Data Point API comes with an embedded [OpenAPI documentation using Swagger](https://swagger.io/specification/). The
32
+
details of API calls can be found there. It also allows trying out API calls directly. To access the FDP swagger
33
+
document please visit the following url via web
34
+
browser [localhost:8080/swagger-ui.html](http://localhost:8080/swagger-ui.html) (for local deployment)
35
+
or `https://your.domain.tld/swagger-ui.html` for your deployment (
36
+
e.g. [app.fairdatapoint.org/swagger-ui.html](https://app.fairdatapoint.org/swagger-ui.html)).
18
37
19
-
### Install requirements
38
+
##Development
20
39
21
-
**Stack:**
40
+
### Technology Stack
22
41
23
-
-**Java** (minimal: JDK 15)
24
-
-**Maven** (recommended: 3.2.5 or higher)
25
-
-**Docker** (recommended: 17.09.0-ce or higher) - *for build of production image*
42
+
-**Java** (JDK 15)
43
+
-**MongoDB** (4.2)
44
+
-**Maven** (3.2.5 or higher)
45
+
-**Docker** (17.09.0-ce or higher) - *for building Docker image only*
26
46
27
47
### Build & Run
28
48
29
-
To run the application, a MongoDB instance is required to be running. To configure the mongodb address, instruct spring-boot to use the `development` profile. Run these commands from the root of the project.
49
+
To run the application, a MongoDB instance is required to be running. To configure the MongoDB with standard
50
+
connection (`mongodb://localhost:27017/fdp`), simply instruct Spring Boot to use the `development` profile. Then run:
Alternatively, create an `application.yml` file in the project root and [configure the mongodb address](https://fairdatapoint.readthedocs.io/en/latest/deployment/advanced-configuration.html#mongo-db), and then run these commands from the root of the project.
56
+
Alternatively, create an `application.yml` file in the project root
57
+
and [configure the mongodb address](https://fairdatapoint.readthedocs.io/en/latest/deployment/advanced-configuration.html#mongo-db)
58
+
, and then run:
36
59
37
60
```bash
38
61
$ mvn spring-boot:run
39
62
```
40
63
41
64
### Run tests
42
65
43
-
Run these commands from the root of the project:
66
+
Run from the root of the project:
44
67
45
68
```bash
46
69
$ mvn test
47
70
```
48
71
49
72
### Package the application
50
73
51
-
Run these commands from the root of the project:
74
+
Run from the root of the project:
52
75
53
76
```bash
54
77
$ mvn package
55
78
```
56
79
57
80
### Create a Docker image
58
81
59
-
Run these commands from the root of the project (requires building jar file using `mvn package`):
82
+
Run from the root of the project (requires building `jar` file using `mvn package` as shown above):
60
83
61
84
```bash
62
85
$ docker build -t fairdatapoint:local .
63
86
```
64
87
65
88
### Build using Docker
66
89
67
-
If you do not have Java and Maven locally, you can build the Docker image using Docker (instead of using locally built jar file):
90
+
If you do not have Java and Maven locally, you can build the Docker image using Docker (instead of using locally
Most of the `GET` requests are publicly accessible compares to `POST`, `PUT`, and `PATCH` requests, which are mainly secured. We use [JWT Tokens](https://jwt.io/) and [Bearer Token Authentication](https://swagger.io/docs/specification/authentication/bearer-authentication/). The token can be retrieved in `/tokens` endpoint where you send username and password.
99
+
Most of the `GET` requests are publicly accessible. In contrast, `POST`, `PUT`, `DELETE`, and `PATCH` requests are
100
+
mainly secured. We use [JWT Tokens](https://jwt.io/)
101
+
and [Bearer Token Authentication](https://swagger.io/docs/specification/authentication/bearer-authentication/). The
102
+
token can be retrieved using `/tokens` endpoint where you send username and password. For details, visit the OpenAPI
103
+
documentation.
76
104
77
105
**Default users**
78
106
@@ -83,10 +111,12 @@ Most of the `GET` requests are publicly accessible compares to `POST`, `PUT`, an
`FAIRDataPoint` (FDP) API comes with an embedded [swagger documentation](http://swagger.io/), the details of API calls can be found here. To access the FDP swagger document please visit the following url via web browser `http://localhost:8080/swagger-ui.html`
116
+
We maintain a [CHANGELOG](CHANGELOG.md), you should also take a look at our [Contributing guidelines](CONTRIBUTING.md)
117
+
and
118
+
[Code of Conduct](CODE_OF_CONDUCT.md).
90
119
91
120
## License
121
+
92
122
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for more details.
0 commit comments