Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

Introduction

Hi! If you are new to contributing in the Open edX platform, this is the place for you! This document will guide from scratch to become an active contributor to the Open edX platform.

...

There is a complete guide for developers in Open edX . If you need to know more about the process, please read this guide. This page is just a brief summary for beginners that will guide you in the first steps.

Minimum knowledge

The absolute minimum things you must know before you start contributing are:

...

  • AWS: If you plan to bring Open edX to the real world (outside your local development environment), you should be familiar on how to set up Amazon Web Services basic infrastructure

  • NodeJs: Some parts of the front end use server side JS

  • React: The front end is migrating to the concept of micro front ends, that relies on this framework

  • MySQL and MongoDB: These are the databases on which Open edX persists data

Tools

In order to start contributing to Open edX, you should have a devstack installation in your computer. You can find a guide in the official site explaining how to do that, including the minimum system requirements. Basically you will need:

...

Now that you know the basics and have the minimum tools, let’s get started!

CI/CD process

CI/CD are the basic software engineering processes that builds and tests the code (Continuous Delivery) so that it integrates consistently with the rest of the platform (Continuous Integration).

...

In Open edX we use a fork and pull model for code delivery. This means that contributors cannot commit changes directly to the edx repositories. As a contributor, you can fork the source repositories into your own github account, commit changes in it, and submit pull requests automatically from there. When you do this, both branches at the source and the fork repositories remain linked, therefore when you make additional commits in your fork’s branch, it will update the original pull request until it is completed.

Release lifecycle

Note

TODO: Reviewer, please check!

...

Documentation is an important part of any project. Your help in keeping accurate, clear and updated is very valuable.

How to start

There are three main start points for your contributions:

...

The fist two options (forum discussions and Jira issues) are simple and straightforward. We will focus now on how to make a pull request to submit your code change proposal.

Creating your first pull request

Follow this guide to have devstack installed in your computer.

...