Coder Social home page Coder Social logo

ertonilson / chamilo-lms Goto Github PK

View Code? Open in Web Editor NEW

This project forked from chamilo/chamilo-lms

0.0 2.0 0.0 534.7 MB

Chamilo is a learning management system focusing on ease of use, re-usability, collaboration and sharing.

Home Page: http://www.chamilo.org

License: Other

ApacheConf 0.01% PHP 48.29% JavaScript 34.60% HTML 8.52% CSS 7.16% PowerShell 0.01% Ruby 0.01% Groff 0.01% Shell 0.01% Java 0.86% Smarty 0.46% Python 0.01% Objective-C 0.07% Perl 0.01% Gherkin 0.02% XSLT 0.01%

chamilo-lms's Introduction

Chamilo

Build Status Scrutinizer Code Quality Code Coverage Bountysource Code Consistency CII Best Practices

This is the master branch of Chamilo, meaning that this is the most advanced development version of Chamilo, or the most far ahead in the future. It also means it is likely to be relatively unstable, so if you're looking for something to put in production at your organization, this is NOT the right branch. Look at the "branches" menu for any "a.b.x" branch instead.

Installation

This installation guide is for development environments only.

Install PHP, a web server and MySQL/MariaDB

To run Chamilo, you will need at least a web server (we recommend Apache2 for commodity reasons), a database server (we recommend MariaDB but will explain MySQL for commodity reasons) and a PHP interpreter (and a series of libraries for it). If you are working on a Debian-based system (Debian, Ubuntu, Mint, etc), just type

sudo apt-get install libapache2-mod-php mysql-server php5-gd php5-intl php5-curl php5-json

Install Git

The development version 1.10.x requires you to have Git installed. If you are working on a Debian-based system (Debian, Ubuntu, Mint, etc), just type

sudo apt-get install git

Install Composer

To run the development version, you need Composer, a libraries dependency management system that will update all the libraries you need for Chamilo to the latest available version.

Make sure you have Composer installed. If you do, you should be able to launch "composer" on the command line and have the inline help of composer show a few subcommands. If you don't, please follow the installation guide at https://getcomposer.org/download/

Download Chamilo from GitHub

Clone the repository

sudo mkdir chamilo
sudo chown -R `whoami` chamilo
git clone -b master --single-branch https://github.com/chamilo/chamilo-lms.git chamilo

Checkout the master branch

cd chamilo
git checkout --track origin/master
git config --global push.default current

Update dependencies using Composer

From the Chamilo folder (in which you should be now if you followed the previous steps), launch:

composer update

If you face issues related to missing JS libraries, you might need to ensure that your web/assets folder is completely re-generated. Use this set of commands to do that:

rm composer.lock
rm -rf web/ vendor/
composer clear-cache
composer update

This will take several minutes in the best case scenario, but should definitely generate the missing files.

Change permissions

On a Debian-based system, launch:

sudo chown -R www-data:www-data app main/default_course_document/images main/lang web

Start the installer

In your browser, load the Chamilo URL. You should be automatically redirected to the installer. If not, add the "main/install/index.php" suffix manually in your browser address bar. The rest should be a matter of simple OK > Next > OK > Next...

Upgrade from 1.11.x

2.0 is a major version. It contains a series of new features, that also mean a series of new database changes in regards with version 1.11.x. As such, it is necessary to go through an upgrade procedure when upgrading from 1.11.x to 2.x.

The upgrade procedure is relatively straightforward. If you have a 1.11.x initially installed with Git, here are the steps you should follow (considering you are already inside the Chamilo folder):

git fetch --all
git checkout origin master

Then load the Chamilo URL in your browser, adding "main/install/index.php" and follow the upgrade instructions. Select the "Upgrade from 1.11.x" button to proceed.

For developers and testers only

This section is for developers only (or for people who have a good reason to use a development version of Chamilo), in the sense that other people will not need to update their Chamilo portal as described here.

Updating code

To update your code with the latest developments in the master branch, go to your Chamilo folder and type:

git pull origin master

If you have made customizations to your code before the update, you will have two options:

  • abandon your changes (use "git stash" to do that)
  • commit your changes locally and merge (use "git commit" and then "git pull")

You are supposed to have a reasonable understanding of Git in order to use Chamilo as a developer, so if you feel lost, please check the Git manual first: http://git-scm.com/documentation

Updating your database from new code

Since the 2015-05-27, Chamilo offers the possibility to make partial database upgrades through Doctrine migrations.

To update your database to the latest version, go to your Chamilo root folder and type

php bin/doctrine.php migrations:migrate --configuration=app/config/migrations.yml

If you want to proceed with a single migration "step" (the steps reside in src/Chamilo/CoreBundle/Migrations/Schema/V110/), then check the datetime of the version and type the following (assuming you want to execute Version20150527120703)

php bin/doctrine.php migrations:execute 20150527120703 --up --configuration=app/config/migrations.yml

Contributing

If you want to submit new features or patches to Chamilo, 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://stable.chamilo.org/documentation

chamilo-lms's People

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.