Skip to content

jerome-karabenli/dev-talk-API

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

# Dev-Talk API

A propos

Il s'agit d'un projet de conception d'API personnel pour partager des connaissances sur le dev avec d'autres personnes.

L'idée est de pouvoir enregistrer et soumettre de nouveaux sujets dans l'API dev-talk et échanger sur les sujets a travers un serveur vocal Discord.

Stack utilisée

NodeJS Redis MongoDB Docker

Prérequis

Roadmap

Deploiement

  • Configurer le fichier docker-compose.
  • Configuer le fichier Dockerfile pour build
  • Configurer le fichier .dockerignore pour optimiser les perfs de build

API

  • Utiliser les JWT pour l'authentification.
  • Envoi d'un email pour reset le mot de passe.
  • Utiliser Joi pour faire de la validation de data.
  • Créer une fonction permettant de mettre en cache dynamiquement.
  • Générer une doc avec Swagger.

Voir les issues en cours pour voir la liste complete des fonctionalités proposées et les bugs existants.

Comment ca marche

  1. Clonez ce repo
$ git clone https://github.com/jerome-karabenli/dev-talk-API.git && cd dev-talk-API 
  1. Lancer la commande suivante
$ docker-compose up -d
  1. La documentation de l'API se trouve sur la route /api-docs

Tester l'API

  1. Utilisez cette commande pour ne monter que les base de données.
$ docker-compose up -d redis mongodb
  1. Rendez vous dans le dossier node_app et tapez
$ npm start
# ou
$ yarn start

Les variables d'environnement dans le dossier node_app

  • MONGODB_URI=mongodb://demo:demo@localhost:27017/devtalk
  • ACCES_TOKEN_SECRET=demo
  • NODE_ENV=developpement
  • DOMAIN_NAME=demo-devtalk.jkarabenli.dev
  • API_URL_PREFIX=/api/v1
  • PORT=3000
  • REDIS_URI=redis://localhost:6379
  • API_DOCS_SERVER=https://demo-devtalk.jkarabenli.dev

Contribuer

Les contributions sont ce qui fait de la communauté open source un endroit incroyable pour apprendre, s'inspirer et créer. Toutes les contributions que vous apportez serront grandement appréciées.

Si vous avez une suggestion qui améliorerait le projet, vous pouvez fork le repo et créer une pull request. Vous pouvez aussi simplement ouvrir une issue avec le tag "enhancement". N'oubliez pas de mettre une étoile au projet ! Merci encore!

  1. Fork le projet
  2. Créez votre branche (git checkout -b feature/AmazingFeature)
  3. Commit vos changements (git commit -m 'Add some AmazingFeature')
  4. Push sur votre branche (git push origin feature/AmazingFeature)
  5. Ouvrir une Pull Request

Liens

Lien de mon blog: jkarabenli.dev

Lien du projet: Github

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages