diff --git a/docs/components/services/credits.md b/docs/components/services/credits.md new file mode 100644 index 0000000000000000000000000000000000000000..1fbced97c44cedb2736a2e4e47ef394db8bf13bb --- /dev/null +++ b/docs/components/services/credits.md @@ -0,0 +1,34 @@ +# Credits service + +## Features + +This service allows one to manage a catalog of the Open Source initiatives enabling and powering this development project. + +Each record of the catalog includes the following information: + +* `id`: a technical unique identifier acting as primary key in the underlying database +* `uuid`: a business unique identifier +* `name`: the name of the credited initiative +* `description`: a short description of the credited initiative, in particular of the role the latter plays in this project +* `links`: a collection of URLs related to the credited initiative, modeled as a One-To-Many relationship +* `logo`: the URL of the logo of the credited initiative +* `published`: a boolean flag, indicating whether the record is published or not (draft) + +## Dependencies + +This service has no dependency on other components. + +## Endpoints + +The service provides two endpoints, + +1. `/credits` +2. `/links` + +allowing one to perform CRUD operations on credits and links in a RESTful manner. + +## Implementation + +The service is implemented using the [NestJS](https://nestjs.com/) framework. We refer the reader to the [NestJS-based micro-services](../../miscellaneous/nestjs-micro-services.md) page for further details concerning NestJS and the features it provides. + +Data persistence is achieved by using [PostgreSQL](https://www.postgresql.org/) and [TypeORM](https://github.com/typeorm/typeorm). diff --git a/docs/overview/index.md b/docs/overview/index.md index 835d69198c26d3f791377bacf7e97464f649e1a7..f672c19c14a9ae648bcf306f0d911439cd8803b0 100644 --- a/docs/overview/index.md +++ b/docs/overview/index.md @@ -141,7 +141,7 @@ ID | Name | Repo | Doc | Usage | Deps --- | --- | --- | --- | --- | --- S1 | Authentication | ... | [Link](../components/services/authentication.md) | Allowing users to create accounts and to perform logins and logouts | A3, S5 S2 | Changelog | [Link](https://gitlab.alpha.grandlyon.com/refonte-data/service-changelog) | [Link](../components/services/changelog.md) | Keeping track of the new features available to users throughout the developments| -S3 | Credits | ... | ... | Catalog of the Open Source initiatives powering the data.grandlyon.com project | S6 | +S3 | Credits | ... | [Link](../components/services/credits.md) | Catalog of the Open Source initiatives powering the data.grandlyon.com project | | S4 | CSV Catalog Downloader | ... | ... | Allowing users to download cached CSV exports of the metadata catalog | C3 | S5 | Mail | ... | [Link](../components/services/mail.md) | Sending e-mails to both end- and back-office users | A6 S6 | Media Library | ... | ... | Managing the images shown across the various pages of the Web Portal (organizations, posts, ...) | diff --git a/mkdocs.yml b/mkdocs.yml index f63c85cfcbba828e2ae57f3bb26a0b441b56af4b..ac0c0b8243ad5a95fbbb711d240741a4cd7a6894 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -42,6 +42,7 @@ nav: - Services: - Authentication: components/services/authentication.md - Changelog: components/services/changelog.md + - Credits: components/services/credits.md - CSV Catalog Downloader: components/services/csv-catalog-downloader.md - Mail: components/services/mail.md - Media Library: components/services/media-library.md