outline/outline

Refactor GitHub Integration

apoorv-mishra opened this issue · 1 comments

Some problems surfacing here

  • Inconsistent contracts exposed due to GitHubUser & GitHubApp classes. Would be better to expose something like,
    GitHub.authenticateAsUser(code, state)
    GitHub.authenticateAsInstallation(installationId)
    This goes well with the documentation.
  • It'd be good to have transformers to transform GitHub API responses to data format we need. Currently, this is all being done ad-hoc within unfurl. This would yield itself unmaintainable if we decide to support unfurling for more resources(commits, comments etc.) going forward.