diff --git a/.env b/.env index c3ad56e5a0eaf479bbc8dc936237d18f33027263..f74bb8d297558b5ed68d6bf7fe4ee7442f7e10c4 100644 --- a/.env +++ b/.env @@ -1,6 +1,6 @@ HOSTNAME=sdk-go.127.0.0.1.nip.io -ADMIN_GROUP=ADMINS -CLIENT_GROUP=CLIENTS +ADMIN_ROLE=ADMINS +CLIENT_ROLE=CLIENTS # Needed to user OAuth2 authentication : REDIRECT_URL=https://${HOSTNAME}/OAuth2Callback diff --git a/README.md b/README.md index 54e556730b537bbdfb7b6bfc30bebb9f2564f461..536a79a0a98cf1975eb9fb67a9a7b4b065b5d705 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,48 @@ # SDK - GO -Simple Developpement Kit for GO with Gorm ORM for backend and Bulma for frontend. \ No newline at end of file +Ce dépôt est un kit de développement en [GO](https://golang.org/) basé sur l'ORM [GORM](https://gorm.io/) qui permet facilement de créer et déployer des applications sous forme conteneurisée. + +Le kit comprends une démonstration de ce qui peut être fait en simulant une application bancaire simplifiée développée en JavaScript et avec le framework CSS [Bulma](https://bulma.io/) + +## Fonctionnalités + +Les principales fonctionnalités : + +- serveur d'API : basé sur le modèle de donnée définit dans l'ORM GORM +- serveur WEB : fournit à l'utilisateur l'application front-end (projet from scratch ou framework) +- authentification : permet à l'utilisateur de se connecter avec un compte local à l'application ou à partir d'un fournisseur d'identité OAuth2, de manière transparante +- gestion des droits : différents rôles peuvent être définit dans l'application et les API protégées par ces rôles +- gestion du cookie de session utilisateur chiffré entre le navigateur et le serveur + +## Démarrage + +### Avec VS Code +> Il est nécessaire d'avoir un environnement de développement GO installé et opérationnel sur le poste. + +Télécharger le dépot + +```bash +git clone https://forge.grandlyon.com/apoyen/sdk-go.git +``` + +Ouvrir le dépôt avec VS Code puis dans l'onglet `Debug`, démarrer le projet avec `Debug SDK-GO with Mock OAuth2` + +### Avec Docker +Installer sur le poste [Docker](https://docs.docker.com/get-docker/) et [docker-compose](https://docs.docker.com/compose/install/) + +Télécharger le dépot + +```bash +git clone https://forge.grandlyon.com/apoyen/sdk-go.git +cd sdk-go +``` + +Dans le fichier docker-compose.yml décommenter la ligne `command: -debug` (ATTENTION : cette ligne doit être commentée lors d'un passage en prod et ne sert que pour tester ou débuger l'application) + +```sh +docker-compose up -d +``` + +## Architecture + +## Démarer un projet à partir du SDK \ No newline at end of file