page d'accueil de Sydonie

Sydonie : Framework
de Développement Web

Sydonie se compose de quatre parties :

  • Le noyau Sydonie
  • Le Store contenant les apps de base nécessaires (store Greyc) et des apps complémentaires fournies par les partenaires (store Cf)
  • Les Helpers, ensemble de frameworks utilisés dans les applications et par le noyau de Sydonie
  • L'application que vous souhaitez réaliser

Il est préférable de créer un répertoire spécifique pour chacun de ces éléments (ce qui permet de partager une même instance du noyau de Sydonie, du Store et des Helpers pour plusieurs applications).

Mise en place et téléchargement

Noyau Sydonie

Obtenir le fichier contenant le noyau :

En décompressant le fichier, vous obtiendrez un répertoire nommé : SydonieV2. Il est souvent plus pratique de renommer ensuite ce fichier. Le nom que vous retiendrez sera indiqué dans la configuration de votre Application.

Store

Obtenir le fichier contenant le store de base :

En décompressant le fichier, vous obtiendrez un répertoire nommé : StoreV2. Il est souvent plus pratique de renommer ensuite ce fichier. Le nom que vous retiendrez sera indiqué dans la configuration de votre Application.

Ensemble des Helpers

Obtenir le fichier contenant les helpers :

En décompressant le fichier, vous obtiendrez un répertoire nommé : HelpersV2. Il est souvent plus pratique de renommer ensuite ce fichier. Le nom que vous retiendrez sera indiqué dans la configuration de votre Application.

Application (votre site)

Obtenir le fichier qui permet l'installation et la configuration de votre application

En décompressant le fichier, vous obtiendrez un répertoire nommé : SydonieInstallV2. Il faut renommer ce fichier en fonction de l'application que vous souhaitez installer (cela permet d'utiliser une seule instance du noyau Sydonie avec plusieurs applications). Pour compléter l'installation, se référer à la partie suivante (Mon premier site Sydonie)

Mon premier site Sydonie

Préparation de la configuration

Organisation des fichiers de l'application

Dans le répertoire de l'Application, il faut créer un fichier .htaccess vide (Les exemples de codes sont donnés pour un usage sous linux ou mac via le terminal) touch .htaccess

Permettre au serveur d'écrire sur ce fichier.

chmod 666 .htaccess

Donner les droits au serveur d'écrire dans les répertoires config/server et config/site.

chmod 777 config/server
chmod 777 config/site

Vérifier que le fichier config/site/config_site.php peut être modifié par le serveur.

chmod 666 config/site/config_site.php

