Skip to content
Bryan Loh edited this page Apr 18, 2021 · 42 revisions

Source Modules

Welcome to the Source Modules wiki. This wiki serves to contain long-form informative content related to the Source Modules system and its modules. Refer to the sidebar for more information.

Try out Source Academy here.

Check out the Source Modules generated API documentation here.

List of Source Modules

Sample Modules

Module Tabs Summary
binary_trees none The binary_trees module provide functions for creating and modifying binary trees.
repeat Repeat The repeat module allows Source programs to repeat function applications.

Active Modules

Module Tabs Summary
curves Curves The curves module provides functions for drawing curves.
pix_n_flix Pixnflix The pix_n_flix module allows Source programs to process still images and videos.

Inactive Modules

Module Tabs Summary

Aims

  1. Decouple Source modules from the frontend and backend of Source Academy, as well as the implementation of Source language, enhancing the flexibility of Source modules.
  2. Optionally render interactive user interfaces for students to use with Source Academy to enhance their learning experience.
  3. Allow ease of collaboration and promotes contribution to the modules ecosystem without a steep learning curve.

Terminologies

These are the 3 main terms the project will be using to refer to the individual components of the Source Modules system. Please follow the set of definitions below to avoid any inconsistencies.

Term Description
Module A set of one bundle with the same name and some/no tabs.
Bundle The suite of functions that are provided by the module.
Tab A user interface used by the module.
Clone this wiki locally