I want to login to the application using my GitHub account,
So that I can access the features and functionalities of the application seamlessly.
Acceptance criteria
[ ] The application should provide a "Login with GitHub" button on the login page.
[ ] Clicking on the "Login with GitHub" button should redirect the user to GitHub's authentication page.
[ ] Upon successful authentication with GitHub, the user should be redirected back to the application.
[ ] The application should receive the necessary user information (such as name, email, and profile picture) from GitHub's OIDC provider.
[ ] If the user is logging in for the first time, their GitHub account should be linked with a new or existing account in the application.
[ ] If the user is already logged in to the application via another method (e.g., email/password), they should have the option to link their GitHub account to their existing account.
[ ] After successful login or account linking, the user should be redirected to the application's dashboard or the page they were trying to access before authentication.
[ ] The application should handle errors gracefully and provide clear error messages to the user in case of authentication failures.
User story
Acceptance criteria
Definition of done (DoD)
DoD general criteria
Dependencies