praise icon indicating copy to clipboard operation
praise copied to clipboard

As a registered user in Discord, I want to connect my Twitter handle to my Praise profile so I can start Praising on Twitter

Open kristoferlund opened this issue 1 year ago • 3 comments

Main Success Scenario

  1. User navigates to [community].givepraise.xyz/activate-twitter
  2. User logs in with Twitter credentials to prove ownership of Twitter account
    1. Uses the "Login with Twitter" oauth flow (https://developer.twitter.com/en/docs/authentication/guides/log-in-with-twitter)
  3. A UserAccount is created
    1. Praise dashboard calls API to create UserAccount in a secure way
  4. Users signs message with Metamask to prove ownership of ETH address.
    1. The activateToken needs to be verified. That token is created in step 2-3.
  5. Twitter UserAccount is linked to Praise identity
    1. Call to API to verify signature, create User, link it to UserAccount
  6. Done

Extensions

3.1 No Discord UserAccount exists 3.2 UserAccount exists and is already activated (connected to a User object)

Details

  • IMPORTANT: User needs to be activated through Discord as well before being allowed to activate on Twitter

In database after activation:

User {
  _id: 123,
  identityEthAddress: "0x123...456",
  username: "grandpuba",
  ...
}

UserAccount {
  _id: 555,
  user: 123,
  accountId: u09878979, // Twitter id
  name: "grandpuba",
  platform: "TWITTER"
  ...
}

Open Questions

  • Can anyone activate an account? If not, how do we determine who gets to activate?
    • You need to first have a Discord user account linked with your Praise identity

Wireframes

Twitter Praise Bot - As a user I want to praise anyone on Twitter.jpg

Links and docs

See full wireframes here: https://miro.com/app/board/uXjVMBzP9YQ=/?share_link_id=144897159619

kristoferlund avatar Jun 14 '23 13:06 kristoferlund