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).
@@ -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, ...) |