Chamilo is a learning management system focused on ease of use and accessibility
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Julio 76b5db7cad Fix twig URL, use course_url_params to get cid/sid/gid params in twig 5 years ago
.github Add support information as per Github recommendations 6 years ago
assets Fix installation after changing 'main' path 5 years ago
bin Update symfony configuration 5 years ago
config Fix installation after changing 'main' path 5 years ago
documentation Add php exif extension requirement. 5 years ago
plugin/clockworksms/vendor Move plugin folder insde public 5 years ago
public Fix twig URL, use course_url_params to get cid/sid/gid params in twig 5 years ago
src Fix twig URL, use course_url_params to get cid/sid/gid params in twig 5 years ago
templates/themes/default fix login.html.twig 6 years ago
tests Minor - format code 5 years ago
translations Fix installation process 6 years ago
var Minor - remove unused code/files 5 years ago
.codeclimate.yml Remove APP_URL_APPEND not needed since the main folder is inside public 5 years ago
.editorconfig
.env Remove APP_URL_APPEND not needed since the main folder is inside public 5 years ago
.env.test Update symfony configuration 5 years ago
.flintci.yml Minor - fix CI path 6 years ago
.gitattributes Add phpstan/phpstan to check PHP fatal/warning errors 5 years ago
.gitignore Ignore public assets 5 years ago
.htaccess Remove unused code. 5 years ago
.php_cs Add CI files 7 years ago
.php_cs.dist Move files inside public, update CI paths, remove APP_URL_APPEND calls 5 years ago
.scrutinizer.yml Minor - update CI config files 6 years ago
.travis.yml Minor - Travis - remove libapache2-mod-fastcgi 5 years ago
.yamllint_config Minor - Ignore files in CI 7 years ago
CODE_OF_CONDUCT.md Added code of conduct (contributor-covenant.org) 6 years ago
CONTRIBUTING.md Minor - Format code, update docs, update tpls, remove comment 6 years ago
LICENSE Add LICENSE 6 years ago
README.md Move files inside public, update CI paths, remove APP_URL_APPEND calls 5 years ago
composer.json Fix URL after moving 'main' dir to 'public' 5 years ago
index.php Add warning page. 5 years ago
license.txt Minor - partial merge with 1.11.x 6 years ago
package.json Add context menu in grid actions. 5 years ago
phpstan.neon Minor - format code 5 years ago
ruleset.xml Minor - rename CI file, flint fixes 6 years ago
webpack.config.js Add new exercise.js file loaded only in the exercise tool. 5 years ago
yarn.lock Update yarn 5 years ago

README.md

Chamilo 2.x

Build Status Scrutinizer Code Quality Bountysource Code Consistency CII Best Practices Codacy Badge

Chamilo is an e-learning platform, also called "LMS" or "LCMS" published under GNU/GPLv3+. It is or has been used by more than 20M people worldwide.

Quick install

Chamilo 2.0 is still in development stage. This install procedure is for reference only. For a stable Chamilo, please install Chamilo 1.11.x. See the 1.11.x branch README.md for details.

We assume you have already installed "yarn" and "composer" and you're installing the portal in a domain, not in a sub folder inside a domain.

# on a fresh Ubuntu, you can prepare your server by issuing an apt command like the following
apt update && apt -y upgrade && apt install apache2 libapache2-mod-php mariadb-client mariadb-server php-pear php-dev php-gd php-curl php-intl php-mysql php-mbstring php-zip php-xml php-cli php-apcu php-bcmath git unzip
# otherwise, you can use the following directly:
git clone https://github.com/chamilo/chamilo-lms.git chamilo2
cd chamilo2
composer install (If composer asks to accept recipes, just press enter or "n")
php bin/console fos:js-routing:dump --format=json --target=public/js/fos_js_routes.json
yarn install
yarn run encore dev
chmod -R 777 .

Then enter the main/install/index.php and follow the UI instructions (database, admin user settings, etc).

After the web install process, change the permissions back to a reasonnably safe state:

chmod -R 755 .
chown -R www-data: public/ var/

Quick update

If you have already installed it and just want to update it from Git, do:

git pull origin master
composer update
php bin/console fos:js-routing:dump --format=json --target=public/js/fos_js_routes.json
    
yarn upgrade
yarn encore dev

This will update the JS (yarn) and PHP (composer) dependencies.

Installation guide (Dev environment, stable environment not yet available)

If you are a developer and want to contribute to Chamilo in the current development branch (not stable yet), then please follow the instructions below. Please bear in mind that the development version is NOT COMPLETE at this time, and many features are just not working yet. This is because we are working on root components that require massive changes to the structure of the code, files and database. As such, to get a working version, you might need to completely uninstall and re-install from time to time. You've been warned.

First, apply the procedure described here: Managing CSS and JavaScript in Chamilo (in particular, make sure you follow the given links to install all the necessary components on your computer).

Then make sure your database supports large prefixes (see this Stack Overflow thread if you use MySQL < 5.7 or MariaDB < 10.2.2).

Load the (your-domain)/main/install/index.php URL to start the installer (which is very similar to the installer in previous versions). If the installer is pure-HTML and doesn't appear with a clean layout, that's because you didn't follow these instructions carefully. Go back to the beginning of this section and try again.

Changes from 1.x

  • app/Resources/public/assets moved to public/assets
  • main/inc/lib/javascript moved to public/js
  • main/img/ moved to public/img
  • main/template/default moved to src/Chamilo/CoreBundle/Resources/views
  • bin/doctrine.php removed use bin/console doctrine:xyz options
  • PHPMailer replaced with Swift Mailer
  • Plugin images, css and js libs are loaded inside the public/plugins folder (composer update copies the content inside plugin_name/public inside web/plugins/plugin_name
  • Plugins templates use asset() function instead of using "_p.web_plugin"
  • bower replaced by yarn

Todo

See https://github.com/chamilo/chamilo-lms/projects/3

Contributing

If you want to submit new features or patches to Chamilo 2, please follow the Github contribution guide https://guides.github.com/activities/contributing-to-open-source/ and our CONTRIBUTING.md file. In short, we ask you to send us Pull Requests based on a branch that you create with this purpose into your repository forked from the original Chamilo repository.

Documentation

For more information on Chamilo, visit https://campus.chamilo.org/documentation/index.html

Notes

You can install Yarn on Ubuntu following the instructions at https://linuxize.com/post/how-to-install-yarn-on-ubuntu-18-04/ You can install Composer on Ubuntu following the instructions at https://getcomposer.org/download/