Week 6 Overview

Welcome to Week 6. This week's lesson content is lighter than previous weeks — your main focus should be on completing your course project.

On the learning side, you will pick up version control using Git and GitHub — the standard way developers track changes, collaborate, and publish projects. You will set up GitHub Desktop, push your project to GitHub, and connect your repository to Netlify for automatic deployment.

What you need this week:

  • A GitHub account
  • GitHub Desktop
  • Cursor or your preferred code editor
  • Netlify or similar web hosting service

Version Control and GitHub

Introduction

Actions in GitHub: Commit, Push, Pull, and Revert

GitHub Desktop

Install GitHub Desktop

The installation of GitHub Desktop is as simple as normal software. Following three videos will guide you through the process:

Making the First Commit and Push

Files and Folders that Should Not Be Committed

Not everything in your project folder should be saved in version control. Some files are private, some are too large, and some can be regenerated automatically.

What to exclude:

  • node_modules/ — This folder contains tens of thousands of files installed by npm. It is regenerated by running npm install, so there is no reason to store it. Committing it would make your repository extremely slow.
  • .env — This file stores your API keys and secrets (like your Supabase key). If you push this to GitHub, anyone can see your keys. Never commit this file.
  • dist/ or build/ — These are generated output folders. They can be rebuilt from your source code.
  • .DS_Store — A macOS system file. Not harmful, but unnecessary clutter.

How to exclude them:

Create a file called .gitignore in the root of your project. List the files and folders you want Git to ignore, one per line:

node_modules/
.env
dist/
.DS_Store

Usually AI agents will generate a .gitignore file for you when you initialize a project. If yours didn't, ask your agent: "Add a .gitignore file for this project if it does not exist."

Publish from GitHub

In previous weeks, you published your apps by dragging a folder to Netlify. That works, but it means you have to manually re-upload every time you make a change.

A better workflow: connect your GitHub repository to Netlify. Once connected, every time you push to GitHub, Netlify automatically rebuilds and publishes your site. No dragging, no uploading — just push and it's live.

Demo: Publish from GitHub to Netlify

This video contains the demonstration of adding API keys or other secrets to Netlify. If you integrate backend services like Supabase, Cursor will set this up in your code, in a file named '.env'. But you will need to add the secrets manually to Netlify during the deployment process. See the video for more details.

Project Demo: Commit and Push Changes to GitHub

Extra: GitHub Education Benefits

GitHub Student Developer Pack

As a student, you can apply for the GitHub Student Developer Pack — a free bundle of tools and services. The most relevant benefits:

  • GitHub Pro — free while you are a student (private repositories, advanced features)
  • GitHub Copilot — free AI code assistant built into VS Code and Cursor
  • Free domain names and cloud credits from various partner services

Apply at: https://education.github.com/pack

You will need a school email address (.edu) to verify your student status. Approval usually takes a few days.

Project Collaboration

Invite Collaborators to Your GitHub Repository

Once your project is pushed to GitHub, you can invite collaborators to your repository. This allows your instructor to download and test your project. Follow the steps shown below to add a collaborator.

Step 1: Go to your repository on GitHub:

How to invite collaborators to your GitHub repository

Step 2: Go to the "Settings" tab of your repository web page/Collaborators, then add people:

How to invite collaborators to your GitHub repository

Invite a Reviewer to Your Netlify Project

Once your project is deployed on Netlify from GitHub, you can invite reviewers to your Netlify project for free. This makes it easier for your instructor to view your deployed site and provide feedback directly. Follow the steps shown below to add a reviewer.

Step 1: Go to dashboard of your Netlify account (not project):

How to invite a reviewer to your Netlify project

Step 2: Select Members -> Reviewers -> Add Reviewers:

How to invite a reviewer to your Netlify project

What to Do This Week

NOTE

This week does not have a mini project. Please complete the course project.

Course Project

  1. Complete the course project and make it fully functional.
  2. Create a GitHub account, and push your project to your account. Then, invite me to your project repository as a collaborator in GitHub using my email: [email protected]. See here for instruction
  3. Deploy your course project to Netlify or similar web services from GitHub. If possible, invite me to your deployed project so that it would be easier to provide feedback. See here for instruction.
  4. Create a new page in your Figma project file for this week's work. Then add screenshots of ~15 prompts and your published site.
  5. You don't need to submit anything to Canvas this week.