Skip to content
This repository was archived by the owner on Oct 24, 2025. It is now read-only.

Local Development

Cedrik Hoffmann edited this page Aug 5, 2024 · 34 revisions

TL;DR

Stelle sicher das die Datenbank gestartet und eingerichtet ist.

go install github.com/vektra/mockery/v2@v2.43.2
go install github.com/swaggo/swag/cmd/swag@latest
go install github.com/pressly/goose/v3/cmd/goose@latest
go install github.com/sqlc-dev/sqlc/cmd/sqlc@latest

go mod download
go generate

go run main.go # oder air für hot reload

Vorbereitung

Es werden folgende Dependencies benötigt, um das Backend zu starten:

  • Golang als Programmiersprache
  • Mockery um Test Mocks zu generieren
  • swaggo/swag um API Docs zu generieren
  • Air für hot reload (optional)

Die Installation ist vom verwendetet Betriebsystem abhängig und wird hier nicht weiter beschriebe (siehe Golang Doku). Die Tools können wie folgt installiert werden

go install github.com/vektra/mockery/v2@v2.43.2
go install github.com/swaggo/swag/cmd/swag@latest

go install github.com/sqlc-dev/sqlc/cmd/sqlc@latest
go install github.com/pressly/goose/v3/cmd/goose@latest

Note

Es ist wichtig, das im selben Projekt die identische Version von Mockery v2.43.2 verwendet wird.

Anschließend können die Projekt spezifischen Abhängigkeiten mittels dem go Befehl installiert werden

go mod download

Anschließend können die benötigten Dateien wie Swagger definitionen oder Mapper genariert werden

go generate

Nun kann die Anwendung gestartet werden, wenn alle Konfigurationen wie Datenbank und Zugangsdaten eingerichtet sind. Gestartet wird die Go Anwendung mittels go run main.go oder mittels air. air bietet eine Hot Reload variante für Golang Anwendungen.

go run main.go # oder air für hot reload

Konfiguration

Wurde das Repository frisch geclonet, müssen eventuell einige Umgebungsvariablen gesetzt werden. Kopiere die .env.example zu .env und fülle die benötigten Felder aus.

Datenbank

...weiter wenn DB steht

Clone this wiki locally