Theos is a modern Learning Management System (LMS) built with Symfony 8, designed to deliver engaging online courses with a seamless user experience. The platform enables educators to create, manage, and deliver comprehensive courses to learners. The platform provides a rich set of features for both administrators and students, including course management, progress tracking, interactive lessons, and community engagement.
- 📚 Course Management - Create and organize courses with modules and lessons
- 📝 Interactive Lessons - Rich content support with multimedia integration
- 📊 Progress Tracking - Monitor student progress and completion rates
- 💬 Comments & Discussions - Foster community engagement on lessons
- 📅 Calendar & Scheduling - Manage cohorts and course schedules
- 🔔 Notifications - Real-time updates for students and instructors
- 👤 User Profiles - Personalized learning experiences
- 🎓 Badges & Achievements - Gamification to motivate learners
- 💳 Payment Integration - Manage subscriptions and course payments
- 📱 Fully Responsive - Optimized for mobile, tablet, and desktop
- 🌐 Multi-language Support - Internationalization ready
- Backend: Symfony 8 (PHP 8.4)
- Frontend: Tailwind CSS + Shadcn UI Components
- Database: PostgreSQL 15
- Web Server: FrankenPHP + Caddy
- Email Service: Brevo (via Symfony Mailer)
- Containerization: Docker & Docker Compose
- Testing: PHPUnit + Symfony Browser Kit
- Real-time: Turbo Frames for dynamic updates
-
Install the application
# 1. Clone the repository git clone git@github.com:flouzzy/theos.git cd theos # 2. Start Docker containers docker compose up -d # 3. Install dependencies & setup database docker compose exec php composer install docker compose exec php bin/console doctrine:migrations:migrate --no-interaction docker compose exec php bin/console doctrine:fixtures:load --no-interaction
-
Access the application
- HTTPS:
https://localhost:8096 - HTTP:
http://localhost:8095
- HTTPS:
For detailed installation instructions, see docs/installation.md.
- Installation Guide - Complete setup instructions
- Development Guide - Local development workflow
- Architecture Overview - Application structure and design
- Features Documentation - Detailed feature descriptions
- Database Schema - Database structure and migrations
- Testing Guide - Running and writing tests
- Deployment Guide - Production deployment
- Contributing Guidelines - How to contribute
- Troubleshooting - Common issues and solutions
- API Documentation - API endpoints (if applicable)
- User Guide - Getting started for students
- Admin Guide - Administration and configuration
Run the full test suite:
docker compose exec php bin/phpunitRun specific test suites:
# Smoke tests
docker compose exec php bin/phpunit tests/SmokeTest.php
# Functional tests
docker compose exec php bin/phpunit tests/RegistrationFunctionalTest.phpThis project is licensed under the MIT License.
Developed by Le Rocher team.
Need help? Check our Troubleshooting Guide or open an issue on GitHub.