feat: add instance store and Connected Instances settings UI

Introduce instanceStore (Zustand) with full federation lifecycle:
probe remote instances, register with username collision fallback,
login to existing accounts, sync instance list across all connected
instances, auto-reconnect from cached tokens on login/page load, and
cleanup on logout. Add ConnectedInstances component to User Settings
with home instance card, remote instance management, and inline
add-instance flow (URL probe → register/login → connected).
This commit is contained in:
Jannis Braun
2026-03-02 23:31:28 +01:00
parent c72fcdda70
commit ef7aa3ff5a
4 changed files with 690 additions and 0 deletions
@@ -4,6 +4,7 @@ import { useUIStore } from '../../stores/uiStore';
import { useAuthStore } from '../../stores/authStore';
import { useVoiceStore } from '../../stores/voiceStore';
import { Avatar } from '../ui/Avatar';
import { ConnectedInstances } from './ConnectedInstances';
export function UserSettingsModal() {
const activeModal = useUIStore((s) => s.activeModal);
@@ -168,6 +169,9 @@ export function UserSettingsModal() {
</div>
</div>
{/* Connected Instances */}
<ConnectedInstances />
<div className="flex items-center justify-between pt-2">
<button
onClick={handleLogout}