This is the backend repository for the NFT Marketplace.
-
Get Current User Data:
GET /v1/auth/profile
[Session cookie need to be present on the client set by OAuth] -
Create or Log into Account With Xumm (Anonymous User):
GET /v1/auth/xumm
[Socket IO ChannelaccountCreated
]
-
Google OAuth Screen:
GET /v1/auth/google
-
Google OAuth Callback:
GET /v1/auth/google/callback
-
Twitter OAuth Screen:
GET /v1/auth/twitter
-
Twitter OAuth Callback:
GET /v1/auth/twitter/callback
-
Discord OAuth Screen:
GET /v1/auth/discord
-
Discord OAuth Callback:
GET /v1/auth/discord/callback
-
Update Account After OAuth (Authenticated User):
PUT /v1/auth/oauth/
[Socket IO ChannelaccountCreated
] -
Create Account With Passkey (Authenticated User):
POST /v1/auth/createAccountWithPasskey
-
Login Account With Passkey (Authenticated User):
POST /v1/auth/loginAccountWithPasskey
- Get List of All NFTs:
GET /v1/nfts
- Mint an NFT:
POST /v1/nfts/mint
[Socket IO ChannelnftMint
] - Get NFTs of a User:
GET /v1/nfts/:username
[Returns NFTs of the user based on account address, to be changed to username]
- Get Account:
GET /v1/:username
[Returns public data of the user] (TODO)
npm install
# Copy .env.example to .env and edit the values
cp .env.example .env
# Place this in the config directory
touch ./src/config/serviceAccountKey.json
npm run dev
# If there is an error, create build and run again
npm run build
npm run dev