code-corps / code-corps/code-corps-api

Add GitHub authentication

Aberta
#7 1 comentário 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
Elixir
Estrelas
234
Forks
82
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

We should allow users to integrate their GitHub account into their current account.

Some quick thoughts around this:

- We need to be able to associate most records (like `Comment` and `Task`) to a `User` that created them
- A `User` could be created by signing up with email, but could also be created via webhooks by some action on GitHub (or some other service)
- We can’t assume a user has an email associated with their account (GitHub may not provide this)
- Emails should be broken off as separate identity providers
- A GitHub account is also an identity provider
- When a user was created due to an external identity provider (claimed vs unclaimed), that user can be merged
- Merging will copy all relevant data from that user to the new user
- We probably need to punt on a user signing up / signing in with GitHub – they can only connect an account later – otherwise we could have a scenario where someone _intends_ to connect a Code Corps account to a GitHub account, but instead creates two separate accounts (one via email, one via GitHub) that are now disconnected. This would mean we'd have to some complex two-step verification process for a merge, which is beyond the scope of MVP here.

Guia de contribuição

Abrir o guia de contribuição

Direção de pesquisa

Nenhum arquivo, teste ou ponto de entrada é indicado. Comece mapeando os modelos User, Comment e Task existentes e o fluxo de autenticação; em seguida, defina o menor escopo acordado para conectar identidades do GitHub; o trabalho estará concluído quando houver um design aprovado e o comportamento correspondente de associação de contas.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
elixir, github
Domínio
authentication, backend-api-design
Tipo de issue
Funcionalidade
Dificuldade
5/5
Tempo estimado
Mais de uma semana
Status de atividade
Estagnada
Clareza
Precisa de esclarecimento
Facilidade para iniciantes
20/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.