Project Technology¶
In the very barest of sketches, this document lays out the different technologies and resources used for the Python Minecraft code group.
Technologies¶
Jupyter¶
The interface to Python used by the students during our workshop is
the Jupyter Notebook. The Python code is embedded in Jupyter
Notebook files, which are the files named *.ipynb
in the
source code repository.
The Jupyter project hosts an online notebook viewer that can turn
these ipynb
files into easily readable versions. Just paste any
URL from a GitHub file into the box on the NBViewer site, and and you will
it will generate a linkable result like this one.
Online Resources¶
Source Code Repository¶
Our code repository lives on GitHub. This repository is the master source for the documents, code examples, and scripts and tools used to support the class.
We try to follow the feature branch workflow in our Git repository. Atlassian provides a nice overview of this workflow.
Mailing Lists¶
Our mailing list is hosted on Google Groups. It is a public group, open to all.
Project Documentation¶
The source code for our documentation is in the code repository. A
readable, online version is available in our project’s Read the Docs
site. Any changes to tracked branches in the repository (especially
master
) will result in the project documentation being rebuilt so
they are current. The Read the Docs project page is the
administrative interface for this online version.
Docker Hub¶
We use Docker Hub to host a public repository that contains the
student image used on the lab server for each student. These images
are built using the Dockerfile
contained in
lab-server/student-env-image
of our source code
repository. Once built, they are pushed to the Docker Hub so they can
be retrieved by anyone hosting a lab server, or by students using
Vagrant to host an environment on their personal computer.