feat(chat): add SvelteKit web app with full feature parity to mobile

Web app features:
- Auth: Login, Register, Forgot Password with shared-auth-ui
- Chat: New chat, conversation view, message list, model selector
- Templates: List, create, edit, delete templates
- Spaces: Team workspaces with member management
- Documents: Document mode with version history
- Archive & Profile pages

Technical:
- SvelteKit 2 with Svelte 5 runes
- Tailwind CSS 4 with shared themes
- Supabase Auth with SSR
- ChatLogo added to shared-branding
- dev:*:app commands for web+backend

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Till-JS 2025-11-25 15:54:44 +01:00
parent ba3e0538b4
commit 9a84cc06d6
58 changed files with 7198 additions and 53 deletions

View file

@ -63,6 +63,18 @@ export const APP_BRANDING: Record<AppId, AppBranding> = {
logoStroke: true,
logoStrokeWidth: 2,
},
chat: {
id: 'chat',
name: 'ManaChat',
tagline: 'AI Chat Assistant',
primaryColor: '#0ea5e9',
secondaryColor: '#38bdf8',
// Chat bubble icon
logoPath: 'M8.625 12a.375.375 0 11-.75 0 .375.375 0 01.75 0zm0 0H8.25m4.125 0a.375.375 0 11-.75 0 .375.375 0 01.75 0zm0 0H12m4.125 0a.375.375 0 11-.75 0 .375.375 0 01.75 0zm0 0h-.375M21 12c0 4.556-4.03 8.25-9 8.25a9.764 9.764 0 01-2.555-.337A5.972 5.972 0 015.41 20.97a5.969 5.969 0 01-.474-.065 4.48 4.48 0 00.978-2.025c.09-.457-.133-.901-.467-1.226C3.93 16.178 3 14.189 3 12c0-4.556 4.03-8.25 9-8.25s9 3.694 9 8.25z',
logoViewBox: '0 0 24 24',
logoStroke: true,
logoStrokeWidth: 1.5,
},
};
/**

View file

@ -19,7 +19,8 @@ export {
ManaCoreLogo,
ManaDeckLogo,
StorytellerLogo,
UloadLogo
UloadLogo,
ChatLogo
} from './logos';
// Configuration

View file

@ -0,0 +1,13 @@
<script lang="ts">
import AppLogo from '../AppLogo.svelte';
interface Props {
size?: number;
color?: string;
class?: string;
}
let { size = 55, color, class: className = '' }: Props = $props();
</script>
<AppLogo app="chat" {size} {color} class={className} />

View file

@ -7,3 +7,4 @@ export { default as ManaCoreLogo } from './ManaCoreLogo.svelte';
export { default as ManaDeckLogo } from './ManaDeckLogo.svelte';
export { default as StorytellerLogo } from './StorytellerLogo.svelte';
export { default as UloadLogo } from './UloadLogo.svelte';
export { default as ChatLogo } from './ChatLogo.svelte';

View file

@ -1,7 +1,7 @@
/**
* App identifiers for branding
*/
export type AppId = 'memoro' | 'manacore' | 'manadeck' | 'maerchenzauber' | 'uload';
export type AppId = 'memoro' | 'manacore' | 'manadeck' | 'maerchenzauber' | 'uload' | 'chat';
/**
* App branding configuration