mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-14 22:01:09 +02:00
feat(local-first): add local-first architecture with Dexie.js, Go sync server, and Todo pilot
Implement the foundational local-first data layer for ManaCore apps: - New @manacore/local-store package (Dexie.js IndexedDB, sync engine, Svelte 5 reactive queries) - New mana-sync Go service (sync protocol, WebSocket push, field-level LWW conflict resolution) - Todo app migrated as pilot: stores read/write IndexedDB, guest mode with onboarding seed data - PillNavigation: prominent login pill for unauthenticated users - SyncIndicator component showing local/syncing/offline status - GuestWelcomeModal on first visit for Todo app - Removed demo-mode auth_required checks from Todo components (all writes are now local) - CSP fix for local development (localhost:3001, localhost:3050) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
4ddff8485b
commit
2e4bb9bad7
41 changed files with 4388 additions and 340 deletions
|
|
@ -943,6 +943,19 @@
|
|||
</svg>
|
||||
<span class="pill-label">Logout</span>
|
||||
</button>
|
||||
{:else if loginHref && !userEmail}
|
||||
<!-- Guest mode: prominent login button -->
|
||||
<a href={loginHref} class="pill glass-pill login-pill" title="Anmelden">
|
||||
<svg class="pill-icon" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="2"
|
||||
d={getIconPath('user')}
|
||||
/>
|
||||
</svg>
|
||||
<span class="pill-label">Anmelden</span>
|
||||
</a>
|
||||
{/if}
|
||||
|
||||
<!-- Collapse Button -->
|
||||
|
|
@ -1111,6 +1124,20 @@
|
|||
border-color: rgba(220, 38, 38, 0.3);
|
||||
}
|
||||
|
||||
/* Guest login pill — prominent with primary color */
|
||||
.login-pill {
|
||||
background: var(--pill-primary-color, var(--color-primary-500, #3b82f6));
|
||||
color: #fff;
|
||||
border-color: transparent;
|
||||
font-weight: 600;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.login-pill:hover {
|
||||
filter: brightness(1.1);
|
||||
transform: scale(1.03);
|
||||
}
|
||||
|
||||
.pill-icon {
|
||||
width: 1rem;
|
||||
height: 1rem;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue