---
title: "Using more GitHub features"
source: The Turing Way
source_url: https://github.com/the-turing-way/the-turing-way
licence: CC-BY-4.0
domain: data-and-analysis
subdomain: turing-way
date_added: 2026-04-25
---

(cl-github-novice-features)=
# Using more GitHub features

Now that your repo is set up, you are ready to add more stuff to it and use some of its useful features.

## Adding more folders (directories), files and commits

* You can add more files to your repo by clicking the "add file" button and either uploading files or creating a new one.
* Each time you create a new file or upload files you will need to add a {ref}`commit message<rr-vcs-commit-messages>` to help you remember what changes you made.
* Note that git (and thus GitHub) does not track folders/directories, so you cannot create an empty folder.


**Create a new folder by adding a new file:**

* Click on the "add file" button and then create a new file.
* This will give you a blank file to edit.
* When naming the file, first type in the name of the folder (existing or new) and then a forward slash, followed by the name of the file: "folder-name/file-name.ext".
* Edit the content of the file.
* Save your changes using the "commit" button. Remember to type a {ref}`commit message<rr-vcs-commit-messages>` to help you remember what changes you made.

This file will appear in the folder that you named.
You will be able to see the folder on your landing page.
If you click on the blue folder symbol, it brings you to the files within that folder.

## Explore the ‘Insight’ features of GitHub

* On GitHub, navigate to the main landing page of the repository.
* Under your repository name, click "Insights".
* In the left sidebar, click “Community”.
  * Here you will find recommended files to include in your repo.
  These files are especially useful when working with collaborators or members in your community.
  * The "License" file is one of the most important, because it tells others how they can (or can't) use the materials in your repo.
  * For collaborations, be sure to look at "Contributing" and "Description".
  * Whenever possible, add a "Code of conduct" to make your project welcoming and inclusive for others.
* Other interesting things to look at are “Contributors” (those who contribute to your project), “Traffic” (who visits your project page and when do they do so) and “Commits” (a timeline and number of commits made on your project).

## Explore the ‘Projects’ features of GitHub
Project boards on GitHub help you organize and prioritize your work.
It is a kanban feature to track your tasks with to-do, in progress and done columns.
Each item can be linked to specific issues or pull requests to help you track your progress.
This feature is a great way to help others contribute to your repo or let them know what you have planned.


## Using GitHub Features to foster collaboration
This is what a repository looks like when it is set up to include many of these features, making it a welcoming, collaborative workspace.

```{figure} ../../../figures/github-project.*
---
name: github-project
alt: Annotated diagram of a collaborative project repository. Explained in the caption.
align: left
---
Annotated diagram of a collaborative project repository.
- Labels on the left-hand side of the image:
  - **1. Project:** This shows you the project boards for this repo.
  - **2. Issues:** All the tasks that have been raised on this repo.
  - **3. Files:** These are all the files in the repo.
  - **4. Landing page or `README.md` file:** Your `README.md` file is automatically rendered as a landing page for your site.
- Labels on the right-hand side of the image:
  - **5. Insights:** This shows you all the activity that has happened on your repo. 
  - **6. Edit repo details:** You can write a short description of your project and add labels.
  - **7. Description of the repository.**
  - **8. Link for GitHub pages:** Website generated by this repo.
  - **9. Topic labels:** Topic labels related to your repo can help other people find your project.
  - **10. License:** The license that you have put on your repo.
```
