Skip to content

tutors-sdk/tutors

Repository files navigation

Tutors: An Open Learning Web Toolkit

Website | Documentation

Table of Contents

What is Tutors

Tutors is a collection of open source components and services supporting the creation of transformative learning experiences using open web standards. It consists of two key components:

This repo is the Tutors Reader. A companion repo:

...host the generators + support tools. These components are developed in the open by an active and friendly community, based on a simple set of values.

Getting Started

The first step might be to become familiar with the course structure by browsing a sample course, and then scan the reference manual. The manual will guide you through the process creating and publishing your own course (perhaps a copy of a sample). Thereafter you could scan the Gallery of existing courses to get an idea as to how Tutors is used in practice.

Consider setting up your own development version of tutors for experimentation.

Reporting Bugs

We are delighted to get bug reports. If you encounter a bug, please open a Tutors Issue with a description of the problem. Include information about the environment where the bug occurred, steps to reproduce it, and any relevant screenshots or error messages. Label the issue 'fix'. Perhaps do a quick scan to see if the bug has been reported - if so you might comment / react to the existing error (use filtering to see only 'fix labeled issues).

Requesting Features

If you have an idea for a new feature or enhancement, feel free to open a Tutors Issue. Describe the proposed feature, its benefits, and any other relevant details. Label the new issue feature. Perhaps do a quick scan to see if the feature has already been proposed and consider commenting / reacting to the feature instead of creating a new one (use filtering to see only 'feature labeled issues).

Setting up a tutors Development Environment

Make sure you have Node 18 + installed, and start by cloning this repo:

git clone https://github.com/tutors-sdk/tutors.git

Open a shell and change into the project folder and run npm install...

cd tutors
npm install

Then copy the file .env.example to .env

Now to start the app you can run this command from the root:

npm run dev

This should launch the application:

  VITE v5.0.12  ready in 1069 ms

  ➜  Local:   http://localhost:3000/
  ➜  Network: use --host to expose
  ➜  press h + enter to show help

Now the app is up and running and you can browse to it by opening the local location in your browser.

The Tutors reader relies on a segment of the url to locate the course to display. Any of the samples below can be 'read' with an appropriate url segments appended to the local url you now have running. So for instance:

... can be loaded locally by:

(Note the port number 3000 may vary - see the launch console)

The 'source' for the above course is here:

You could try any of the other sample courses above. For example this course:

can be opened by this local reader like this:

Tutors Project Repos

There are 4 key tutors repos:

  • Tutors: The course reader application. This is a SvelteKit application, written in TypeScript with a user experience implemented using Tailwind & Skeleton.
  • Tutors Apps: A monorepo encapsulating the generators, tests + support tools and applications. It is written in TypeScript.
  • Tutors Reference Manual: The manual is itself a tutors course, and is largely written in Markdown.
  • Tutors Reference Course: A Tutors course to included all tutors learning objects and structures.

Example Tutors Courses

The reference course might be a place to start:

You can clone and rebuild this course following these instructions.

This is an example of an open source course:

This is a selected Course Gallery:

Some courses of interest:

Note: Some courses will request you authenticate via github for access.

Contributing

We welcome feature requests & bug reports! If you would like to try your hand at tackling an issue - your own or one off the shelf, then here is how it might work:

  1. Fork the tutors repository
  2. Set up a local build
  3. Create a new branch for your selected issue (feature or fix).
  4. Make your changes, and verify that feature behaves as expected in your local build
  5. Commit your changes, perhpas consider following these guideline for commit messages
  6. Push your changes to your fork
  7. Submit a pull request to tutors.

Tutors Holopin

All contributors are eligible to earn a Holopin - a digital badge that represents your contributions to the project. These badges evolve the more contributions you make to the project!

Every time you open a PR that is accepted, you will be assigned holobytes. Collect these holobytes to see your owl evolve!

License

License: MIT