I am new to GitHub Apps. I have used GitHub OAuth before, but finding it a bit difficult to understand the user authentication and authorization for GitHub Apps. My use case is as follows -
A user will visit my website, login with their GitHub credentials and at that time the user needs to accept the permission I seek from their profile (ex. Repository, PRs, etc.) and display those repositories and PR on my website and perform some actions on them.
I have primarily 1 question at a high level.
The API endpoints and what all keys are needed to authenticate and authorize a user so as to get all the requested items like repositories etc. and more importantly the next time the user logs in he should not need to accept the permission to access his repositories. (Similar to this codefactor site)
I would like to have an architecture level solution if not a code example. I am using Python (Django) to build my project but code examples in other languages are also welcomed.