Upgrade to Pro — share decks privately, control downloads, hide ads and more …

NORTH AMERICAN Octo Ninja

NORTH AMERICAN Octo Ninja

A Lightning Introduction to GitHub and the GitHub API for the Cal vs. Stanford BigHack 2013

Steven! Ragnarök

April 06, 2013
Tweet

More Decks by Steven! Ragnarök

Other Decks in Programming

Transcript

  1. NORTH
    AMERICAN
    Octo Ninja
    The GitHub API

    View full-size slide

  2. /usr/bin/whoami
    nuclearsandwich
    Steven! Ragnarök

    View full-size slide

  3. GitHub
    The best place to share code with friends,
    co-workers, classmates, and complete
    strangers.

    View full-size slide

  4. GitHub
    There are 3.4M people collaborating right
    now across 6M repositories on GitHub.

    View full-size slide

  5. The GitHub API
    Almost any action you can perform on
    GitHub.com has an API method for doing
    so programatically.

    View full-size slide

  6. The GitHub API
    The GitHub API is used by developers to
    allow them to work better together.

    View full-size slide

  7. Becoming an OctoNinja

    View full-size slide

  8. My favorite API apps
    • hub

    View full-size slide

  9. My favorite API apps
    • hub
    • TravisCI

    View full-size slide

  10. My favorite API apps
    • hub
    • TravisCI
    • The GitHub Native Apps

    View full-size slide

  11. Developer Documentation
    http://developer.github.com

    View full-size slide

  12. Client Libraries
    http://developer.github.com/v3/libraries/
    • Ruby
    • Clojure
    • Python
    • JavaScript
    • Objective-C

    View full-size slide

  13. Client Libraries
    • C♯
    • PHP
    • Haskell
    • Emacs Lisp

    View full-size slide

  14. Getting Started
    The API uses custom vendor media types
    in JSON.
    To interact with it, I'm using a live HTTP
    console implemented in Ruby.

    View full-size slide

  15. Getting a User

    View full-size slide

  16. Getting a User

    View full-size slide

  17. Getting Repositories

    View full-size slide

  18. Getting Repositories

    View full-size slide

  19. Getting Repositories

    View full-size slide

  20. Getting Repositories

    View full-size slide

  21. Analyze the Past

    View full-size slide

  22. GitHub Archive
    Archives of GitHub.com activity available
    as gzip'd JSON or on Google BigQuery.

    View full-size slide

  23. Thanks!
    Behind the Scenes
    X
    E
    L
    A
    TEX/ Beamer
    Rubygems: Cage

    View full-size slide