A tree with topics and sub topics.
A tree with topics sorted according to requirements/dependencies.
A topic page.
A page for an external learning resource.
A page for a resource collection.
A resource viewed in the context of a collection.
A topic page, with vote buttons for "inclusion" and "dependency" relations.

This project is not covered by Drupal’s security advisory policy.

Skill Compass is a tool for building sites that help people learn a subject. It allows collaborative work in breaking down the subject into topics and sub topics, building advancement trees of topics, and adding learning resources of different types. The topics and resources are presented in a way that helps learners discover what they can and/or should learn, by themselves.

An example of the Skill Compass modules can be found at http://skillcompass.org/. There are also some demonstration videos available introducing Skill Compass.

A description in images

Image 1: Topics are presented in a graphical tree showing main 'branches' of the subject, and their sub topics, and even more sub topics.

Image 2: There's an alternative tree for showing "advancement" – once you've mastered a specific topic, these other topics will be in your reach.

Image 3: -->
Topics are presented with a description, and a list of resources for learning that topic. (On the skillcompass.org example site, suggestions are also brought in from Google.)

Topics can me marked as mastered, which will start populating a personal list of topics in your learning vicinity.
.

Image 4: -->
Learning resources are content types that you can customize for your needs. In this case, the resource merely points to another web page.

Users can rate the resource on some different scales, and mark resources as completed. You can also add resources to your quicklist, to save them for later.
.
.
.

Image 5: -->
One particular kind of learning resource is the "resource collection", allowing you to list selected resources in a particular order. They can be rated and used just like other resources.
.
.
.
.
.
.
.
.
.
.
.
.
.

Image 6: -->
When browsing a collection, you get links the previous/next resources in that collection.
.
.
.
.

Image 7: -->
Users with the right permissions can affect the structure of the topic trees. This is done by voting on the relations between topics. The strongest relation is represented in the tree, but all the (positive) relations are shown on the topic page.
.
.
.

Modules in the Skill Compass project

The core modules in Skill Compass don't provide any new pages, but only components that can be used on potential pages. This approach is chosen to allow each site to have its own page layout, without having to override Skill Compass settings.

There are also example layout modules in Skill Compass, which are recommended if you just want to try out the project. The "big" example layout module is set up to cache pages for both anonymous and logged in users.

The core modules in Skill Compass are:

  • Topics. This feature brings the basic topic content type, used to divide the subject of learning into smaller pieces. This feature also allows setting topics as required for other topics, and as sub topics of other topics.
  • Topic trees. This feature gives a graphical representation of the topic trees (both as sub topics and advancements). It uses Graph API and The JIT to build these trees.
  • Topic proficiency. This feature allows marking topics as 'mastered', and provides a drop-down navigation for finding topics unlocked by the mastered topics.
  • Topic relations. This module/feature hides the normal references between topics, replacing them with relations that users can vote up/down on. The module thus allows topics to have multiple relations, though only the strongest "is a part of" or "requires" relation for each topic will be represented in the topic trees (if these are used).
  • Resource shared. This feature contains some settings that are used by all types of learning resource. (Users can vote for resources on three scales: correct, clear and entertaining. Users may also mark resources as 'completed', or add them to a quicklist.) There is also a Resource flag feature, capturing flags shared by multiple resource types – which unfortunately often has to be in an overridden state due to how Flag exports settings.
  • External learning resources. This feature provides a content type for learning resources pointing to other web pages.
  • Resource collections. This feature provides a content type for listing resources in a selected order, and also views for browsing the list with previous/next links.
  • Drupal project references. In case you want to use Skill Compass for managing Drupal learning resources, this feature allows pointing to (full) projects on drupal.org, including separate versions of the projects. Additionally, it also provides microdata markup to the taxonomy term field, making it possible to identify and aggregate the drupal.org projects for external tools. This is ongoing work, see #1513648: Get better display of Drupal project microdata.

Why modules and not installation profile?

The Skill Compass project could have been an installation profile, but to allow being used on existing sites (or with other installation profiles) it is instead a number of modules/feature packages. Each module provide its own functionality, so you can enable only the parts you find useful for your site.

A few required patches

To use all the modules/feature packages in this project, you will need the following patches:

Once these patches get committed you will of course not have to patch the modules yourself.

Some notes

Roadmap and plans are found at #1513334: [meta] Roadmap and plans.
Issues only relating to skillcompass.org are managed over at http://drupal.org/node/1534296.
More information is found in the README of this project.

Project information

Releases