To understand the DataCamp project build process, you need to know about three locations where your project content lives: locally, on GitHub, and on datacamp.com
Instructors author their projects locally in a Jupyter notebook, as described here. When instructors process the cells in their Jupyter notebook locally, the project runs according to the versions of software installed on the instructor's computer. When instructors have made changes to their project, they commit the changes using Git then push their changes to the
develop branch of the private GitHub repository set up by DataCamp.
GitHub is used to store the content of the project and manage version control. When the changes described above make it to GitHub, DataCamp's backend (called "Teach") recognizes that changes were made and rebuilds the project. Building the project, at a high-level, means:
- Running the requirements.sh and/or the requirements.R file (depending on the language of the project) to install the packages and versions necessary for the project
- Parsing the project.yml file
- Parsing the project.ipynb file
These files are described in the above-linked GitHub repo structure: DataCamp projects article.
On datacamp.com and the Teach Dashboard
Teach is the name for the backend system created by DataCamp engineers that is responsible for building projects from the files in your private GitHub repository so the project appears on datacamp.com. The Teach dashboard, which is linked in the README.md file of the GitHub repo, informs instructors about the health of their project regarding build status and content status.
If the project build succeeds (sometimes it doesn't for various reasons, including software installation errors and incorrectly formatted project.yml and project.ipynb files), the latest version of the project becomes available on datacamp.com.