TaskPlanner | SGT est une application développée en PHP avec le framework CodeIgniter 4. Elle utilise une base de données PostgreSQL et inclut un système d'envoi d'email configuré via des variables d'environnement.
Avant d'installer l'application, assurez-vous d'avoir les éléments suivants :
- PHP 8.1 ou supérieur
- Composer (Gestionnaire de dépendances PHP)
- PostgreSQL (Base de données)
- Serveur Web (Apache, Nginx ou PHP intégré)
-
Cloner le dépôt
git clone git@github.com:ClemLy/SGT.git cd SGT -
Installer les dépendances
composer install
-
Configuration de l'environnement
Créer un fichier
.envdirectement dans le dossierSGT. Ce fichier contiendra ceci :#-------------------------------------------------------------------- # DATABASE #-------------------------------------------------------------------- CI_ENVIRONMENT=production # Mode de l'application : 'development' ou 'production' db_hostname=localhost # Hôte de la base de données (souvent 'localhost') db_username=.. # Nom d'utilisateur pour la connexion à la base de données db_password=.. # Mot de passe de l'utilisateur de la base de données db_DBDriver=Postgre # Type de base de données (PostgreSQL dans ce cas) db_name=.. # Nom de la base de données db_port=.. # Port de connexion à la base de données (souvent 5432 pour PostgreSQL) #-------------------------------------------------------------------- # Email #-------------------------------------------------------------------- email_host=..... # Hôte du serveur SMTP pour l'envoi d'emails (ex : smtp.gmail.com) email_user=..... # Adresse email utilisée pour envoyer les emails (ex : votre-email@gmail.com) email_password=... # Mot de passe de l'email pour l'authentification SMTP email_port=587 # Port pour l'envoi d'emails (587 est généralement utilisé pour TLS)
-
Exécuter l'environnement
Afin d'exécuter votre fichier
.env, installez la bibliothèque vlucas/phpdotenv en exécutant cette commande dans le terminal :cd SGT composer require vlucas/phpdotenv -
Démarrer le serveur local
cd SGT php spark serveL'application sera disponible à l'adresse : http://localhost:8080
Yahoo nécessite l'utilisation d'un mot de passe d'application plutôt que votre mot de passe principal. Cela permet de renforcer la sécurité des comptes de messagerie en limitant l'accès aux applications tierces. Voici comment générer un mot de passe d'application pour Yahoo :
-
Connectez-vous à votre compte Yahoo
Rendez-vous sur Yahoo Mail et connectez-vous à votre compte. -
Accédez aux paramètres de sécurité
Allez dans les paramètres de votre compte en cliquant sur votre avatar dans le coin supérieur droit, puis sélectionnez "Paramètres du compte" ou "Compte". Ensuite, allez dans Sécurité du compte. -
Générez un mot de passe d'application
Sous l'option "Mots de passe d'application", vous trouverez la possibilité de générer un mot de passe spécifique pour une application tierce. Cliquez sur cette option. -
Sélectionnez l'application
Choisissez l'application pour laquelle vous souhaitez générer un mot de passe d'application. Si "CodeIgniter" ou un autre nom spécifique n'est pas proposé, sélectionnez "Autre (personnalisé)". -
Suivez les instructions
Après avoir choisi l'application, Yahoo vous demandera de confirmer votre action et générera un mot de passe d'application. Ce mot de passe est à usage unique et ne peut pas être récupéré une fois généré. -
Utilisez ce mot de passe dans votre configuration SMTP
Remplacez le mot de passe de votre compte Yahoo dans la configuration SMTP de CodeIgniter par le mot de passe d'application nouvellement généré.
Pourquoi un mot de passe d'application ?
Cette approche est plus sécurisée car elle limite l'accès de l'application tierce (CodeIgniter) aux fonctionnalités spécifiques dont elle a besoin sans compromettre votre mot de passe principal Yahoo. Ce mot de passe d'application est également limité et ne pourra pas être utilisé ailleurs.
Important :
Gardez ce mot de passe d'application en lieu sûr, car une fois généré, vous ne pourrez pas le récupérer. Si vous perdez ce mot de passe, vous devrez en générer un nouveau.
Pour déployer l'application en production :
- Configurer votre serveur avec la base de données dans votre fichier
.env. - Configurer votre adresse mail avec les paramètres email corrects dans votre fichier
.env(Voir tutoriel Yahoo). - Utiliser un serveur web comme Nginx ou Apache pour servir l'application.
- Créer des utilisateurs et des tâches depuis l'interface.
- Gérer les tâches avec des statuts : À faire, En cours, Terminée.
- Recevoir des rappels par email pour les tâches arrivant à échéance dans 48 heures.
- Clonage du dépôt : Assurez-vous de bien indiquer les bonnes informations pour accéder à votre dépôt (si vous êtes sur GitHub, par exemple, utilisez le lien HTTPS si vous n'avez pas configuré les clés SSH).
- Configuration de l'environnement : Assurez-vous que les variables
db_*etemail_*soient configurées correctement avant de faire fonctionner l'application en local ou en production.