1
0
Fork 0
This repository has been archived on 2025-08-23. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
mareshq-backoffice-v3-api/README.md

1.2 KiB

Backoffice API

Backoffice API for my training activities etc. maybe workshops in the future.

API

The API is going to be REST with OpenAPI specification and Swagger (or similar) UI for development. In the future this may change and for example gRPC (Connect RPC 👀).

The API schema resides in the api/ directory.

API and code

The code is generated from API schema, not the other way around (schema from code).

For this, I am using oapi-codegen. The other project considered was ogen. This choice may be review in the future.

My main concern with oapi-codegen is with optional fields, since pointers are used while ogen is utilizing Go's generics. Which I feel may be a better fit.

API versioning

I want to split major versions (⚠️ breaking changes) with folders in code and also in URL path.

This is done mainly to gain experience with such approach.

The first of API scheme iteration is marked as v0, since I expect not to get everything right the first time and I want to try this approach while designing the API. Altho it's just a number and there is no reason between v0, v1, v2,...