Mind Map XBlock is a pluggable extension to the Open edX platform that allows course creators to build a learning experience in which students can visualize and easily edit Mind Maps within a course unit.
It leverages the jsMind open source JavaScript library to visualize and edit mind maps on htmls canvas and svg.
The Mind Map Xblock component can be used to build and display a mind map for learners to explore a particular concept, or to have learners build their own Mind map which can then be graded by course staff members.
This Xblock has been created as an open source contribution to the Open edX platform and has been funded by the Unidigital project from the Spanish Government - 2023.
Open edX Release | Version |
---|---|
Palm | >= 0.8.0 |
Quince | >= 0.8.0 |
Redwood | >= 0.8.0 |
The settings can be changed in mindmap/settings/common.py
or, for example, in tutor configurations.
NOTE: the current common.py
works with Open edX Palm, Quince and Redwood version.
When the Xblock has been installed, you can enable the Mind Map XBlock for a particular course in STUDIO through the advanced settings.
- From the main page of a specific course, navigate to
Settings → Advanced Settings
from the top menu. - Check for the
Advanced Module List
policy key, and add"mindmap"
to the policy value list. - Click the "Save changes" button.
- Display name (String): Name of the component.
- Problem Weight (Integer): Defines the number of points each problem is worth.
- Maximum score (Integer): Maximum grade score given to assignment by instructors.
- Is a static mind map? (Boolean): If this option is set to True, the course creator will provide the Mind map and learners will only be able to explore them but not edit them. If set to False, the course creator can provide an initial version of the Mind map that learners will be able to modify and submit for grading.
- Mind map: Instructors will be able to use a visual editor to create the mind map.
Each Mind Map can be explored or edited using the mouse or with keyboard shortcuts.
- Click on a node to select it.
- Double-click on a node to change the legend and click elsewhere to apply the changes.
- Drag the node to move it to a different part of the structure.
- Click the circle next to one node to expand or collapse its child nodes.
Enter
: Create a new brother node for the selected node.Ctrl + Enter
: Create a new child node for the selected node.F2
: Edit the legend for the selected node and hit Enter to apply the changes.Delete
: Delete the selected node.Space
: Expand or collapse any children of the selected node.
Learners can explore the Mind Map and when configured to be graded they can also edit it and submit it to be graded by the course instructors.
Course instructors can provide a grade for each submitted Mind Map in a course, by accessing the grading interface directly from the LMS view.
XBlock is the Open edX component architecture for building custom learning interactive components.
You can see the Mind Map in action in the XBlock Workbench. Running the Workbench requires having docker running.
git clone [email protected]:eduNEXT/xblock-mindmap
cd xblock-mindmap
virtualenv -p python3.8 venv && source venv/bin/activate
make upgrade
make install
make dev.run
Once the process is done, you can interact with the Mind Map XBlock in the Workbench by navigating to http://localhost:8000
For details regarding how to deploy this or any other XBlock in the Open edX platform, see the installing-the-xblock documentation.
If you're having trouble, the Open edX community has active discussion forums available at https://discuss.openedx.org where you can connect with others in the community.
Also, real-time conversations are always happening on the Open edX community Slack channel. You can request a Slack invitation, then join the community Slack workspace.
For anything non-trivial, the best path is to open an issue in this repository with as many details about the issue you are facing as you can provide.
https://github.com/eduNEXT/xblock-mindmap/issues
For more information about these options, see the Getting Help page.
The code in this repository is licensed under the AGPL-3.0 unless otherwise noted.
Please see LICENSE.txt for details.
Contributions are very welcome.
This project is currently accepting all types of contributions, bug fixes, security fixes, maintenance work, or new features. However, please make sure to have a discussion about your new feature idea with the maintainers prior to beginning development to maximize the chances of your change being accepted. You can start a conversation by creating a new issue on this repo summarizing your idea.
This Xblock is initially available in English and Spanish. You can help by translating this component to other languages. Follow the steps below:
- Create a folder for the translations in
locale/
, eg:locale/fr_FR/LC_MESSAGES/
, and create yourtext.po
file with all the translations. - Run
make compile_translations
, this will generate the.mo
file. - Create a pull request with your changes!
Please do not report a potential security issue in public. Please email [email protected].