- Create api gateway
- Move all shared server code to api gateway microservice (ApiError class, error handling etc.)
- Create one main file with tokens data in api gateway, delete others files that contains tokens data
- Migrate authentication to api gateway
- Move rabbitmq config to apigateway
- Move zod config to apigateway
- Delete modify type from dapp types, get it from api gateway
- Move auth endpoint to apigateway
- Store session in redis db
- Create new endpoint connected to user model:
- Endpont to create user and return new user data
- Endpoint to get user data when they login using type from request
- Endpoint to refresh user data: /user/:address
- Upgarde all zod api validation
- Remove DecodedUser type from database service, get it from api
- Remove Express types from database service
- Improve zod error handling
- Create package from redis client and related constants
- Check if ip is properly id for session
- Add expiration time to session hash in redis
- Fix bug with adding active tokens to user page
- Create shared Error Component
- Move u/.../... page to their defined folder in Page dir (create page for streamer)
- Refactor SignUpForm container, move more logic to FormikStep compnent ?
- Delete validationHelper function on backend
- Replace UserTokenValidation module to use UserTokenApi and move validation related to form to dapp
- Move JWT midlewarre to server microservice?
- Implement request rate limiter
- Delete types from modules in dapp
- Replace http-status-codes codes to use it them from axios
- Delete uneccesery packages from microservices
- Check if all package needs ts-node and tsc packages
- Refactor apiClient to be created when is using in app/package, not in package, something like factory pattern
- Add to user page creator: way to add link, how long message can be
- Replace datejs by new native JavaScript way
- Show in user page only avaible tokens
- Refactor token api to have only one entry endpoint and return all data from coinGecko + address, delete token endpoint from database service
- change UserToken smart contract implementation to not use initialize function, (chnage upgradebility pattern to use OppenZeppelin implementation)