- Create a script to pull all data from monkeytype and move it to the new mongo server
- In order to transfer users over, users should be able to be validated through firebase until they login again, when they will use their password to login. If firebase confirms that the password and email are valid, the new password will be hashed and saved to the new database
- All data is moved and retrieved via the mongo server, just authentication uses firebase
- Could force users to sign in again immediately in order to transfer users' passwords faster
- Is it worth the inconvenience though.
- Probably the best option would be to have a notification that asks users to log out and log back in again
- Could have a set date that firebase usage will expire and users must log out and back in again before they are forcibly logged out
- Still can't completely remove firebase dependency unless ALL users are transferred
- I'm not sure about this but it might be worthwhile to use redis to store userdata up to a certain point
- Users who have been requested in the last hour will be stored in the redis database so that their data can be sent again without having to search a large database
- After an hour without a new request they can be removed from memory
- User data should not be requested from the server every time a test is submitted, result should just be appended to results