|
@@ -0,0 +1,36 @@
|
|
|
+Cette application est écrite entièrement avec des langages web et fonctionne avec n'importe quel navigateur moderne.
|
|
|
+
|
|
|
+#### Frameworks
|
|
|
+
|
|
|
+L'application utilise plusieurs frameworks pour faciliter le développement et la mise en page de l'application :
|
|
|
+
|
|
|
+- [Materialize](https://materializecss.com) : Framework CSS / JS utilisé pour le design et les fonctionnalités graphiques du sites (pop-up, toast, chargement, ...)
|
|
|
+- [Jquery](https://jquery.com) : Permet de simplifier l'interaction avec le DOM
|
|
|
+- [Google code prettify](https://github.com/googlearchive/code-prettify) : Met en forme (couleur, police, ...) les extraits de code présent dans la page
|
|
|
+- [Marked](https://marked.js.org/) : Compilateur markdown en HTML
|
|
|
+- [DOMPurify](https://github.com/cure53/DOMPurify) : Nettoie le HTML pour éviter les injections XSS
|
|
|
+- [SimpleMDE](https://simplemde.com) : Éditeur markdown WYSIWYG
|
|
|
+
|
|
|
+Toute la partie métier de l'application a été écrite en javascript sans framework particulier. Pour les fichiers de style le format SCSS a été choisit et un compilateur SCSS en CSS est intégré au projet.
|
|
|
+
|
|
|
+#### Lancement
|
|
|
+
|
|
|
+Cette application peut soit être lancée dans un navigateur via un serveur HTTP (un serveur est mis à disposition avec l'application), soit directement dans electron. Il est ***impossible*** de lancer l'application directement depuis le navigateur de fichier en ouvrant le fichier index.html dans le navigateur. En effet l'application fait des requêtes GET pour charger les notes présentent par défaut, or la sécurité d'un navigateur bloque ces requêtes lors de l'exécution depuis le système de fichier.
|
|
|
+
|
|
|
+Pour lancer l'application dans un serveur web il faut utiliser la commande suivante (le navigateur s'ouvre automatiquement sur l'URL de l'application) :
|
|
|
+
|
|
|
+```bash
|
|
|
+npm run src:web
|
|
|
+```
|
|
|
+
|
|
|
+Pour lancer l'application dans electron il faut utiliser la commande suivante (plus d'info sur electron dans la note dédié) :
|
|
|
+
|
|
|
+```bash
|
|
|
+npm run src:electron
|
|
|
+```
|
|
|
+
|
|
|
+#### Source
|
|
|
+
|
|
|
+Que l'application soit lancée sur un serveur web pour être affichée dans un navigateur ou directement dans electron, ce sont les même fichiers sources qui sont utilisés. Les fichiers sources de cette version de l'application sont disponible dans le dossier `src/` à la racine du projet.
|
|
|
+
|
|
|
+Le code javascript propre à l'application se trouve directement dans les fichiers HTML. Le dossier `css/` contient toute les feuilles de style de l'application (format scss et css) dont le fichier `style.scss` qui a été écrit pour l'application. Le dossier `js/` contient les fichiers avec les fonctions javascript utilisées. Le fichier `binder.js` (écrit pour le projet) contient des fonctions pour automatiser l'affichage de données dans le document HTML et le fichier `script.js` contient des fonctions utilitaire pour l'application. Enfin le dossier `data/` contient les données des notes présentent par défaut.
|