Title: Git hub quickstart
Course: FLO MicroCourse - Creating Online Gallery and Portfolio Spaces OER > Section: Day 4

https://github.com

Difficulty level: Expert

What is it?

GitHub Pages is a static site hosting service that takes HTML, CSS, and JavaScript files straight from a repository on GitHub, optionally runs the files through a build process, and publishes a website. It is a great tool for developers, designers, and anyone who wants to showcase their work or create a personal website.

There is no "getting started" video for Gitgub at this time. :(

You can check out the GitHub "quickstart guide".

What are the requirements?

Before getting started with GitHub Pages, ensure you meet the following requirements:

1. GitHub Account: You need a GitHub account to create and manage repositories.
2. Basic Git Knowledge: Familiarity with Git commands and version control is recommended.
3. HTML/CSS/JavaScript Skills: Basic web development skills are necessary to create and customize your site.
4. Text Editor: A text editor like VS Code, Sublime Text, or Atom for editing your website files.

Show me the links!

GitHub Pages is widely used for personal websites, project documentation, and portfolios. Here are a few examples:

- GitHub Pages Examples
- GitHub Pages Documentation

How does it work?

GitHub Pages serves content directly from a GitHub repository. Users create a repository and add their website files, and GitHub Pages handles the hosting. It supports custom domains and HTTPS and can be configured to use Jekyll, a static site generator.

Key Components:

- Repositories: Stores your website's code and content.
- Branches: Allows you to manage different versions of your site.
- Jekyll: An optional static site generator that simplifies the creation of blogs and other types of content.

Benefits of Using GitHub Pages:

- Free Hosting: GitHub Pages provides free hosting for public repositories.
- Version Control: Leverages GitHub's version control, making managing and collaborating on your site easy.
- Custom Domains: Supports custom domain names for a professional look.
- Developer-Friendly: Perfect for users comfortable with Git and version control.

Challenges of Using GitHub Pages:

- Learning Curve: Requires basic knowledge of Git and GitHub.
- Static Content: Limited to static content unless combined with other services.
- Customization: Advanced customization may require knowledge of Jekyll or other static site generators.

Examples in Education:

- Coding Assignments: Educators use GitHub to distribute coding assignments, facilitate collaboration, and review student code submissions.
- Open-Source Contributions: Students and educators participate in open-source projects, contributing code, documentation, and bug fixes.
- Project Management: GitHub's project management features help educators and students manage coursework and research projects.
- Collaborative Research: Academics use GitHub to collaborate on research projects, share data, and track changes in research papers.

How do you set it up?

Create a GitHub Account
Go to GitHub and sign up for a free account.

Create a Repository
- Click on "New" to create a new repository.
- Name your repository, set it to public, and initialize with a README.

Add Website Files
- Upload your HTML, CSS, and JavaScript files to the repository.
- Alternatively, you can clone the repository to your local machine, add the files, and push them back to GitHub.

Enable GitHub Pages
- Go to the repository settings.
- Scroll down to the "GitHub Pages" section.
- Select the branch you want to use for GitHub Pages (e.g., main or gh-pages).
- Choose a theme if desired.

Customize Your Site
- Customize your site by editing the HTML, CSS, and JavaScript files.
- Optionally, use Jekyll for more advanced features like blogging.