Chamilo LMS is a PHP-based Learning Management System built with Symfony framework and Vue.js frontend. It provides course management, assessments, gradebook, attendance tracking, and collaboration tools through a modular plugin architecture. The system features RESTful API endpoints consumed by Vue services, Doctrine ORM for data persistence, and supports over 60 languages. While actively modernizing with Vue.js 3 and Symfony 6, it maintains legacy PHP components alongside new implementations, creating some technical debt from gradual migration. The plugin system follows a standardized structure enabling extensibility, and the codebase demonstrates solid engineering practices with clear separation of concerns between CoreBundle, CourseBundle, and PluginBundle.
This repository is the official Composer project template for bootstrapping new Sulu CMS applications. It is not a standalone CMS but a pre-configured Symfony 7.4 application skeleton that wires together the Sulu 3.0 bundles (admin, media, security, page, search, article, snippet, etc.) with Doctrine ORM, MySQL, Twig, Messenger, Flysystem, and a React-based admin SPA built via Webpack. The application exposes two runtime contexts through a single kernel: an admin backend under /admin with a JSON API and a website frontend serving Twig templates. Entry points are public/index.php for web requests and bin/console, bin/adminconsole, bin/websiteconsole for CLI operations. The template includes production-oriented infrastructure: HTTP cache layer via SuluHttpCache, FOSHttpCache for proxy caching, 2FA via scheb/2fa, search via CMSIG Seal with Loupe adapter, media handling, and a maintenance mode script that works without framework dependencies. The composer.json defines an extensive lint/test pipeline (PHPStan level max, PHP-CS-Fixer, Rector, Twig CS Fixer, container validation, Doctrine schema validation) and the GitHub Actions workflow tests the template across PHP 8.2-8.5, MySQL 5.7-8.4, and Node.js 20-24, including a create-project test that verifies the template can bootstrap a new project. Because this is a skeleton, the actual application code is minimal (a Kernel class, empty fixtures, and basic Twig templates). Its value lies in the configuration and integration of the Sulu ecosystem, serving as a starting point for multi-lingual, multi-portal CMS websites. The repository is actively maintained with recent commits and a comprehensive CI pipeline.
This is a Symfony bundle that adds Cross-Origin Resource Sharing (CORS) headers to HTTP responses and handles CORS preflight OPTIONS requests. It intercepts kernel request and response events, applies configurable per-URL rules (origin matching, allowed methods/headers, credentials, private network access, forced origin values, etc.), and automatically adds a `Vary: Origin` header to cacheable responses. The bundle is well-structured with a clean provider/resolver pattern for configuration, supports Symfony 5.4 through 8.0 and PHP 7.2+, and includes full CI and static analysis. It is a mature, actively maintained library that solves a specific HTTP security concern in a robust and extensible manner.
AtoM (Access to Memory) is a mature, open-source web application for archival description and access, developed by Artefactual Systems. In production, it manages hierarchical archival descriptions (fonds, series, files, items), authority records, repositories, digital objects, and accessions. It supports multiple archival standards (EAD, EAC, MODS, METS, Dublin Core) and provides multilingual, multi-repository archival description. The application is built on PHP 7/8 with a Symfony 1.x core, Propel ORM for persistence, and Elasticsearch for search indexing, with MySQL/MariaDB as the primary datastore and Gearman for background job processing.