Giter Club home page Giter Club logo

moodle2cc's Introduction

Moodle2CC

moodle2cc will convert Moodle 1.9 backup files into IMS Common Cartridge 1.1 formatted files.

Moodle information: http://moodle.org/

Common Cartridge information: http://www.imsglobal.org/cc/index.html

Use the Github Issues for feature requests and bug reports.

Installation/Usage

Command line

Install RubyGems on your system, see http://rubygems.org/ for instructions. Once RubyGems is installed you can install this gem:

$ gem install moodle2cc

Convert a moodle .zip into Common Cartridge format

$ moodle2cc migrate <path-to-moodle-backup> <path-to-cc-export-directory>

Or into a Canvas-enhanced Common Cartridge format

$ moodle2cc migrate --format=canvas <path-to-moodle-backup> <path-to-cc-export-directory>

In a Ruby application

Add this line to your application's Gemfile and run bundle:

gem 'moodle2cc'

Require the library in your project and use the migrator:

require 'moodle2cc'
migrator = Moodle2CC::Migrator.new moodle_zip_path, destination_path
migrator.migrate

Caveats

Common Cartridge (CC) does not support all of the concepts in a Moodle course. CC has no concepts such as assignments or wiki pages, so these things have to fit into Common Cartridge as best they can. Here are some of the decisions we made about these things:

Moodle Common Cartridge
Course Files All files are in the `web_resources` folder, links to files in HTML are referenced relative to that directory with the token `$IMS_CC_FILEBASE$`.
Assignments HTML pages in an `assignments` subfolder in `web_resources`. The description of the assignment is the body of the page and stuff like points possible are in meta fields.
Wiki Pages HTML pages in a `pages` subfolder in `web_resources`.
Discussion Topics The titles and bodies of topics are intact in the conversion.
Grade Items If the grade item is attached to an assignment its data will be in the meta data of the assignment's HTML page. Otherwise it isn't currently converted.
Assessments (quizzes) TODO - Coming soon! Only the CC-supported question types will be converted to QTI as documented here
Question Categories TODO - Coming soon! Common Cartridge only supports having a single question bank, so all banks will be combined into one. CC Question Bank Docs

Todo

  • Support exporting to CC 1.3
  • Support converting to multiple versions of CC?
  • Quiz conversion
  • Question Category conversion
  • LTI configurations?
  • Convert more Moodle features as requested
  • Moodle 2 support for standard CC
  • Moodle 2 support for canvas-flavored CC

Contributing

Run the tests:

$ bundle exec rake
  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

moodle2cc's People

Contributors

maneframe avatar rivernate avatar dexterthedragon avatar chrisdurtschi avatar bracken avatar wbhumphrey avatar jstanley0 avatar simonista avatar codekitchen avatar opes avatar jacobdewar 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.