3. Dependencies, tools and technologies we use

h2 – The community

You can join the conversation and ask questions using Discord (discordapp.com) using the following invite: https://discord.gg/BFNsDh2

h2 – The technologies and tools

The project uses the following technologies and tools:

h2 – Python 3.

Python is a higher level programming language, meaning it is written in a way humans can read fairly easily. The the code is automatically turned into instructions the computer understands.

Full details about Python can be found here: https://www.python.org/

With a beginners guide here: https://wiki.python.org/moin/BeginnersGuide

Before starting out with a project, please consider setting up a virtual environment. An explanation of how to do this can be found here: https://tutorial.djangogirls.org/en/django_installation/

h2 – Django 2.1.4

Django is a web development framework which uses Python. It has been created to automate some of the processes involved in a dynamic web application. Overall, it makes developing a website quicker and easier.

A web development framework is a way of organising the files that make up a website. A general description can be found here: https://en.wikipedia.org/wiki/Web_framework - a more specific description can be found here: https://jeffknupp.com/blog/2014/03/03/what-is-a-web-framework/

The official Django site is here: https://www.djangoproject.com/

A great tutorial on how to get started is here: https://tutorial.djangogirls.org/en/

h2 – Postgresql

Postgres is an open source database programme. Its official site is here: https://www.postgresql.org/

More information about how to install it and get started can be found here: http://postgresguide.com/

You may also wish to install pgAdmin (https://www.pgadmin.org/) or another database administration programme.

h2 – HMTL5 and CSS3

Short tutorials and information on HTML5, CSS as well as javascript and Python can be found here: https://www.w3schools.com/html/default.asp

h2 – Git


This link shows how to set your username and email in Git: https://help.github.com/articles/setting-your-username-in-git/ You will probably want to use the same username and email as your Github account (at least for this repository) so if you have not yet set up a Github account, you may wish to do so and return to this step.

h2 – Github

Github is a hosting service for Git repositories (https://github.com/). It allows users to host their repositories (groups of files being organised by the Git programme) on the site. Repositories can be private or public (ours is public). As well as uploading their own repository, users can download, comment on, make changes to or “fork” an existing one. A fork is a copy of the original, which can then be changed without changing the original or “master” repository.

Information about how to use Github with Git can be found here: http://rogerdudler.github.io/git-guide/ and here: https://guides.github.com/activities/hello-world/#commit

h2 – Sphinx

We use Python’s Sphinx module to help create documentation. The module allows users to save a series of restructured text files explaining the project to users and contributors. Restructured text is similar to HTML markup but is a little bit quicker to write. The module converts the files to full HTML - the html version is hosted on ReadTheDocs.

The official site is here:


A great tutorial with hints and tips is here: https://media.readthedocs.org/pdf/brandons-sphinx-tutorial/latest/brandons-sphinx-tutorial.pdf