External APIs

GitHub Data Management you own this product

This project is part of the liveProject series Go and External APIs
advanced Go • programming language basics • packaging basics • HTTP application basics • basics of working with HTTP cookies in Go
skills learned
work with Go standard library packages and the GitHub Go SDK • access the GitHub API
Amit Saha
1 week · 2-4 hours per week · BEGINNER

placing your order...

Don't refresh or navigate away from the page.
liveProject This project is part of the liveProject series Go and External APIs liveProjects give you the opportunity to learn new skills by completing real-world challenges in your local development environment. Solve practical problems, write working code, and analyze real data—with liveProject, you learn by doing. These self-paced projects also come with full liveBook access to select books for 90 days plus permanent access to other select Manning products. $19.99 $29.99 you save $10 (33%)
GitHub Data Management (liveProject) added to cart
continue shopping
adding to cart

choose your plan


only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free eBook every time you renew
  • choose twelve free eBooks per year
  • exclusive 50% discount on all purchases
  • GitHub Data Management eBook for free
Look inside

You’re a software engineer for Echorand Corp., a growing analytics company that wants to address the lack of backup functionality provided by the GitHub software hosting service it uses. The company has a web application that allows users to log in using their GitHub credentials. Your task is to add functionality to that app that lets users download their data whenever they like. Using Go, HTML, JavaScript, and the GitHub Go SDK, you’ll implement support that enables users to export their data on GitHub, view their exports, and download them—a win for Echorand Corp. and for you!

This project is designed for learning purposes and is not a complete, production-ready application or solution.

book resources

When you start your liveProject, you get full access to the following books for 90 days.

project author

Amit Saha

Amit Saha is a software engineer at Atlassian in Sydney, Australia. He’s the author of Practical Go: Building Scalable Network and Non-Network Applications (Wiley, 2021), Doing Math with Python: Use Programming to Explore Algebra, Statistics, Calculus, and More! (No Starch Press, 2015), and Write Your First Program (PHI Learning, 2013). His other writings have been published in technical magazines, conference proceedings, and research journals. He can be found online at https://echorand.me.


This liveProject is for beginner-level Go programmers who want to learn how to add data management functionality to an OAuth web application. To begin these liveProjects you’ll need to be familiar with the following:

  • Key Go standard library packages: net/http, net/http/cookiejar, net/http/httptest, testing
  • Third party packages: https://golang.org/x/oauth2 and github.com/google/go-github
  • HTTP cookies (for maintaining state on the client side)
  • Language basics: writing functions, creating structures, conditional statements, standard input and output, and basic understanding of interfaces
  • Packaging basics: what a module is and using sub-packages
  • Go commands: go build and go test
  • Understanding of how HTTP applications work (concepts including request routing, cookie handling, and redirects)

you will learn

In this liveProject, you’ll learn how to:

  • Generate and embed HTML and JavaScript data
  • Access the GitHub API using the Go SDK to manage user data migrations
  • Use HTTP client middleware to write tests without your application interacting with GitHub.com


You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.