This depends on issue #113 and is a follow-up to that issue, which only describes setting up a basic login screen that supports username+password only.
Once a basic username+password login screen is working, we should add SSO login support such that users can login via third-party auth providers like a Google account, Facebook, GitHub, Twitter, Apple, etc.
Fortunately, the Matrix SDK provides many authentication APIs as part of the MatrixAuth type. You can access this type via the client.matrix_auth() function.
This depends on issue #113 and is a follow-up to that issue, which only describes setting up a basic login screen that supports username+password only.
Once a basic username+password login screen is working, we should add SSO login support such that users can login via third-party auth providers like a Google account, Facebook, GitHub, Twitter, Apple, etc.
Fortunately, the Matrix SDK provides many authentication APIs as part of the
MatrixAuth
type. You can access this type via theclient.matrix_auth()
function.Here is the current login flow in the
sliding_sync.rs
file: https://github.com/project-robius/robrix/blob/106033de803df72e7242267c147792cdee8a8878/src/sliding_sync.rs#L79-L106 Note that the first step is querying which login types are supported by the server, which you can then iterate over and inspect using theLoginType
enum.