/backend

API rails utilisée pour la gestion des informations de l'application Note-thing

Primary LanguageRubyApache License 2.0Apache-2.0

Backend

Contexte du projet 🤟

Cette application a été développée en Ruby et plus précisemment via le framework Ruby on rails (RoR). Le but est de fournir une API qui s'inspire du style d'architecture RESTful permettant à l'application frontend de Note-thing d'accéder aux données persistantes.

L'application est scindée en deux partie distinctes :

  • le frontent qui représente la visualisation et l'intéraction avec les données.
  • le backend, ici même, contenant la couche métier et l'accès au SGBDR.

Ce projet a été réalisé dans le cadre d'un cours de la HEIG-VD. Pour plus plus d'informations sur les motivations du projet et avoir une vision globale du produit, n'hésitez pas à consulter notre Github.io ✌️.

L'application est présente à l'adresse note-thing.ch. N'hésitez-pas à y faire un tour 😇

Commencer 🏁

Pré-requis

Installation

  1. Cloner le repository
git clone https://github.com/Note-thing/backend && cd backend
  1. Lancer le conteneur Docker
docker-compose up
  1. Créez un fichier .env, et mettez y la variable d'environnement JWT_SECRET='example'. Vous pouvez vous inspirer de .env.example ou le remplacer !
mv .env.example .env

Veillez à avoir une configuration gmail présente dans le .env, via les variables EMAIl=example@gmail.com et EMAIL_PASSWORD=password.
Pour résumer, le fichier .env doit contenir les informations suivantes :

JWT_SECRET='whateverYouWant'
EMAIL='example@gmail.com'
EMAIL_PASSWORD='password'
  1. Allez à l'adresse localhost:3001 et vous voilà prêt à contribuer 😎.

Se connecter au container Docker

docker exec -it backend_app_1 /bin/bash

Vous pouvez ensuite intéragir avec rails via le docker.

Quelques commandes utiles

Créer la db

rails db:create

Lancer les migrations

rails db:migrate

Lancer les seeds

rails db:seed

Lancer le serveur

rails s

Afficher les routes disponible

rake routes

Lancer les tests

rails spec

Considérations techniques 👀

Vous trouverez sur notre wiki les éléments suivants :

Comment contribuer ? 🤌

Note-thing est un projet réalisé par des étudiants en ingénierie logiciel. Nous sommes ouverts aux avis d'experts. Vous trouverez un guide de contribution qui définit quelques en points clefs comment contribuer au projet.

Fondateurs

Contactez-nous par email

License

Notre projet utilise la License apache.