Skip to content

A customisable NodeJS server for creating and hosting highly interactive online courses.

License

Notifications You must be signed in to change notification settings

mathigon/studio

Repository files navigation

Mathigon Studio

Welcome to Mathigon Studio – an award-winning platform for creating interactive, online courses!

Usage

This repository is not intended to be used standalone. You will need to create a parent repository containing the content, settings, and any customisations for this course. You can see a sample repository at docs/example. Then install Mathigon Studio as a dependency using npm install @mathigon/studio.

For more details on how to set up a server, customise its settings, and create interactive courses, take a look at our documentation:

Directory Structure

Here is a breakdown of all the components included in this repository:

  • build/: Build tools like a custom markdown parser and JS/CSS asset bundling.
  • docs/: Documentation and a sample implementation
  • frontend/: Client-side TypeScript code and SCSS styles. Ever top-level .ts or .scss file in this directory will get bundled into a separate .js or .css file in the public directory.
  • server/: A NodeJS Express application for serving the course website.
  • tests/: Markdown compiler tests and screenshot generation.
  • translations/: Translations for all built-in strings.

Contributing

Build Status Code Quality npm GitHub repo size GitHub issues

We welcome any contributions to Mathigon Studio: from bug fixes to writing more documentations, adding new translations, or developing entirely new features. If you find any bugs or errors, please file an issue.

Before submitting a pull request, you will need to sign the Mathigon Individual Contributor License Agreement.

If you want to work for Mathigon, visit our careers page, and contact us if you have any questions.


Twitter Follow

© Mathigon 2016–2022, All rights reserved