Skip to content

Crée la structure de base du projet

Alexandre Côté Cyr requested to merge init_backend into master

Je me suis inspiré de https://github.com/marvincaspar/go-web-app-boilerplate pour la structure.

  • /api: La documentation de l'api.
  • /cmd: Les fichiers source qui vont être compilés vers un exécutable. Un ficher par exécutable
  • /pkg: La majorité du code de l'app, découper en packages. Pour l'instant c'est organisé classique MVC, plus un package pour définir les routes et un pour définir des trucs pour le fonctionnement du serveur (infra)
  • /scripts: Des scripts utilitaires pour aider à manager/runner le projet.
  • /test: Les fichiers de tests et les éventuelles données nécessaires pour le rouler
  • /web: Les templates et fichiers statiques pour le serveur web (css, js, etc.)

Y'a un exemple de comment définir des groupes de routes dans pkg/routes/tickets.go et cmd/server/main.go.

J'ai créé un Makefile pour downloader les dépendances (make dep), build le projet (make build) et runner le serveur (make run). Par défaut, le serveur roule sur le port 8080.

On utilise aussi Gitlab-ci pour build l'app à chaque fois qu'on push. On pourra facilement lui faire rouler nos tests quand on en aura.

Resolves #18 (closed)

Edited by Alexandre Côté Cyr

Merge request reports