docs(auth): add SSO documentation and test credentials

- Document cross-domain SSO with COOKIE_DOMAIN configuration
- Add production test credentials for automated testing
- Explain cookie-based SSO flow across *.mana.how subdomains

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Till-JS 2026-02-02 04:09:07 +01:00
parent f03c09ff17
commit 352070fb2f
4 changed files with 78 additions and 2 deletions

View file

@ -2,6 +2,8 @@
Secure Matrix messaging client - a bridge to decentralized communication.
**Production URL:** https://link.mana.how
## Project Overview
Manalink is a privacy-focused Matrix client built with SvelteKit. It connects to Matrix homeservers (default: matrix.mana.how) and supports PWA installation for mobile devices.
@ -159,6 +161,15 @@ No environment variables required for basic usage. The client stores credentials
The login page defaults to `matrix.mana.how` but any Matrix homeserver can be used.
### Test Account
For testing the SSO login flow:
- **Email:** t@t.de
- **Password:** test1234
- **Auth URL:** https://auth.mana.how
- **Matrix Homeserver:** matrix.mana.how
- **Web Client:** https://link.mana.how
## Matrix SDK Notes
### Browser Polyfills
@ -205,6 +216,20 @@ if (browser) {
## Troubleshooting
### Can't see the login page / stuck on loading
The app auto-logs in if credentials are stored in localStorage. To reset:
1. **Browser console method:**
```javascript
localStorage.removeItem('matrix_credentials');
location.reload();
```
2. **Direct URL:** Navigate to `https://link.mana.how/login` directly
3. **If logged in:** Use the logout button in settings or navigation
### "super.off is not a function"
This is a known issue with typed-event-emitter. Make sure polyfills are loaded before any matrix-js-sdk imports.

View file

@ -16,7 +16,7 @@
import {
isSidebarMode as sidebarModeStore,
isNavCollapsed as collapsedStore,
} from '$lib/stores/navigation';
} from '$lib/stores/navigation.svelte';
import { PillNavigation } from '@manacore/shared-ui';
import type { PillNavItem, PillDropdownItem } from '@manacore/shared-ui';
import { getPillAppItems } from '@manacore/shared-branding';