Créer le répertoire qui contiendra les données (images, textes, vidéos,... toutes les ressources utilisées par votre application. Dans le langage de Sydonie, nous l'apellons warehouse. Une bonne pratique consiste à créer ce répertoire sous le nom warehouse-monAppli. Donner les droits d'écriture au serveur sur le répertoire.

mkdir warehouse-monAppli chmod 777 warehouse-monAppli

Création de la base de données

Pour l'instant, nous n'avons expérimenté Sydonie qu'avec une base de données MySQL. L'utilisation d'une autre base de données relationnelle reconnue par PHP-PDO ne devrait pas poser de problème majeur.

Créer la base de données MySQL et conserver les informations (login, mot de passe, nom de la base) pour remplir les champs du configurateur.

Configuration de l'application

Les divers fichiers de configuration sont placés dans le répertoire config de l'application. On peut les modifier ultérieurement avec un éditeur de texte. Le configurateur permet d'accélérer le processus de mise en place d'une application Sydonie.

Lancer la configuration automatique via le navigateur web en pointant sur le serveur correspondant à votre application.

http://monSite/SydonieConfigure

Le système cherche à détecter les informations qu'il peut obtenir directement... et les propose en standard. Vérifier et éventuellement modifier ces informations dans les formulaires du configurateur (et le cas échéant, ultérieurement dans les fichiers de configuration).

Voici les informations correspondant à chaque champ d'information des formulaires de configuration.

Remarque : tous les éléments d'information de type URL ou nom de répertoires se terminent par un /

Première page du configurateur

  • SERVER_URL : uniquement l'URL du serveur (exp : http://monExemple.com/ ) en terminant par un /
  • BASE_STRING : indiquer, le cas échéant, la partie de l'URL permettant d'accéder à votre application qui sera concaténée avec la valeur de SERVEUR_URL pour former l'URL de votre page d'accueil (exp : http://monExemple.com/~monAppli/). Laisser vide si SERVER_URL permet directement d'accéder à la page d'accueil. Terminer par / si vous placez une information.
  • SITE_FILE : le chemin complet depuis la racine du système de fichiers pour accéder au répertoire qui contient les programme de l'application (le répertoire créé et éventuellement renommé quand vous avez dezippé l'installeur). Terminer par /
  • SYDONIE_FILE : Emplacement de Sydonie. Le chemin complet depuis la racine du système de fichiers pour accéder au répertoire qui contient le noyau de Sydonie (bonne pratique : placer de répertoire en dehors de l'application pour pouvoir utiliser une même instance avec plusieurs applications). Terminer par /
  • LOCAL_WAREHOUSE_FILE : indiquer le chemin complet depuis la racine du système de fichiers pour accéder au répertoire d'entrepôt des données que vous avez défini précédemment. Terminer par /
  • HELPERS_URL : URL complet permettant d'accéder au répertoire des Helpers. Attention, il faut que ce répertoire soit accessible via le serveur web. Terminer par /
  • HELPERS_FILE : indiquer le chemin complet depuis la racine du système de fichiers pour accéder au répertoire contenant les Helpers. Terminer par /
  • URL_PROXY : le cas échant indiquer l'utilisation d'un proxy. Laisser vide quand il n'y a pas d'usage d'un proxy.

Page de configuration suivante : indiquer les informations correspondant à la base de données définie plus haut

  • Moteur BD : quelle est la base de données utilisée (en général indiquer mysql)
  • DB_HOST : cas général : localhost. Indiquer l'URL complet si vous utilisez un autre serveur.
  • DB_USER : login de connection pour votre application.
  • DB_PASSWD : le mot de passe correspondant à ce login.
  • DB_NAME : le nom de la base de données.
  • DB_PREFIX : chaque table de la base de données sera préfixée. Bonne pratique : choisir un préfix de deux ou trois lettres correspondant à votre application , sinon laisser sdn par défaut.

Page suivante : configuration des envois de mail

  • SITE_CONTACT_MAIL, SITE_ADMIN_MAIL, DESIGNER_MAIL, WEBMASTER_MAIL : adresse mail respectivement pour contacter les responsables du site, l'adminstrateur, le designer et le webmaster.
  • SUBSCRIBE_MAIL, SUBSCRIBE_NAME : respectivement le mail qui enverra les annonces de gestion des comptes utilisateur et le nom tel qu'il apparaîtra dans le lecteur de mail de la personne qui a ouvert un compte.
  • smtp : serveur smtp qui sera utilisé.
  • auth : mode d'authentification sur ce serveur.
  • username : nom de l'utilisateur qui peut envoyer des mails via ce serveur smtp.
  • password : mot de passe pour cet utilisateur du serveur de courier.
  • ssl : choix du mode de transport (en général ssl).
  • port : associé à ce mode de transport (en général 465)

Page suivante : Informations concernant spécifiquement l'application.

  • SITE_VENDORNAME : Namespace PHP qui est utilisé pour l'application
  • SITE_NAME : Nom du site tel qu'il apparaîtra dans le <title> de la page d'accueil. On peut utiliser l'encodage UTF-8 (caractères accentués,...)
  • SITE_MACHINE_NAME : nom de votre application tel qu'il sera utilisé à l'intérieur des programmes (par exemple pour déposer des cookies). Avoir un nom court, pas d'espace, pas de caractères accentués. Bonne pratique : utiliser des capitales.

Page suivante : création du premier compte

  • Le premier compte créé sera celui de l'administrateur de l'application. Le login DOIT être un adresse email valide. Il convient de se rappeler du mot de passe qui lui est attribué. Ceci pourra être changé ultérieurement via l'interface d'administration. Il est possible de nommer plusieurs administrateurs pour une application.

La configuration automatique du site sera ensuite enclenchée.

Une fois le système configuré, il faut détruire le répertoire SydonieConfigure (pour éviter de réinitialiser un site opérationnel) et remettre les droits d'écriture sur les fichiers de configuration au seul user.

chmod 755 config/server
chmod 644 config/server/*
chmod 755 config/site
chmod 644 config/site/config-site.php

On peut ensuite peaufiner la configuration (changer les noms des répertoires pour une meilleure sécurité,...) en éditant les fichiers de configuration :

  • config/server : toutes les informations spécifique à une installation donnée de l'application (distincte sur chaque serveur spécifique). On peut ainsi créer un serveur de développement et un serveur de production et pour chacun n'avoir à modifier que les informations contenue dans les trois fichiers de ce répertoire.
    • config_base.php : les informations structurantes (URL, nommage des répertoires,...)
    • config-db.php : informations sur la base de données
    • config_mail.php : informations concernant l'envoi de mails (adresses de contact, réglage smtp).
  • config/site : les informations propres au site (celles qui ne changent pas quand on déplace le site sur un autre serveur.
    • config_site.php : les informations du site. C'est notamment à cet endroit qu'il convient d'indiquer les informations sur le thème que vous allez mettre en place.
    • config_permission.php : les informations sur la gestion des permissions (voir le wiki des développeurs pour de plus amples informations).
    • config_cssCall.php : indications sur les appels de css qui auront lieu en haut des pages HTML. À modifier si vous souhaitez utiliser un framework css.

Configuration du thème spécifique de votre application.

Le thème par défaut installé reste très générique... il convient donc de personnaliser votre site.

Pour cela, vous pouvez soit copier le theme par defaut dans un répertoire portant le nom de votre site et modifier ensuite, soit construire à partir de vos habitudes de travail (types de fichiers css, usage de Saas ou Less,...)

Toutefois, les règles d'organisation des fichiers css, images (qui ne contient que les images de fond et de présentation, logo,... pas les « documents images »), fonts, fragments, layout doivent être conservées. Si l'on souhaite ajouter un framework (du type Bootstrap), on peut le mettre dans un répertoire spécifique.

Développer une application web avec Sydonie

Félicitations, vous êtes prêts à développer votre application!!

La documentation complète est en cours de rédaction.

On peut trouver des éléments d'information sur le wiki des développeurs (http://wiki.sydonie.net).

Sites réalisés avec Sydonie

Majax

Majax logoProjet nécessaire à Sydonie, Majax (Magic Ajax) est devenu un projet indépendant qui propose une bibliothèque pour rendre aisé l'usage d'Ajax par les webdéveloppeurs. On peut voir les demos de Majax et la documentation.