codeuino/codebadge-backend

User Authentication via GitHub

shivamluthra opened this issue · 0 comments

What you will need to know?

Javascript - Beginner to Intermediate level (How to use requests and response using AJAX/Fetch asynchronously)

Authenticate users via their GitHub Account login

Any user to the CodeBadge platform should be able to login/signup via his/her GitHub account directly. This shall be the only method to log in the user since we need to track user's GitHub stats anyways. You'll need to create a single page for signup/login which will redirect to Github's API and ask for user's access via his GitHub account and authorize CodeBadge as an OAuth app linked to his GitHub account.

Requirements

  • HTML, CSS, Javascript - Beginner/Intermediate level

Steps to Follow

  • Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!
  • Install CodeBadge on your system go through readme.md in development branch for this purpose
  • After installing CodeBadge install dependencies of backend and frontend, go through readme.md inside both the folders
    Link to readme https://github.com/codeuino/Codebadge/blob/master/README.md
  • To run the project follow the given step in readme.md for both frontend and backend.
  • Checkout to a different feature branch in git and start with the coding part.
  • Make sure to commit your work daily and create a single PR for all your commits, per feature.

Acceptance Criteria

  • Code is short, clean and properly indented.
  • Unused code/comments/variables should not be lying in the code unnecessarily exploiting memory.
  • Minimal number of re-iterations in order to improve efficiency and keep the commit history clean.
  • Best practices should be used in case of multiple approaches, mentors are always there to help you for this 👍

Rejection Criteria

  • Not following/Violating Code of Conduct can lead to rejection.
  • Coding etiquettes must be taken care of, for eg, always committing code in a different feature branch, same PR is edited in case of re-iteration of code, etc.

Expected Outcome

A single page for signup/login which says Login/Register Via GitHub and logs in the user if he's already signed in to CodeBadge platform before or registers him as a new user if he's coming there for the first time. User data can be stored in a local database(preferably, a local MongoDB instance) for now.

How to excel fast in the community

  • Share the issues you encounter along the way and help others solve theirs.
  • Chime in below in a comment to cooperate with others who are also working on this task.
  • Report back at the above issue once you succeed, to encourage others and share what worked for you!

Resources & References (Where to Start)

You'll need to go through the docs of Authorizing OAuth apps via GitHub.

Extras

Just follow the readme whenever you are stuck . Visit Codeuino's Website in case of any doubts.