Documentation Elgg (master)

Elgg (pronunciation) est un framework open source de développement rapide pour construire des applications web sociales. C’est un excellent choix pour construire tout type d’application où des utilisateurs se connectent et partagent des informations.

Fonctionnalités

  • Une API bien documentée qui permet aux développeurs d’accélérer leurs nouveaux projets avec une courbe d’apprentissage simple

  • Composer est le gestionnaire de paquets qui simplifie grandement l’installation et la maintenance du noyau de Elgg et des plugins

  • Un système flexible de hooks et d’événements qui permet aux plugins d’étendre et de modifier la majorité des aspects des fonctionnalités et du comportement de l’application

  • Un système de vues extensible qui permet aux plugins de collaborer sur la couche de présentation des applications et de construire des thèmes personnalisés complexes

  • Un système de ressources statiques mises en cache qui permet aux thèmes et aux plugins de servir des images, des feuilles de style, des polices et des scripts sans charger le moteur

  • L’authentication des utilisateurs s’appuie sur des modules d’authentification enfichables, ce qui permet aux applications d’implémenter des protocoles d’authentification personnalisés

  • La Sécurité est assurée par une validation anti-CSRF native, des filtres XSS stricts, des signatures HMAC, et les dernières approches cryptographiques pour le hachage des mots de passe

  • Une API côté client motorisée par des modules JavaScript asynchrones chargés via RequireJS et un service Ajax natif pour une communication aisée avec le serveur

  • Un système d’Entités flexible qui permet aux applications de prototyper de nouveaux types de contenus et d’interactions entre utilisateurs

  • Un modèle de données très bien conçu avec une couche d’API consolidée qui permet aux développeurs d’interfacer facilement avec la base de données

  • Un système de contrôle d’accès qui permet aux applications de construire des politiques d’accès aux contenus granulaires, comme de créer des réseaux privés et des intranets

  • Groupes - support intégré pour des groupes d’utilisateurs

  • Stockage de fichiers supporté par une API flexible qui permet aux plugins de stocker les fichiers créés par les utilisateurs et de les servir/streamer sans démarrer le moteur

  • Un Service de Notifications qui permet aux applications d’abonner des utilisateurs aux notifications sur le site ou par e-mail, et d’implémenter l’intégration avec d’autres services tierce-partie

  • Des Services Web RPC qui peuvent être utilisés pour des intégrations complexes avec des applications externes et des clients mobiles

  • L’Internationalisation et la localisation des applications Elgg est simple et peut être intégrée avec des services tierce-partie tels que Transifex

  • La communauté Elgg peut aider sur n’importe quelle problématique, et héberge un répertoire de plus de 1000 plugins open source

Sous le capot :

  • Elgg est un framework modulaire orienté objet (OOP) qui est dirigé par des services DI

  • compatible NGINX ou Apache

  • Symfony2 HTTP Foundation gère les requêtes et réponses

  • RequireJS gère les modules AMD

  • Laminas Mail gère les e-mails sortants

  • Filtres XSS htmLawed

  • DBAL

  • Migrations de base de donnée Phinx

  • CSS-Crush pour le pré-traitement CSS

  • Imagine pour la manipulation d’image

  • Cache persistant avec Memcached et/ou Redis

  • Gestion des erreurs avec Monolog

Exemples

Elgg a été utilisé pour construire tous types d’applications sociales:

  • réseaux sociaux ouverts (similaires à Facebook)

  • thématiques (comme la communauté Elgg)

  • intranets privés ou professionnels

  • rencontres

  • éducatifs

  • blog d’entreprise

Ceci constitue la documentation officielle du projet Elgg.

Poursuivre la lecture