Dark theme

Other functions


GitHub is far more than just a code repository. It is used for numerous projects and has a much wider functionality.


Perhaps most brilliantly, you can set up your own website on it: we'll have a look at this shortly.


For those wanting to cite repos in papers (for example, where code is associated with a project, or as an open dataset), you can now attach a DOI to a repo, giving it a permanent address for you and others to use in citations.

Another major function you might be interested in as analysts, is the amazing option to map GeoJSON files and keep track of changes in them over time. You can even turn them into publicly editable mapping systems.

You can find out much more about rendering and editing different types of files on GitHub at this collection of help pages.


In terms of software development, the website includes functionality for setting up Wikis associated with the software, and for issue tracking. Login to your area on GitHub to see these options.

You can also build special copies of code when it is ready for general download by non-developers. These are called "releases", and get their own simple webpage on GitHub: more info here.

Finally, it is worth saying that most software development environments now have plugins to integrate with GitHub. Eclipse, for example, has a plugin ("EGit") for working with Git, and you can find out more about this on this information page (not just for GitHub) and this tutorial. Spyder is less well integrated at the moment (ironicly, as it is built with GitHub), but you can add some functionality.

However, beyond simple old-skool development, there are some quite sophisticated additional tools for programmers, including software to run formal Unit Testing on your code before it is uploaded, and either stop it being pushed, or mark it as not working, if it fails the tests. This is common in Continuous Integration. A popular and relatively simple option for this is Travis-CI.


That's it or the core functionality. For more GitHub tutorials, see this useful list.

Now, we'll finally look at building an online portfolio.