# API made with Strapi
## Prérequis - Node >= 16 - Npm ou Yarn ## Variables d'environnement - Copier le contenu du fichier `.env.sample` dans un nouveau fichier `.env` ``` cp .env.sample .env ``` `STRAPI_URL` sera utile en production uniquement. Cette variable fait référence à l'url du site de production *(exemple : `https://api.mon-site.fr`)*. `STRAPI_ADMIN_URL` fait référence à la route pour accéder à l'espace d'administration *(par défaut : `/admin`)* . ## Générer les clés nécessaires : Ces variables d'environnement sont obligatoires : - **APP_KEYS** - **API_TOKEN_SALT** - **ADMIN_JWT_SECRET** - **JWT_SECRET** *(générée automatique si non renseignée)* Afin de les renseigner, vous pouvez générer des clés en passant par node : ```bash node ``` Une fois dans la console node, tapez : ```bash crypto.randomBytes(16).toString('base64') ``` *retourne par exemple : 'BwUANVKSfenqAs1eFBHDIA=='* Générez une clé pour chaque variable et ajoutez les au fichier .env. La varialbe APP_KEYS peut en contenir plusieurs séparées, par une virgule : *APP_KEYS=BwUANVKSfenqAs1eFBHDIA==,GiznuBga8kH0ZcOM5YO85w==* Si la variable JWT_SECRET n'est pas renseignée, elle est générée automatiquement par Strapi. ## Installation des dépendances & lancement du serveur ``` yarn && yarn build && yarn dev ``` ## Point d'accès ### `/awtis` - `GET` : Lister tous les artistes ### `/awtis/{id}` - `GET` : Récupérer les informations d'un artiste ### `/awtis/count` - `GET` : Récupère le nombre d'artiste ___ ### `/paroles` - `GET` : Lister tous les textes ### `/paroles/{id}` - `GET` : Récupérer les informations d'un texte ### `/paroles/count` - `GET` : Récupère le nombre de texte ## License Copyright (C) 2024 Cédric Famibelle-Pronzola & ORGANISATION KA INTERNATIONALE (OKI) ### FR Ce programme est un logiciel libre : vous pouvez le redistribuer et/ou le modifier selon les termes de la licence publique générale GNU Affero publiée par la Free Software Foundation, soit la version 3 de la licence, soit (à votre choix) toute version ultérieure. Ce programme est distribué dans l'espoir qu'il sera utile, mais SANS AUCUNE GARANTIE ; sans même la garantie implicite de COMMERCIALISATION ou d'ADAPTATION À UN USAGE PARTICULIER. Voir la licence publique générale GNU Affero pour plus de détails. Vous devriez avoir reçu une copie de la licence publique générale GNU Affero avec ce programme. Si ce n'est pas le cas, consultez https://www.gnu.org/licenses/. ### EN This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.