MaMpf-HD / mampf

MaMpf (Mathematical Media Platform) β€” an E-Learning platform for mathematics featuring a media player & editor. Developed & deployed at Heidelberg University.
https://mampf.mathi.uni-heidelberg.de/
MIT License
30 stars 10 forks source link
e-learning flipped-classroom hypermedia-editor hypermedia-player ruby video webvtt
MaMpf Logo

MaMpf

Mathematical Media Platform for universities

Website (πŸ‡©πŸ‡ͺ/πŸ‡ΊπŸ‡Έ) | Blog (πŸ‡©πŸ‡ͺ) | User docs (πŸ‡©πŸ‡ͺ) | Dev wiki (πŸ‡ΊπŸ‡Έ)
Create your own free account here. Note the user docs are outdated with respect to the screenshots showcased over there.

πŸ’‘ About / Motivation

MaMpf is an innovative open source e-learning platform for the mathematical sciences developed at the Institute for Mathematics at Heidelberg University. It's actively used in teaching and learning; you can register for free here (no student email required). Our platform is fully available in English & German.

MaMpf landing page used to log in

MaMpf aims to be a hypermedia system for mathematical content. Like moodle, it provides a platform for lecturers to upload & organize their teaching material including videos and scripts. But MaMpf goes beyond that and eases learning through interconnected contents:

This is just a brief overview of the feature set. You may think of MaMpf as a mix of Moodle, Khan Academy and YouTube. But it's more than that as features are tailored to the needs of the mathematical sciences and a university context. Start exploring MaMpf here.

πŸ“· Screenshots

To give you a closer look, here are some screenshots taken from our live system:

Video player Try out the video player [here](https://mampf.mathi.uni-heidelberg.de/media/384/play) (even without any account). Press `i` to open the outline on the right. It can hold references to other parts of the video or other items in the whole MaMpf database. The player makes use of WebVTT and HTML5 video capabilities of modern browsers. MaMpf video player
Courses overview Here, users can select courses from the current semester or from previous ones. ![User courses view](https://github.com/MaMpf-HD/mampf/assets/37160523/a1e386ad-7642-49f2-aecf-f2f0722cc3c1)
Lectures overview In the lectures view, users can click on a lecture to see the video. ![User lectures view](https://github.com/MaMpf-HD/mampf/assets/37160523/a3936d73-dc45-489d-85f8-68326f61654a)
Graph tag search MaMpf is equipped with a tagging system and rich visualizations for content relations, making use of [cytoscape.js](http://js.cytoscape.org/). ![Search graph](https://github.com/MaMpf-HD/mampf/assets/37160523/cd54b651-70c0-439d-a8dd-01de95995cb5)
Quizzes Users can play quizzes in MaMpf and get immediate feedback. In order to parse student's input in quizzes (e.g. when they enter a symbolic expression), MaMpf makes use of the JS based symbolic math expression evaluator [nerdamer](https://github.com/jiggzson/nerdamer). ![playing a quiz](https://github.com/MaMpf-HD/mampf/assets/37160523/baa3ae6d-e7bf-4ecc-9db0-22cab367d4ee) Lecturers can create quizzes and edit them in a graph: ![admin view for a quiz](https://github.com/MaMpf-HD/mampf/assets/37160523/855089b4-9358-4ff5-a9b0-d1aa89962c20)
Comments Users can post comments directly on videos. LaTeX is supported and rendered via [KaTeX](https://katex.org/). ![posting a comment](https://github.com/MaMpf-HD/mampf/assets/37160523/5ee4b51c-5ea5-4cf5-bf25-a0048434cb1f)

πŸ’» Installation

MaMpf is a Ruby on Rails application with a PostgreSQL database. For our frontend styling, we rely on Bootstrap. Our website is hosted on a server at Heidelberg University. We use docker (compose) for development and deployment.

MaMpf is actively developed & maintained. If you are interested in using MaMpf at your university, please get in touch. But please note that we're a very small team and can't provide support for setting up your own instance of MaMpf at the moment. Our installation guide should be a good starting point. We have to admit, though, that getting your own instance up and running might involve quite some effort including setting up a mail server, the database, SSL certificates, an nginx web server / proxy, deploying the Ruby on Rails application, and more.

To clone the source code and build MaMpf locally with docker compose, run these commands:

git clone -b main --recursive https://github.com/MaMpf-HD/mampf.git
cd mampf/docker/development/
docker compose up -d

See the full installation guide here. There you will also find out how to init your local database with some sample data.

<img src="https://github.com/MaMpf-HD/mampf/assets/37160523/c3454b01-a3cb-4fab-90f7-cb097075c56f" alt="MaMpf footer"/>