Skip to content

Latest commit

 

History

History
39 lines (26 loc) · 1.77 KB

File metadata and controls

39 lines (26 loc) · 1.77 KB

Scripting GitHub

tag::concept[]

GitHub is not just a website; it’s a programmable platform. For Nora, this means she can automate the tedious parts of her job, like notifying her team of updates or generating reports for stakeholders.

Webhooks

tag::procedure[]

A webhook allows GitHub to notify Nora’s other tools whenever something happens in the repository.

For example, Nora sets up a webhook to alert the team’s Slack channel every time a new checkpoint is pushed to the research repo. 1. In the repo Settings, she clicks Webhooks. 2. She adds the URL for the team’s Slack automation. 3. She selects the "Push" event.

Now, whenever Sam pushes his UI updates, the whole team sees it in Slack instantly. No more "Hey, did you push those PNGs yet?" messages.

The GitHub API

tag::concept[]

For even more control, Nora uses the GitHub API. This allows her to write small scripts that interact with her repository.

Suppose Nora wants to generate a weekly "Design Decision Report" for her manager. She writes a script that uses the API to fetch all commit messages from the last 7 days that start with [Design:].

$ curl https://api.github.com/repos/sketchspark/ui-design/commits?since=2026-04-01

The API returns a JSON list of all the work her team has done, which she can then automatically format into a beautiful PDF.

Summary

tag::overview[]

Now you’re a GitHub user. You know how to create an account, manage an organization, use the GitHub Flow for design reviews, and even automate your workflow with webhooks and the API.

In the next chapter, we’ll move back to the terminal and look at some of the most powerful, "expert-level" tools that will truly make you a master of Git.