Il s'agit de l'API pour le projet op-ent. Il s'agit d'une API REST et GraphQL qui est utilisée pour communiquer avec la base de données op-ent.
- Exécuter
yarn
pour installer les dépendances. - Copier le fichier
.env.example
et le renommer en.env.local
. Il n'y a pas besoin de modifier les variables d'environnement.
Il faut exécuter 2 commandes en parallèle :
yarn docker:dev
: lance les bases de données et interfaces d'administration. La 1ère fois, exécuteryarn migrate
avant la commande suivante. Pensez à stocker quelque part les données qui apparaissent dans le terminal ! Cela vous évitera d'aller la chercher dans pgAdminyarn dev
: lance l'API
Vous avez accès à 2 consoles d'administration :
Permet de gérer la base de données PostgreSQL.
- URL : http://localhost:5050.
- Identifiants :
- Email :
admin@admin.com
- Mot de passe :
password
- Mot de passe de la base de données :
lucid
- Email :
Permet de gérer la base de données Redis.
- URL : http://localhost:8001
- Identifiants :
- Host :
redis-server
- Port :
6379
- Name :
redis
- Host :
Toutes les données stockées dans les bases de données presistent d'une utilisation à l'autre. Pour les reset, il faut passer par Docker Desktop directement, supprimer les containers puis les volumes associés.
Lors de la 1ère utilisation (yarn migrate
), un utilisateur par défaut est créé, et avec lui un access-id
et access-token
. Pour toutes les requêtes à l'API, il est nécessaire de passer chacune de ces 2 données dans le header correspondant.
Adonis propose un CLI utilisable via node ace
. Cependant, il faut utiliser yarn ace
à la place en développement. Cela permet d'utiliser automatiquement les variables d'environnement du fichier .env.local
.
Nous utilisons Novu. Pour le moment, il n'est pas possible d'envoyer des notifications en développement. Pour setup novu, il faut exécuter yarn ace novu:setup
et suivre les instructions.
├── auth
│ ├── login (POST)
│ ├── register (POST)
│ ├── request-password-reset (POST)
│ ├── is-reset-password-token-valid (POST)
│ └── reset-password (POST)
├── developers
│ └── accesses (GET, POST)
│ └── :id (GET, PUT, DELETE)
├── users
│ └── :id (PUT)
├── swagger
│ ├── docs (GET)
│ └── swagger.yaml (GET)
Only the swagger
routes are not protected by the gateway.
Publié sous la licence GNU GPL v3.
Fait avec ❤️ par Florian LEFEBVRE en France.
Sponsors | |
---|---|
|
|