+
Processing OAuth callback...
+
+ );
+};
+
+export default OAuthCallback;
diff --git a/client/src/lib/auth.ts b/client/src/lib/auth.ts
new file mode 100644
index 000000000..0417731d9
--- /dev/null
+++ b/client/src/lib/auth.ts
@@ -0,0 +1,93 @@
+import pkceChallenge from "pkce-challenge";
+import { SESSION_KEYS } from "./constants";
+
+export interface OAuthMetadata {
+ authorization_endpoint: string;
+ token_endpoint: string;
+}
+
+export async function discoverOAuthMetadata(
+ serverUrl: string,
+): Promise