MOOC platform built with Django and Angular to deliver and manage courses, classes and student activities
HTML Python JavaScript CSS Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
.tx Beginning of a javascript translation framework Mar 22, 2014
accounts [Admin] 'institution' and 'occupation' added to the admin interface Mar 14, 2018
activities More generic button label. Feb 21, 2018
administration lesson edit: fix unit selection Feb 27, 2018
core lesson: fix status filter on SimpleLesson queryset Apr 5, 2018
course_material Markdown editor removed from lesson editing in favor of TinyMCE Apr 5, 2017
docker remove configurador do entrypoint Jul 5, 2016
docs Postgres installation added to the documentation Aug 26, 2016
forum Merge branch 'plpc' into paralapraca Jul 25, 2016
ifs Add migration to IF App Apr 11, 2016
locale Fixed typo. Oct 10, 2017
media create section to allow user edit his profile Aug 27, 2013
notes Sending correct ID for couse notes deletion. Oct 17, 2017
reports [Reports] If the summary cannot be displayed, give an error message Jul 28, 2017
requirements Local dependencies updated Sep 8, 2017
scripts remove coments from script Jun 17, 2016
static see below Jul 30, 2014
tests remove browsers tests for now Sep 8, 2015
themes profile: add admin edit profile app, views and templates Nov 30, 2017
timtec urls: fix url redirects Dec 27, 2017
.bowerrc set bower Mar 31, 2016
.coveragerc update covaragerc Sep 4, 2013
.gitignore #600 change '' to '' and '' to '' ---> CoursesAdminController && Perm… Jun 20, 2016
Dockerfile removes all database operation from Dokerfile Jul 6, 2016
Gruntfile.js remove grunt-less and grunt-watch Mar 3, 2015
LICENSE add fix license references Aug 20, 2015 initial commit Aug 14, 2013
Makefile runs collectstatic before compress in deployment Aug 24, 2016 adicionando arquivos .yml Apr 13, 2016 updated developers documentation; removed unused and legacy documenta… Jul 11, 2016
Vagrantfile Vagrant example configs for paralapraca project Jul 30, 2016
bower.json Font awesome updated to 4.7.0 and Datetime-picker removed to avoid de… Feb 20, 2017 fix 402 pep8 rule Feb 8, 2015
dev-requirements.txt update some requirements Sep 15, 2014
jshint.conf jshint target on Makefile Nov 13, 2013 MIGRATION TO DJANGO Aug 23, 2013
mkdocs.yml Build docs with mkdocs Apr 13, 2016
package.json Bower updated Sep 26, 2017
setup.cfg Upgrade Rest Framework to 3.3.3 obs. fixes requireds from regrations Jun 14, 2016 fix Oct 1, 2014 fix pep8 Mar 26, 2014

#TIMTec Mooc

Instalação e configurações

Para acessar a documentação completa, veja a pasta docs na raiz da aplicação.


Licença - AGPLV3

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see LICENSE file here or 

Build Status Coverage

Requisitos de instalação

  • Operating system: Debian (>= 7.7) or Ubuntu (14.04);
  • Proxy server: uwsgi (>= 2.0.7);
  • Web Server: nginx (>= 1.6.2);
  • javascript server-side interpreter: node.js (>= 0.10.40);
  • Data base server: postgresql (>= 9.2);
  • Python language package: python (= 2.7 ou < 3);
  • Virtual Enviroment Python: virtualenv (>=1.11.6);

Requisitos de Desenvolvimento

  • all the above requirements
  • build essentials and many dev packages if on apt/rpm based systems
    • libpq-dev, libjpeg-dev, libpng12-dev, build-essential, python-dev, gettext
  • nodejs (0.10+) (you will need a ppa for ubuntu < 14.04)

Production Environment Requirements

UP to 6000 users

  • Processor: Dual Core
  • RAM: 2 to 4 GB
  • Disk Space: 10 GB
  • Network Total Transfer/mo: ~12GB
  • Incoming: 1GB
  • Outgoing: 11 GB

UP to 10k/12k users

  • Processor: Quad Core
  • RAM: 4 to 6 GB
  • Disk Space: 25 GB
  • Network Total Transfer/mo: ~25GB
  • Incoming: 2GB
  • Outgoing: 23 GB

Python env

  • create a Python 2.X virtualenv

    virtualenv ../timtec-env

  • activate the virtual env

    source ../timtec-env/bin/activate

  • run make


  • run the django devel server

    ./ runserver

Getting Started

We provide a vagrant file for easy dev environment creation. Install Vagrant and on the main directory run:

vagrant up

Them you just need to go inside the machine to start the dev server:

vagrant ssh

On the VM console:

./ runserver

Now the system is running, you can go to http://localhost:8000 on your web browser and navigate on it. To create a new superuser (so you can give permissions to other make other users professors) run:

./ createsuperuser

See the Vagrantfile and script folder for more details.

Running Tests

We made a bunch of tests for the system. They are separated into python tests (that includes selenium full stack tests) and Karma/AngularJS tests. To run all of them together just type

make all_tests

remember that you need to have your virtualenv activated and has installed everything from the dev-requirements.txt file.


Activate virtual env, then:

make python_tests


![Gitter]( Chat.svg)