https://github.com/openpotato/codelisthub
Web service for the CodeListHub project
https://github.com/openpotato/codelisthub
code-list codelisthub opencodelist
Last synced: 11 months ago
JSON representation
Web service for the CodeListHub project
- Host: GitHub
- URL: https://github.com/openpotato/codelisthub
- Owner: openpotato
- License: agpl-3.0
- Created: 2025-02-21T20:58:20.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-02-27T08:15:32.000Z (12 months ago)
- Last Synced: 2025-02-27T11:57:53.996Z (12 months ago)
- Topics: code-list, codelisthub, opencodelist
- Language: C#
- Homepage: https://www.codelisthub.org/en
- Size: 58.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

# CodeListHub
The service behind CodeListHub. Build with [.NET 9](https://dotnet.microsoft.com/).
## Technology stack
+ [PostgreSQL 17+](https://www.postgresql.org/) as database
+ [ASP.NET 9](https://dotnet.microsoft.com/apps/aspnet) as web framework
+ [Entity Framework Core 9](https://docs.microsoft.com/ef/) as ORM layer
+ [Swagger UI](https://swagger.io/tools/swagger-ui/) for OpenAPI based documentation
## Getting started
The following instructions show you how to set up a development environment on your computer.
### Prerequisites
+ Set up a local PosgreSQL 17 (or higher) instance.
+ Clone or download the repository [CodeListHub.Data](https://github.com/openpotato/codelisthub.data).
+ Clone or download this repository.
+ Open the solution file `CodeListHub.sln` in Visual Studio 2022.
### Configure the CodeListHub CLI
+ Switch to the project `CodeListHub.CLI`.
+ Make a copy of the the `appsettings.json` file and name it `appsettings.Development.json`.
+ Exchange the content with the following JSON document and adjust the values to your needs. This configures the root folder for the csv data sources (the `src` folder in your local [OpenHolidaysApi.Data](https://github.com/openpotato/codelisthub.data) repository) and the database connection.
``` json
"Sources": {
"RootFolderName": "c:\\codelisthub.data\\src"
},
"Database": {
"Server": "localhost",
"Database": "CodeListHub",
"Username": "postgres",
"Password": "qwertz"
}
```
### Create and populate the database
+ Build the `CodeListHub.CLI` project.
+ Run the `CodeListHub.CLI` project with parameter `initdb --import`. This will create and populate the PostgreSQL database.
### Configure the CodeListHub WebService
+ Switch to the `CodeListHub.WebService`.
+ Make a copy of the the `appsettings.json` file and name it `appsettings.Development.json`.
+ Exchange the content with the following JSON document and adjust the values to your needs. This configures the database connection.
``` json
"Database": {
"Server": "localhost",
"Database": "CodeListHub",
"Username": "postgres",
"Password": "qwertz"
}
```
### Build and test the API
+ Build the `CodeListHub.WebService` project.
+ Run the `CodeListHub.WebService` project and play with the Swagger UI.
## Can I help?
Yes, that would be much appreciated. The best way to help is to post a response via the Issue Tracker and/or submit a Pull Request.