Aller directement au contenu
  • Catégories
  • Récent
  • Mots-clés
  • Populaire
  • Web
  • Utilisateurs
  • Groupes
Habillages
  • Clair
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Sombre
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Défaut (Aucun habillage)
  • Aucun habillage
Réduire
Melinyel

Melinyel

  1. Accueil
  2. Programmation
  3. Projets des membres
  4. MeliFramework

MeliFramework

Planifié Épinglé Verrouillé Déplacé Projets des membres
102 Messages 11 Publieurs 21.6k Vues
  • Du plus ancien au plus récent
  • Du plus récent au plus ancien
  • Les plus votés
Répondre
  • Répondre à l'aide d'un nouveau sujet
Se connecter pour répondre
Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
  • AnaeriaA Hors-ligne
    AnaeriaA Hors-ligne
    Anaeria
    Membre d'honneur
    a écrit sur dernière édition par
    #14

    Je propose aussi une arborescence complète, a commenter :

    • app : dossier des applications
      • controllers : Ensemble des controllers
        • Un dossier par namespace contenant chacun les controllers
      • helpers : Ensemble des fichiers avec des fonctions d'aides
      • hooks : Ensemble des fonctions à appel évènementiel (par ex: un truc à faire avant chaque appel de page)
      • libraries : Toutes les ressources et librairies externes
      • models : Tous les modèles utilisateurs + ceux pré-intégré
        • mapping : les fichiers de mapping BDD des modèles (gestion de l'ORM)
      • views : Contient toutes les vues
        • Plus un dossier par controller qui contient les vues du controller
        • errors : Contient tous les affichages d'erreurs (la page pour un 404, une erreur 500, ...)
        • layouts : Contient tous les layouts
    • config : Tous les fichiers de configuration (BDD, site, environnement)
    • system : la base du framework
      • core : le noyau et toute la gestion de base
      • helpers : toutes les fonctionnalités annexes de bas niveau (gestion du cache, des sessions, des inputs, des cookies, ...)
      • librairies : Toutes les librairies internes (mais facultatives) au noyau (par ex: gestion des erreurs, benchmarking)
      • orm : ben... l'ORM
    • webroot : la racine du site
      • Les sous dossiers en fonctions des besoins (css, js, images, ...)

    Dites-moi ce que vous en pensez !

    Mon MMORTS par navigateur développé avec le MeliFramework : <http://www.h-wars.net>
    Client & serveur chat gratuit : <http://easychat.evade-multimedia.net>
    Site de mes romans d'héroïc fantasy :<http://www.worldofmoons.net> - Achetez le roman : Sur thebookedition.com ou sur Google Play
    Humour et blagues informatiques : <http://www.danstoncode.net>

    1 réponse Dernière réponse
    0
    • SoulalexS Hors-ligne
      SoulalexS Hors-ligne
      Soulalex
      a écrit sur dernière édition par
      #15

      J'aime bien cette arborescence là mais au niveau des applications ça va être vite le bordel.

      Soulalex, Administrateur de Melinyel
      + E-Mail : [[email protected]](mailto:[email protected] "Lien vers un courriel")
      + GitHub : [https://github.com/Soualex](https://github.com/Soualex "Lien externe")

      1 réponse Dernière réponse
      0
      • E Hors-ligne
        E Hors-ligne
        Eloha
        Membre d'honneur
        a écrit sur dernière édition par
        #16

        Sinon...est-il nécessaire de faire connaître le projet sur divers site dés maintenant, si certains ne connaissant pas Melinyel ( Eh ben...il serait temps de se bouger ! 😄 ) veulent quand même participé à ce projet ? 🙂

        1 réponse Dernière réponse
        0
        • SoulalexS Hors-ligne
          SoulalexS Hors-ligne
          Soulalex
          a écrit sur dernière édition par
          #17

          S'ils veulent participer au projet, il faudra qu'ils s'inscrivent sur le forum pour suivre l'actualité du développement du framework. Après on empêche personne de proposer des scripts.

          Soulalex, Administrateur de Melinyel
          + E-Mail : [[email protected]](mailto:[email protected] "Lien vers un courriel")
          + GitHub : [https://github.com/Soualex](https://github.com/Soualex "Lien externe")

          1 réponse Dernière réponse
          0
          • AzadA Hors-ligne
            AzadA Hors-ligne
            Azad
            a écrit sur dernière édition par
            #18

            S'ils veulent participer au projet, il faudra qu'ils s'inscrivent sur le forum pour suivre l'actualité du développement du framework. Après on empêche personne de proposer des scripts.

            Absolument 🙂

            C'est encore une ébauche, il faut attendre de voir qui est vraiment disposé à faire ce framework. Tu connais des personnes qui ne sont pas sur Melinyel mais qui sont intéressées par ce projet, Eloha ?

            Administrateur du forum.

            Contactez-moi par message privé ou par mail.

            1 réponse Dernière réponse
            0
            • SoulalexS Hors-ligne
              SoulalexS Hors-ligne
              Soulalex
              a écrit sur dernière édition par
              #19

              Voici un diagramme UML du framework dans les grandes lignes.

              • La classe Kernel gère tout dans le framework.
              • La classe Application gère l'application.
              • La classe Controller gère les contrôleurs.
              • La classe Page gère la page (génération, ...).
              • La classe Router gère les routes.

              post-5-0-43130000-1406651778_thumb.png

              Soulalex, Administrateur de Melinyel
              + E-Mail : [[email protected]](mailto:[email protected] "Lien vers un courriel")
              + GitHub : [https://github.com/Soualex](https://github.com/Soualex "Lien externe")

              1 réponse Dernière réponse
              0
              • mars073M Hors-ligne
                mars073M Hors-ligne
                mars073
                a écrit sur dernière édition par
                #20

                lors du téléchargement je suis pour la génération d'une clé unique qui sera mise dans certains fichier pour gérer différentes choses et faire un contrôle contre les failles CSRF si je me trompes pas encore de nom x')

                votes-45296e7.png

                Aide à l'apprentissage et la réalisation pour des graphismes, des programmes, des sites ou autres.
                signature.png
                Signature aléatoire, proposez vous aussi une signature ici!

                1 réponse Dernière réponse
                0
                • AnaeriaA Hors-ligne
                  AnaeriaA Hors-ligne
                  Anaeria
                  Membre d'honneur
                  a écrit sur dernière édition par
                  #21

                  Voici un diagramme UML du framework dans les grandes lignes.

                  • La classe Kernel gère tout dans le framework.
                  • La classe Application gère l'application.
                  • La classe Controller gère les contrôleurs.
                  • La classe Page gère la page (génération, ...).
                  • La classe Router gère les routes.

                  ![attachicon.gif](<base_url>/public/style_images/tctc91_glare/attachicon.gif)[diag_uml_meliframework_rev1.PNG](<base_url>/index.php?app=core&module=attach&section=attach&attach_rel_module=post&attach_id=170)

                  C'est pas un peu tôt pour commencer à faire de l'UML, alors qu'on ne sait même pas ce qu'il va devoir faire ce framework ni comment ?

                  Mon MMORTS par navigateur développé avec le MeliFramework : <http://www.h-wars.net>
                  Client & serveur chat gratuit : <http://easychat.evade-multimedia.net>
                  Site de mes romans d'héroïc fantasy :<http://www.worldofmoons.net> - Achetez le roman : Sur thebookedition.com ou sur Google Play
                  Humour et blagues informatiques : <http://www.danstoncode.net>

                  1 réponse Dernière réponse
                  0
                  • SoulalexS Hors-ligne
                    SoulalexS Hors-ligne
                    Soulalex
                    a écrit sur dernière édition par
                    #22

                    Justement non, autant faire étape par étape pour que chacune soit bien réalisée. Donc la première étape sera de réaliser toute la base du site (les fonctions vraiment de base) ainsi que la gestion des applications, des contrôleurs, de la page, ...

                    Si on commence à intégrer beaucoup de choses à la fois on ne va pas s'en sortir. On va essayer de faire quelque chose d'assez modulable pour qu'on puisse intégrer justement par la suite tous les composants dont on aura besoin (session, gestion des DB, ...).

                    Et l'avantage de faire un diagramme c'est justement de définir comment va procéder le site pour générer demandée (mais j'avoue qu'il est très mal fait ^^). Après je ne vois pas trop ce que tu veux dire par "ce qu'il devra faire", comme tous les framework il devra offrir à l'utilisateur de nombreux outils pour concevoir son site web et ce le plus simplement possible.

                    Soulalex, Administrateur de Melinyel
                    + E-Mail : [[email protected]](mailto:[email protected] "Lien vers un courriel")
                    + GitHub : [https://github.com/Soualex](https://github.com/Soualex "Lien externe")

                    1 réponse Dernière réponse
                    0
                    • AnaeriaA Hors-ligne
                      AnaeriaA Hors-ligne
                      Anaeria
                      Membre d'honneur
                      a écrit sur dernière édition par
                      #23

                      C'est très bien de faire un diagramme, et il faudra en faire certainement plus d'un... mais je vais expliquer un peu plus.

                      On est entrain de concevoir quelque chose de complexe dont on ne sait pas du tout comment il devra fonctionner. Et cela, au point que l'architecture de base puisse être différente.

                      Quelques exemple, le framework est construit de manière unifié, donc tous les modules de base (Router, ORM, Parser, Controllers) peuvent être directement intégré. Ou alors, il sera construit de manière entièrement modulaire, dans ce cas l'architecture devra pouvoir se séparer de certains éléments.

                      Donc pour ce qui est de formaliser des concepts, je pense que c'est très prématuré, vu que ces concepts non pas été définis.

                      Si on veux faire un framework qui sert a quelque chose et soit facilement utilisable pas un maximum de développeurs, il ne suffit pas de se dire qu'on va concevoir un truc qui va générer des pages et pour le reste on rajoutera des modules plus ou moins autour. C'est un tout à concevoir.

                      Pour cela, en principe, on part d'un ou plusieurs besoins et on va vers un ou plusieurs objectifs clairement définis.

                      Je vais illustrer tout ça par quelques propositions d'objectifs, de questionnements :

                      • Offrir une architecture permettant d'intégrer facilement des modules externes (cela IMPOSE de prévoir que des modules inconnus seront intégré)
                      • Ou offrir un ensemble de fonctionnalités de base de création et de gestion de site (dans ce cas, les modules peuvent être directement rattaché et intégré)
                      • On peut également imaginer un mix des deux
                      • Est-ce que la gestion du frontend est prévu à la base (intégration directe d'un système de layout, de vues, templates, de cache, ...) ou est-il considéré comme un module extérieur ?
                      • L'ORM est-il intégré de base ? ou le dev pourra choisir celui qui lui convient le mieux ? On développement le notre ? Selon quelles bases ? ...
                      • Dans quelle mesure le framework sera configurable ? (cela impose de prévoir ou non des modules de gestions de confiugration plus ou moins avancés)
                      • Du côté sécurité, comment le framework devra réagir aux multiples attaques (appel de code direct, URL mal formaté, flood, bruteforce, injection, ...) ?

                      D’expérience, sur un projet de cet envergure, plus on planifie de chose AVANT de concevoir la moindre chose de technique, mieux en s'en sortira après. Le principal ennemi d'un projet de dev de grande taille, avec de multiple participant, c'est les rajouts en court de route qui sont fait "comme on peut". On gagnera beaucoup de temps de développement en se cassant la tête maintenant à prévoir un maximum de possibilités.

                      Pour résumé ce que je pense du diagramme, c'est que oui, il est logique, oui il fonctionne, mais est-ce que c'est de ca qu'on a besoin ? Si oui, c'est pour répondre à quel besoin, sinon il est inutile voire pire... faux.

                      Mon MMORTS par navigateur développé avec le MeliFramework : <http://www.h-wars.net>
                      Client & serveur chat gratuit : <http://easychat.evade-multimedia.net>
                      Site de mes romans d'héroïc fantasy :<http://www.worldofmoons.net> - Achetez le roman : Sur thebookedition.com ou sur Google Play
                      Humour et blagues informatiques : <http://www.danstoncode.net>

                      1 réponse Dernière réponse
                      1
                      • SoulalexS Hors-ligne
                        SoulalexS Hors-ligne
                        Soulalex
                        a écrit sur dernière édition par
                        #24

                        C'est la première fois que je lance un projet de cette envergure donc je ne sais pas trop comment m'y prendre. Je vais m'organiser pour faire au mieux 🙂

                        Soulalex, Administrateur de Melinyel
                        + E-Mail : [[email protected]](mailto:[email protected] "Lien vers un courriel")
                        + GitHub : [https://github.com/Soualex](https://github.com/Soualex "Lien externe")

                        1 réponse Dernière réponse
                        0
                        • AzadA Hors-ligne
                          AzadA Hors-ligne
                          Azad
                          a écrit sur dernière édition par
                          #25

                          Pour ma part, je n'aurais pas le temps de m'impliquer dans ce projet.
                          Est-ce que vous arriverez à prendre en main ce projet de manière autonome (Soulalex / Anaeria) ? 🙂
                          S'il vous faut quoique ce soit, n'hésitez pas.

                          Administrateur du forum.

                          Contactez-moi par message privé ou par mail.

                          1 réponse Dernière réponse
                          0
                          • AnaeriaA Hors-ligne
                            AnaeriaA Hors-ligne
                            Anaeria
                            Membre d'honneur
                            a écrit sur dernière édition par
                            #26

                            Pour ma part, je n'aurais pas le temps de m'impliquer dans ce projet.

                            Est-ce que vous arriverez à prendre en main ce projet de manière autonome (Soulalex / Anaeria) ? 🙂

                            S'il vous faut quoique ce soit, n'hésitez pas.

                            Pour moi, y a ps de soucis, si tu le monde est ok. J'ai l'habitude de gérer les projets de grande tailles en parallèle, je fait ça tout les jours 😄

                            En ce sens, je vais proposer une petite présentation exhaustive de ce qu'on souhaite faire, de ce à quoi on veux arriver et des fonctionnalités que l'on pourra prendre en compte, etc...

                            J'essaye de faire ca cette après-midi.

                            Mon MMORTS par navigateur développé avec le MeliFramework : <http://www.h-wars.net>
                            Client & serveur chat gratuit : <http://easychat.evade-multimedia.net>
                            Site de mes romans d'héroïc fantasy :<http://www.worldofmoons.net> - Achetez le roman : Sur thebookedition.com ou sur Google Play
                            Humour et blagues informatiques : <http://www.danstoncode.net>

                            1 réponse Dernière réponse
                            0
                            • AzadA Hors-ligne
                              AzadA Hors-ligne
                              Azad
                              a écrit sur dernière édition par
                              #27

                              Et bien c'est parfait !
                              Personne ne dira jamais qu'Anaeria ne mérite pas son grade, au moins. 😉

                              Administrateur du forum.

                              Contactez-moi par message privé ou par mail.

                              1 réponse Dernière réponse
                              0
                              • AnaeriaA Hors-ligne
                                AnaeriaA Hors-ligne
                                Anaeria
                                Membre d'honneur
                                a écrit sur dernière édition par
                                #28

                                Comme promis, une présentation des besoins, objectifs et fonctionnalités de notre projet.

                                Si quelqu'un veux apporter des gros changements à cette liste, c'est maintenant.

                                Pour ce qui est fonctionnalités précises (notamment du frontend), elles pourront être intégré sous forme de modules comme prévu dans la structure.

                                Besoins

                                • Développer un framework backend / frontend pour démontrer les talents et capacités de la communauté Mélinyel
                                • Offrir un framework PHP/MySql simple d’utilisation, souple et gratuit

                                Objectifs

                                • Le framework devra être OpenSouce

                                • Il sera en PHP5 / MySQL pour le backend et HTML5 / CSS3 / jQuery pour le frontend

                                • Il devra permettre de déployer un site rapidement en utilisant un système de modules (les modules seront soit préexistants, intégrés, ou libres)

                                • Spécifique au backend

                                  • Il sera construit sur le principe MVC (Modèle – Vue – Controller)
                                  • Il devra garantir la sécurité des sources et des données sensibles au sein du site (fichiers privé, BDD, …)
                                  • Il devra gérer dynamiquement les URL tout en gérant les appels erronés
                                  • Il devra être suffisamment performant pour pouvoir générer et envoyer une page standard selon les standards Google (moins de 0.5 secondes en moyenne pour toute page qui ne contient pas d’autres traitement que de l’affichage de contenu)
                                • Spécifique au frontend

                                  • Le frontend devra respecter les standards actuels de constructions de pages responsive
                                  • Ne seront PAS pris en charge tous les navigateurs et appareils ne supportant pas intégralement HTML5 et/ou CSS3 et/ou jQuery 2.x.

                                Fonctionnalités du backend

                                • Router d’URL RESTful + traitement des requêtes AJAX
                                • ORM
                                • Caching de données
                                • Caching de pages
                                • Un système d'applications (avec ressources séparées)
                                • Gestion des inputs et ressources clients (cookies, sessions, …)
                                • Interface MySQLi / PDO (entre l’ORM et la BDD)
                                • Assistance au débogage
                                  • Captation et inscription des erreurs et exceptions PHP / MySql
                                  • Gestion des erreurs et logs personnalisé
                                  • Profiling et benchmarching
                                • Gestion de l’environnement d’exécution (test, dev, open-beta, prod, …)
                                • Système de layout et de view imbriquées (un layout qui contient des vues et qui contiennent des vues, etc…)
                                • Système de hook : pouvoir déclencher une action à un moment précis du système (pre system, pre controller, post controller constructor, before rendering, post controller, post system)
                                • Système de helpers : une bibliothèque de fonctions accessible dans des endroits précis (uniquement pour les controllers, uniquement pour les vues, …)
                                • Gestion des erreurs de protocole (http, FTP, WS,…)
                                • Un système de librairies externes
                                • La gestion d’envoi de mails
                                • Gestion de l'upload / download
                                • Génération assistée des ressources externes de type sitemap et fluxRSS
                                • Gestion de l’authentification avec niveaux de droits et des sessions

                                Fonctionnalités du frontend

                                • Gestion de l’AJAX (plus approfondie que jQuery)
                                • Gestion de l'upload / download
                                • Gestion de d’une interface graphique
                                • Aide à la mise en page
                                • Gestion des formulaires
                                • Design responsive
                                • Intégration des ressources JavaScript externes (Google API, Facebook, Twitter, …)
                                • EasyChat (y a pas de raison !)
                                • Autres fonctionnalités sous forme de modules dédiée à un secteur de site bien précis (spécifique pour blog, forum, ….)

                                Mon MMORTS par navigateur développé avec le MeliFramework : <http://www.h-wars.net>
                                Client & serveur chat gratuit : <http://easychat.evade-multimedia.net>
                                Site de mes romans d'héroïc fantasy :<http://www.worldofmoons.net> - Achetez le roman : Sur thebookedition.com ou sur Google Play
                                Humour et blagues informatiques : <http://www.danstoncode.net>

                                1 réponse Dernière réponse
                                1
                                • SoulalexS Hors-ligne
                                  SoulalexS Hors-ligne
                                  Soulalex
                                  a écrit sur dernière édition par
                                  #29
                                  • Développement d'un système d'applications (pratique quand on veut faire plusieurs sites différents ou pour d'autres choses).
                                  • Gestion des fichiers (download / upload).

                                  Soulalex, Administrateur de Melinyel
                                  + E-Mail : [[email protected]](mailto:[email protected] "Lien vers un courriel")
                                  + GitHub : [https://github.com/Soualex](https://github.com/Soualex "Lien externe")

                                  1 réponse Dernière réponse
                                  0
                                  • AnaeriaA Hors-ligne
                                    AnaeriaA Hors-ligne
                                    Anaeria
                                    Membre d'honneur
                                    a écrit sur dernière édition par
                                    #30
                                    • Développement d'un système d'applications (pratique quand on veut faire plusieurs sites différents ou pour d'autres choses).
                                    • Gestion des fichiers (download / upload).

                                    Très juste, j'ai rajouté 🙂

                                    Mon MMORTS par navigateur développé avec le MeliFramework : <http://www.h-wars.net>
                                    Client & serveur chat gratuit : <http://easychat.evade-multimedia.net>
                                    Site de mes romans d'héroïc fantasy :<http://www.worldofmoons.net> - Achetez le roman : Sur thebookedition.com ou sur Google Play
                                    Humour et blagues informatiques : <http://www.danstoncode.net>

                                    1 réponse Dernière réponse
                                    0
                                    • SoulalexS Hors-ligne
                                      SoulalexS Hors-ligne
                                      Soulalex
                                      a écrit sur dernière édition par
                                      #31

                                      Gestion des formulaires aussi ^^

                                      Soulalex, Administrateur de Melinyel
                                      + E-Mail : [[email protected]](mailto:[email protected] "Lien vers un courriel")
                                      + GitHub : [https://github.com/Soualex](https://github.com/Soualex "Lien externe")

                                      1 réponse Dernière réponse
                                      0
                                      • AnaeriaA Hors-ligne
                                        AnaeriaA Hors-ligne
                                        Anaeria
                                        Membre d'honneur
                                        a écrit sur dernière édition par
                                        #32

                                        Gestion des formulaires aussi ^^

                                        C'est à dire ?

                                        Un truc pour aider à les créer et les mettre en page côté frontend ?

                                        Parce-que côté backend c'est simplement des données entrante d'un POST, y a rien de sorcier...

                                        Ou alors on peu prévoir quelque chose de pus costaud avec la vérification automatique des champs en AJAX, le tout intégré avec les messages d'erreurs.

                                        Mon MMORTS par navigateur développé avec le MeliFramework : <http://www.h-wars.net>
                                        Client & serveur chat gratuit : <http://easychat.evade-multimedia.net>
                                        Site de mes romans d'héroïc fantasy :<http://www.worldofmoons.net> - Achetez le roman : Sur thebookedition.com ou sur Google Play
                                        Humour et blagues informatiques : <http://www.danstoncode.net>

                                        1 réponse Dernière réponse
                                        0
                                        • SoulalexS Hors-ligne
                                          SoulalexS Hors-ligne
                                          Soulalex
                                          a écrit sur dernière édition par
                                          #33

                                          Ou alors on peu prévoir quelque chose de pus costaud avec la vérification automatique des champs en AJAX, le tout intégré avec les messages d'erreurs.

                                          Oui ça c'est bien.

                                          Ce que je veux dire par gestion des formulaires c'est les créer et les générer dans les pages en les sécurisant contre les attaques.

                                          Soulalex, Administrateur de Melinyel
                                          + E-Mail : [[email protected]](mailto:[email protected] "Lien vers un courriel")
                                          + GitHub : [https://github.com/Soualex](https://github.com/Soualex "Lien externe")

                                          1 réponse Dernière réponse
                                          0

                                          Bonjour ! Vous semblez intéressé par cette conversation, mais vous n’avez pas encore de compte.

                                          Marre de refaire défiler les mêmes messages ? Créez un compte pour retrouver votre position, recevoir des notifications des nouvelles réponses, sauvegarder vos favoris et voter pour les messages que vous appréciez.

                                          Grâce à votre participation, ce message peut devenir encore meilleur 💗

                                          S'inscrire Se connecter
                                          Répondre
                                          • Répondre à l'aide d'un nouveau sujet
                                          Se connecter pour répondre
                                          • Du plus ancien au plus récent
                                          • Du plus récent au plus ancien
                                          • Les plus votés


                                          • Se connecter

                                          • Connectez-vous ou inscrivez-vous pour faire une recherche.
                                          Powered by NodeBB Contributors
                                          • Premier message
                                            Dernier message
                                          0
                                          • Catégories
                                          • Récent
                                          • Mots-clés
                                          • Populaire
                                          • Web
                                          • Utilisateurs
                                          • Groupes