63 lines
2.9 KiB
Markdown
63 lines
2.9 KiB
Markdown
# Daddy
|
|
|
|
Application de gestion des Dossiers d'Aide à la Décision (D.A.D.) à Cadoles.
|
|
|
|
## Démarrage
|
|
|
|
### Avec les sources
|
|
|
|
#### Dépendances
|
|
|
|
- docker
|
|
- docker-compose
|
|
- nodejs avec npm/yarn
|
|
|
|
#### Procédure
|
|
|
|
```bash
|
|
git clone https://forge.cadoles.com/Cadoles/daddy.git # Cloner le projet
|
|
cd daddy # Se placer dans le répertoire
|
|
make deps # Installer les dépendances NPM
|
|
make up # Démarrer l'environnement docker-compose (hydra, hydra-passwordless et fake-smtp)
|
|
# Dans un second terminal
|
|
make watch # Suivre les modifications et compiler à la volée le backend et frontend
|
|
```
|
|
|
|
Les services suivants devraient être disponibles après démarrage de l'environnement:
|
|
|
|
|Service|Type|Accès|Description|
|
|
|-------|----|-----|-----------|
|
|
|Application React|HTTP (UI)|http://localhost:8080/|Page d'accueil de l'application React (serveur Webpack)|
|
|
|Interface Web GraphQL|HTTP (UI)|http://localhost:8081/api/v1/graphql (GET)|Interface Web de développement de l'API GraphQL (mode debug uniquement, nécessite d'être authentifié)|
|
|
|Serveur GraphQL|HTTP (GraphQL)|http://localhost:8081/api/v1/graphql (POST)|Point d'entrée de l'API GraphQL|
|
|
|Serveur Hydra|HTTP (ReST)|http://localhost:4444|Point d'entrée pour l'API OAuth2 d'[Hydra](https://www.ory.sh/hydra/docs/)|
|
|
|Serveur Hydra Passwordless|HTTP|http://localhost:3000|Point d'entrée pour la ["Login/Consent App"](https://www.ory.sh/hydra/docs/implementing-consent) [hydra-passwordless](https://forge.cadoles.com/wpetit/hydra-passwordless)|
|
|
|Serveur FakeSMTP|HTTP|http://localhost:8082|Interface web du serveur [FakeSMTP](https://forge.cadoles.com/wpetit/fake-smtp)
|
|
|Serveur PostgreSQL|TCP/IP (PostgreSQL)|`127.0.0.1:5432`|Port de connexion à la base de données PostgreSQL de développement|
|
|
|
|
**\*** Pensez à passer l'attribut `auth_fail_block: false` dans le fichier `backend/config/dev.yml` si vous voulez pouvoir utiliser cette interface sans avoir à définir l'entête `Authorization`.
|
|
|
|
#### Fichiers/répertoires notables
|
|
|
|
|Chemin|Description|
|
|
|------------------|-----------|
|
|
|`docker-compose.yml`|Configuration de l'environnement Docker Compose|
|
|
|`frontend/src`|Sources du frontend ([React](https://reactjs.org))|
|
|
|`backend/config/migrations`|Migrations SQL pour le backend, voir [la documentation de SuperGraph à ce sujet](https://supergraph.dev/docs/start#migrations)|
|
|
|
|
#### Commandes utiles
|
|
|
|
|Commande|Description|
|
|
|--------|-----------|
|
|
|`make up`|Démarrer l'environnement de développement, `Ctrl+C` pour le stopper.|
|
|
|`make down`|Stopper et supprimer l'environnement de développement.|
|
|
|`make db-shell`|Ouvrir une console `psql` sur la base de données de développement.|
|
|
|
|
#### Ressources
|
|
|
|
- [Execute an Authorization Code Grant Flow with PKCE](https://auth0.com/docs/api-auth/tutorials/authorization-code-grant-pkce)
|
|
|
|
## Licence
|
|
|
|
AGPL-3.0
|