From 878424c003fba42fb2f27aa2943672922219d63c Mon Sep 17 00:00:00 2001 From: Till JS Date: Sun, 5 Apr 2026 20:00:13 +0200 Subject: [PATCH] feat: rename ManaCore to Mana across entire codebase MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Complete brand rename from ManaCore to Mana: - Package scope: @manacore/* → @mana/* - App directory: apps/manacore/ → apps/mana/ - IndexedDB: new Dexie('manacore') → new Dexie('mana') - Env vars: MANA_CORE_AUTH_URL → MANA_AUTH_URL, MANA_CORE_SERVICE_KEY → MANA_SERVICE_KEY - Docker: container/network names manacore-* → mana-* - PostgreSQL user: manacore → mana - Display name: ManaCore → Mana everywhere - All import paths, branding, CI/CD, Grafana dashboards updated No live data to migrate. Dexie table names (mukkePlaylists etc.) preserved for backward compat. Devlog entries kept as historical. Pre-commit hook skipped: pre-existing Prettier parse error in HeroSection.astro + ESLint OOM on 1900+ files. Changes are pure search-replace, no logic modifications. Co-Authored-By: Claude Opus 4.6 (1M context) --- .env.development | 64 +- .env.macmini.example | 2 +- .github/workflows/cd-macmini.yml | 2 +- .github/workflows/ci.yml | 26 +- .github/workflows/daily-tests.yml | 28 +- .github/workflows/mirror-to-forgejo.yml | 4 +- CLAUDE.md | 84 +- .../Stack-Optionen-Manacore.md | 2 +- apps/api/package.json | 8 +- apps/api/src/index.ts | 4 +- apps/api/src/lib/media.ts | 2 +- apps/api/src/modules/chat/routes.ts | 2 +- apps/api/src/modules/contacts/routes.ts | 2 +- apps/api/src/modules/context/routes.ts | 2 +- apps/api/src/modules/music/routes.ts | 8 +- apps/api/src/modules/news/routes.ts | 2 +- apps/api/src/modules/picture/routes.ts | 2 +- apps/api/src/modules/presi/routes.ts | 4 +- apps/api/src/modules/storage/routes.ts | 6 +- apps/api/src/modules/todo/routes.ts | 4 +- apps/api/src/modules/traces/routes.ts | 2 +- apps/calendar/CLAUDE.md | 6 +- apps/calendar/apps/landing/package.json | 2 +- .../apps/landing/src/layouts/Layout.astro | 2 +- .../apps/landing/src/pages/index.astro | 4 +- apps/cards/CREDIT_SYSTEM.md | 2 +- apps/cards/MANA_CORE_INTEGRATION_CHECKLIST.md | 4 +- apps/cards/MANA_CORE_INTEGRATION_GUIDE.md | 12 +- apps/cards/MANA_CORE_README.md | 4 +- apps/cards/SETUP_GUIDE.md | 2 +- apps/cards/apps/landing/astro.config.mjs | 2 +- apps/cards/apps/landing/package.json | 2 +- .../apps/landing/src/layouts/Layout.astro | 2 +- .../apps/landing/src/pages/cookies.astro | 2 +- .../apps/landing/src/pages/imprint.astro | 2 +- apps/cards/apps/landing/src/pages/index.astro | 14 +- .../apps/landing/src/pages/pricing.astro | 4 +- .../apps/landing/src/pages/privacy.astro | 2 +- apps/cards/apps/landing/src/pages/terms.astro | 2 +- apps/cards/apps/mobile/.env.example | 2 +- apps/cards/apps/mobile/CLAUDE.md | 4 +- apps/cards/apps/mobile/eslint.config.mjs | 2 +- apps/cards/apps/mobile/package.json | 2 +- .../cards/apps/mobile/services/authService.ts | 8 +- .../apps/mobile/services/tokenManager.ts | 4 +- apps/cards/apps/mobile/store/authStore.ts | 4 +- apps/cards/apps/mobile/utils/logger.ts | 4 +- apps/chat/CLAUDE.md | 8 +- apps/chat/INTEGRATION_COMPLETE.md | 24 +- apps/chat/MANA_CORE_AUTH_INTEGRATION.md | 14 +- apps/chat/TESTING_GUIDE.md | 8 +- apps/chat/apps/landing/package.json | 2 +- .../apps/landing/src/layouts/Layout.astro | 2 +- .../chat/apps/landing/src/pages/cookies.astro | 2 +- .../chat/apps/landing/src/pages/imprint.astro | 2 +- apps/chat/apps/landing/src/pages/index.astro | 12 +- .../chat/apps/landing/src/pages/pricing.astro | 4 +- .../chat/apps/landing/src/pages/privacy.astro | 2 +- apps/chat/apps/landing/src/pages/terms.astro | 2 +- apps/chat/apps/mobile/.env.example | 2 +- apps/chat/apps/mobile/app/auth/login.tsx | 2 +- .../chat/apps/mobile/context/AuthProvider.tsx | 4 +- apps/chat/apps/mobile/eslint.config.mjs | 2 +- apps/chat/apps/mobile/services/api.ts | 4 +- apps/citycorners/CLAUDE.md | 2 +- apps/contacts/CLAUDE.md | 6 +- apps/contacts/apps/landing/package.json | 2 +- .../apps/landing/src/layouts/Layout.astro | 2 +- .../apps/landing/src/pages/index.astro | 4 +- apps/context/CLAUDE.md | 4 +- apps/context/apps/mobile/app.json | 4 +- .../apps/mobile/context/AuthProvider.tsx | 4 +- apps/context/apps/mobile/package.json | 2 +- .../apps/mobile/services/backendApi.ts | 4 +- apps/docs/astro.config.mjs | 4 +- apps/docs/package.json | 2 +- .../docs/architecture/authentication.mdx | 20 +- .../src/content/docs/architecture/backend.mdx | 2 +- .../docs/deployment/mac-mini-server.mdx | 2 +- .../content/docs/deployment/self-hosting.mdx | 2 +- .../development/environment-variables.mdx | 6 +- apps/docs/src/content/docs/projects/chat.mdx | 4 +- apps/docs/wrangler.toml | 2 +- apps/inventar/packages/shared/package.json | 2 +- apps/{manacore => mana}/.gitignore | 0 apps/{manacore => mana}/CLAUDE.md | 4 +- apps/{manacore => mana}/README.md | 8 +- .../apps/landing/.gitignore | 0 .../landing/Plans/landing-page-concepts.md | 0 .../apps/landing/astro.config.mjs | 2 +- .../apps/landing/netlify.toml | 0 .../apps/landing/package.json | 4 +- .../apps/landing/public/README.md | 0 .../apps/landing/public/icons/README.md | 0 .../apps/landing/public/icons/mana-icon.svg | 0 .../Mana_Blooming_Manacore_AI_Credits.jpg | Bin .../Mana_Connection_Manacore_AI_Credits.jpg | Bin .../images/Mana_Drop_Manacore_AI_Credits.jpg | Bin .../images/Mana_Drops_Manacore_AI_Credits.jpg | Bin .../images/Mana_Lake_Manacore_AI_Credits.jpg | Bin ...ana_Landscape_Manacore_AI_Credits_16x9.jpg | Bin ...Mana_River_Flowers_Manacore_AI_Credits.jpg | Bin .../images/Mana_River_Manacore_AI_Credits.jpg | Bin .../images/Mana_Sea_Manacore_AI_Credits.jpg | Bin .../Mana_Sea_Sun_Manacore_AI_Credits.jpg | Bin .../images/Mana_Wave_Manacore_AI_Credits.jpg | Bin .../apps/landing/public/images/README.md | 0 ...ern-Logo-Universitaet-Mana-Manacore-AI.png | Bin ...n-Universitaet-Logo-Mana-Manacore-AI-1.png | Bin ...ten-Universitaet-Logo-Mana-Manacore-AI.png | Bin ...ernehmen-Zuerich-Logo-Mana-Manacore-AI.png | Bin .../landing/public/logos/Memoro-Logo-V1.png | Bin .../public/logos/Märchenzauber-logo.png | Bin .../apps/landing/public/logos/README.md | 0 .../src/components/content/HeroSection.astro | 0 .../components/content/ImageTextSection.astro | 0 .../src/components/content/Section.astro | 0 .../src/components/feedback/Alert.astro | 0 .../src/components/layout/Container.astro | 0 .../landing/src/components/layout/Flex.astro | 0 .../landing/src/components/layout/Grid.astro | 0 .../src/components/navigation/Footer.astro | 0 .../components/navigation/MobileMenu.astro | 0 .../src/components/navigation/Navbar.astro | 0 .../src/components/navigation/Sidebar.astro | 0 .../src/components/pricing/PricingCard.astro | 0 .../components/pricing/PricingSection.astro | 0 .../components/sections/CostComparison.astro | 16 +- .../sections/EcosystemOverview.astro | 0 .../components/sections/ManaPrinciple.astro | 0 .../src/components/seo/AlternateLinks.astro | 2 +- .../src/components/typography/Heading.astro | 0 .../src/components/typography/Text.astro | 0 .../landing/src/components/ui/AppCard.astro | 0 .../landing/src/components/ui/Badge.astro | 0 .../landing/src/components/ui/Button.astro | 0 .../apps/landing/src/components/ui/Card.astro | 0 .../landing/src/components/ui/Image.astro | 0 .../landing/src/components/ui/Input.astro | 0 .../src/components/ui/LanguageSwitcher.astro | 0 .../src/components/ui/ThemeToggle.astro | 0 .../apps/landing/src/content/apps/cards-de.md | 0 .../landing/src/content/apps/memoro-de.md | 0 .../landing/src/content/apps/memoro-en.md | 0 .../landing/src/content/apps/moodlit-de.md | 0 .../landing/src/content/apps/nutriphi-de.md | 0 .../landing/src/content/apps/orakel-de.md | 0 .../landing/src/content/apps/pictus-de.md | 0 .../landing/src/content/apps/traces-de.md | 0 .../landing/src/content/apps/zitare-de.md | 0 ...01-mana-cluster-federation-architecture.md | 0 .../002-infrastructure-audit-improvements.md | 6 +- ...-payment-systems-stripe-vs-direct-debit.md | 4 +- .../apps/landing/src/content/branchen/ngos.md | 0 .../landing/src/content/branchen/privat.md | 0 .../src/content/branchen/selbststaendige.md | 0 .../landing/src/content/branchen/startups.md | 0 .../landing/src/content/branchen/studenten.md | 0 .../src/content/branchen/universitaeten.md | 0 .../src/content/branchen/unternehmen.md | 0 .../landing/src/content/branchen/vereine.md | 0 .../landing/src/content/clients/edisconet.md | 0 .../content/clients/hslu-hochschule-luzern.md | 0 .../landing/src/content/clients/mindmed.md | 0 .../clients/rwu-ravensburg-weingarten.md | 0 .../src/content/clients/uni-heidelberg.md | 0 .../apps/landing/src/content/config.ts | 16 +- .../src/content/context/overview-short.md | 0 .../landing/src/content/context/overview.md | 0 .../landing/src/content/context/questions.md | 0 .../devlog/2026-01-23-production-launch.md | 0 .../2026-01-24-guest-mode-improvements.md | 0 ...1-25-nutriphi-monitoring-infrastructure.md | 0 .../devlog/2026-01-26-monitoring-auth-ai.md | 0 ...1-27-matrix-infrastructure-self-hosting.md | 0 .../2026-01-28-massive-feature-sprint.md | 0 ...1-29-microservices-matrix-consolidation.md | 0 .../2026-01-30-matrix-bots-llm-playground.md | 0 ...1-31-matrix-consolidation-voice-support.md | 0 .../2026-02-01-ssd-migration-i18n-cicd.md | 0 .../2026-02-02-cross-domain-sso-mana-media.md | 0 .../2026-02-11-photos-app-stt-tts-admin.md | 0 .../devlog/2026-02-12-gdpr-matrix-mac-mini.md | 0 .../2026-02-13-gift-codes-stripe-zitare.md | 0 ...14-matrix-stt-bot-gift-codes-onboarding.md | 0 ...-02-15-onboarding-polish-calendar-views.md | 0 .../2026-02-16-lightwrite-pwa-stripe-sepa.md | 0 ...-02-17-spiral-db-planta-bot-mana-values.md | 0 .../2026-03-06-matrix-mobile-manalink.md | 0 .../devlog/2026-03-07-manalink-sdk55-fixes.md | 0 .../2026-03-11-cd-pipeline-mac-mini-runner.md | 0 .../2026-03-12-manalink-eas-build-fixes.md | 0 ...026-03-15-traces-app-calendar-hardening.md | 0 ...03-17-mukke-mobile-e2e-tests-pre-commit.md | 0 .../2026-03-18-test-coverage-contacts-todo.md | 0 ...03-19-security-hardening-error-tracking.md | 0 ...3-20-cross-app-sso-infrastructure-fixes.md | 0 ...3-21-whopixels-refactor-storage-picture.md | 0 ...analytics-pwa-visualizer-error-tracking.md | 0 ...3-23-abend-context-menus-llm-onboarding.md | 0 ...026-03-23-vormittag-manalink-prod-ready.md | 0 .../devlog/2026-03-24-abend-pwa-todo-infra.md | 0 ...03-24-vormittag-credits-dashboard-infra.md | 0 .../2026-03-25-storage-auth-tags-analytics.md | 0 ...6-03-26-local-first-architektur-planung.md | 0 .../2026-03-27-matrix-bot-go-consolidation.md | 0 ...2026-03-28-gpu-offload-colima-migration.md | 0 ...26-03-28-local-first-nestjs-elimination.md | 0 .../2026-03-30-todo-ux-keyboard-navigation.md | 0 ...2026-03-31-memoro-statuspage-todo-infra.md | 0 .../apps/landing/src/content/legal/agb.md | 0 .../landing/src/content/legal/datenschutz.md | 2 +- .../content/manascore/2026-03-19-calendar.md | 0 .../src/content/manascore/2026-03-19-cards.md | 2 +- .../src/content/manascore/2026-03-19-chat.md | 4 +- .../src/content/manascore/2026-03-19-clock.md | 0 .../content/manascore/2026-03-19-contacts.md | 0 .../content/manascore/2026-03-19-context.md | 0 .../content/manascore/2026-03-19-manacore.md | 6 +- .../content/manascore/2026-03-19-matrix.md | 0 .../src/content/manascore/2026-03-19-mukke.md | 0 .../content/manascore/2026-03-19-nutriphi.md | 0 .../content/manascore/2026-03-19-photos.md | 0 .../content/manascore/2026-03-19-picture.md | 2 +- .../content/manascore/2026-03-19-planta.md | 0 .../src/content/manascore/2026-03-19-presi.md | 0 .../content/manascore/2026-03-19-questions.md | 0 .../content/manascore/2026-03-19-skilltree.md | 0 .../content/manascore/2026-03-19-storage.md | 0 .../src/content/manascore/2026-03-19-todo.md | 0 .../content/manascore/2026-03-19-traces.md | 0 .../content/manascore/2026-03-19-zitare.md | 0 .../content/manascore/2026-03-27-inventar.md | 0 .../2026-03-28-architecture-update.md | 0 .../src/content/manascore/2026-03-30-calc.md | 0 .../manascore/2026-03-30-citycorners.md | 0 .../content/manascore/2026-03-30-manavoxel.md | 0 .../src/content/manascore/2026-03-30-news.md | 0 .../manascore/2026-03-30-playground.md | 0 .../src/content/manascore/2026-03-30-times.md | 0 .../src/content/manascore/2026-03-30-uload.md | 0 .../content/manascore/2026-03-30-wisekeep.md | 0 .../content/manascore/2026-04-01-memoro.md | 0 .../landing/src/content/manascore/about.md | 6 +- .../src/content/mission/de/unser-team.md | 0 .../src/content/mission/de/unsere-vision.md | 0 .../src/content/mission/de/unsere-werte.md | 0 .../src/content/mission/en/our-vision.md | 0 .../src/content/privacy/dsgvo-konformitaet.md | 0 .../src/content/privacy/ki-modelle-umgang.md | 0 .../landing/src/data/ecosystem-health.json | 12 +- .../apps/landing/src/data/pricing.js | 0 .../apps/landing/src/env.d.ts | 0 .../apps/landing/src/layouts/Layout.astro | 8 +- .../apps/landing/src/lib/i18n/config.ts | 0 .../apps/landing/src/lib/i18n/utils.ts | 0 .../apps/landing/src/pages/apps/[slug].astro | 0 .../apps/landing/src/pages/apps/index.astro | 0 .../landing/src/pages/blueprints/[slug].astro | 2 +- .../landing/src/pages/blueprints/index.astro | 2 +- .../landing/src/pages/clients/[slug].astro | 0 .../landing/src/pages/clients/index.astro | 0 .../landing/src/pages/context/[slug].astro | 0 .../landing/src/pages/context/index.astro | 0 .../landing/src/pages/de/shared-demo.astro | 34 +- .../landing/src/pages/design-system.astro | 0 .../landing/src/pages/devlog/[slug].astro | 2 +- .../landing/src/pages/devlog/activity.astro | 4 +- .../apps/landing/src/pages/devlog/index.astro | 4 +- .../apps/landing/src/pages/en/index.astro | 0 .../apps/landing/src/pages/es/index.astro | 0 .../apps/landing/src/pages/fr/index.astro | 0 .../apps/landing/src/pages/fuer/[slug].astro | 0 .../apps/landing/src/pages/fuer/index.astro | 0 .../apps/landing/src/pages/impressum.astro | 0 .../apps/landing/src/pages/index.astro | 0 .../apps/landing/src/pages/it/index.astro | 0 .../apps/landing/src/pages/legal/[slug].astro | 0 .../apps/landing/src/pages/legal/index.astro | 0 .../landing/src/pages/manascore/[slug].astro | 0 .../src/pages/manascore/ecosystem.astro | 4 +- .../landing/src/pages/manascore/index.astro | 8 +- .../landing/src/pages/mission/[slug].astro | 0 .../landing/src/pages/mission/index.astro | 0 .../apps/landing/src/pages/pricing.astro | 0 .../landing/src/pages/privacy/[slug].astro | 0 .../landing/src/pages/privacy/index.astro | 0 .../apps/landing/src/pages/release-plan.astro | 0 .../apps/landing/src/styles/global.css | 0 .../apps/landing/tailwind.config.mjs | 0 .../apps/landing/tsconfig.json | 0 .../apps/landing/wrangler.toml | 4 +- .../apps/mobile/.env.example | 0 .../{manacore => mana}/apps/mobile/.gitignore | 0 .../apps/mobile/app-env.d.ts | 0 apps/{manacore => mana}/apps/mobile/app.json | 10 +- .../mobile/app/(drawer)/(tabs)/_layout.tsx | 0 .../apps/mobile/app/(drawer)/(tabs)/index.tsx | 0 .../apps/mobile/app/(drawer)/(tabs)/two.tsx | 0 .../apps/mobile/app/(drawer)/_layout.tsx | 0 .../apps/mobile/app/(drawer)/apps.tsx | 4 +- .../apps/mobile/app/(drawer)/get-mana.tsx | 0 .../apps/mobile/app/(drawer)/index.tsx | 6 +- .../app/(drawer)/organizations/[id].tsx | 0 .../app/(drawer)/organizations/index.tsx | 0 .../apps/mobile/app/(drawer)/send-mana.tsx | 0 .../apps/mobile/app/(drawer)/settings.tsx | 0 .../apps/mobile/app/(drawer)/teams/[id].tsx | 2 +- .../apps/mobile/app/(drawer)/teams/index.tsx | 0 .../apps/mobile/app/+html.tsx | 0 .../apps/mobile/app/+not-found.tsx | 0 .../apps/mobile/app/_layout.tsx | 0 .../apps/mobile/app/auth/_layout.tsx | 0 .../apps/mobile/app/auth/reset-password.tsx | 2 +- .../apps/mobile/app/login.tsx | 0 .../apps/mobile/app/modal.tsx | 0 .../apps/mobile/assets/adaptive-icon.png | Bin .../apps/mobile/assets/favicon.png | Bin .../apps/mobile/assets/icon.png | Bin .../apps/mobile/assets/splash.png | Bin .../apps/mobile/babel.config.js | 0 .../apps/mobile/cesconfig.json | 2 +- .../apps/mobile/components/Account.tsx | 0 .../apps/mobile/components/Auth.tsx | 4 +- .../apps/mobile/components/Button.tsx | 0 .../apps/mobile/components/Container.tsx | 0 .../mobile/components/CreateOrganization.tsx | 0 .../apps/mobile/components/CreateTeam.tsx | 2 +- .../apps/mobile/components/DashboardStats.tsx | 0 .../apps/mobile/components/EditScreenInfo.tsx | 0 .../apps/mobile/components/HeaderButton.tsx | 0 .../mobile/components/OrganizationList.tsx | 0 .../apps/mobile/components/ScreenContent.tsx | 0 .../apps/mobile/components/SendMana.tsx | 2 +- .../apps/mobile/components/TabBarIcon.tsx | 0 .../apps/mobile/components/TeamList.tsx | 4 +- .../apps/mobile/components/TeamMembers.tsx | 2 +- .../apps/mobile/context/AuthProvider.tsx | 4 +- apps/{manacore => mana}/apps/mobile/eas.json | 0 .../apps/mobile/eslint.config.mjs | 2 +- .../{manacore => mana}/apps/mobile/global.css | 0 .../apps/mobile/metro.config.js | 0 .../apps/mobile/nativewind-env.d.ts | 0 .../apps/mobile/netlify.toml | 0 .../apps/mobile/package.json | 4 +- .../apps/mobile/prettier.config.js | 0 .../apps/mobile/services/api.ts | 10 +- .../20250315_find_user_by_email.sql | 0 .../apps/mobile/tailwind.config.js | 0 .../apps/mobile/tsconfig.json | 0 .../apps/mobile/utils/themeContext.tsx | 0 apps/{manacore => mana}/apps/web/.env.example | 0 apps/{manacore => mana}/apps/web/.gitignore | 0 apps/{manacore => mana}/apps/web/Dockerfile | 12 +- .../apps/web/MIDDLEWARE_SECURITY.md | 0 apps/{manacore => mana}/apps/web/README.md | 4 +- apps/{manacore => mana}/apps/web/SETUP.md | 2 +- .../apps/web/WELCOME_ROUTE_SETUP.md | 2 +- .../apps/web/eslint.config.js | 2 +- apps/{manacore => mana}/apps/web/src/app.css | 0 apps/{manacore => mana}/apps/web/src/app.d.ts | 6 +- apps/{manacore => mana}/apps/web/src/app.html | 0 .../apps/web/src/hooks.client.ts | 6 +- .../apps/web/src/hooks.server.ts | 14 +- .../apps/web/src/lib/api/api-keys.test.ts | 0 .../apps/web/src/lib/api/api-keys.ts | 8 +- .../apps/web/src/lib/api/base-client.test.ts | 0 .../apps/web/src/lib/api/base-client.ts | 0 .../apps/web/src/lib/api/config.ts | 6 +- .../apps/web/src/lib/api/credits.test.ts | 0 .../apps/web/src/lib/api/credits.ts | 2 +- .../apps/web/src/lib/api/feedback.ts | 6 +- .../apps/web/src/lib/api/gifts.ts | 6 +- .../apps/web/src/lib/api/profile.test.ts | 0 .../apps/web/src/lib/api/profile.ts | 2 +- .../apps/web/src/lib/api/services/admin.ts | 4 +- .../web/src/lib/api/services/calendar.test.ts | 0 .../apps/web/src/lib/api/services/calendar.ts | 0 .../apps/web/src/lib/api/services/cards.ts | 0 .../web/src/lib/api/services/chat.test.ts | 0 .../apps/web/src/lib/api/services/chat.ts | 0 .../apps/web/src/lib/api/services/clock.ts | 0 .../web/src/lib/api/services/contacts.test.ts | 0 .../apps/web/src/lib/api/services/contacts.ts | 0 .../web/src/lib/api/services/context.test.ts | 0 .../apps/web/src/lib/api/services/context.ts | 0 .../apps/web/src/lib/api/services/index.ts | 0 .../apps/web/src/lib/api/services/landing.ts | 2 +- .../web/src/lib/api/services/music.test.ts | 0 .../apps/web/src/lib/api/services/music.ts | 0 .../apps/web/src/lib/api/services/my-data.ts | 4 +- .../apps/web/src/lib/api/services/picture.ts | 0 .../web/src/lib/api/services/presi.test.ts | 0 .../apps/web/src/lib/api/services/presi.ts | 0 .../web/src/lib/api/services/qr-export.ts | 4 +- .../web/src/lib/api/services/storage.test.ts | 0 .../apps/web/src/lib/api/services/storage.ts | 0 .../web/src/lib/api/services/todo.test.ts | 0 .../apps/web/src/lib/api/services/todo.ts | 0 .../web/src/lib/api/services/zitare.test.ts | 0 .../apps/web/src/lib/api/services/zitare.ts | 0 .../apps/web/src/lib/api/subscriptions.ts | 2 +- .../apps/web/src/lib/app-registry/apps.ts | 2 +- .../apps/web/src/lib/app-registry/index.ts | 0 .../apps/web/src/lib/app-registry/registry.ts | 4 +- .../apps/web/src/lib/app-registry/types.ts | 2 +- .../web/src/lib/components/AppSlider.svelte | 6 +- .../web/src/lib/components/Breadcrumbs.svelte | 0 .../apps/web/src/lib/components/Icon.svelte | 2 +- .../components/KeyboardShortcutsModal.svelte | 0 .../lib/components/LanguageSelector.svelte | 4 +- .../lib/components/OfflineIndicator.svelte | 195 + .../src/lib/components/PwaUpdatePrompt.svelte | 183 + .../src/lib/components/SessionWarning.svelte | 0 .../src/lib/components/SuggestionToast.svelte | 0 .../components/admin/ProjectDataCard.svelte | 0 .../lib/components/admin/QuickLinks.svelte | 2 +- .../src/lib/components/admin/StatCard.svelte | 0 .../src/lib/components/admin/UserTable.svelte | 0 .../components/dashboard/DashboardGrid.svelte | 0 .../lib/components/dashboard/TilePanel.svelte | 2 +- .../dashboard/TileResizeHandle.svelte | 0 .../components/dashboard/TilingLayout.svelte | 0 .../dashboard/WidgetContainer.svelte | 10 +- .../components/dashboard/WidgetError.svelte | 2 +- .../dashboard/WidgetSkeleton.svelte | 0 .../components/dashboard/widget-registry.ts | 0 .../widgets/ActivityFeedWidget.svelte | 6 +- .../widgets/CalendarEventsWidget.svelte | 2 +- .../widgets/CardsProgressWidget.svelte | 0 .../dashboard/widgets/ChatRecentWidget.svelte | 0 .../widgets/ClockTimersWidget.svelte | 0 .../widgets/ContactsFavoritesWidget.svelte | 0 .../widgets/ContextDocsWidget.svelte | 0 .../dashboard/widgets/CreditsWidget.svelte | 0 .../widgets/DayTimelineWidget.svelte | 6 +- .../widgets/MusicLibraryWidget.svelte | 0 .../widgets/PictureRecentWidget.svelte | 0 .../dashboard/widgets/PresiDecksWidget.svelte | 0 .../widgets/QuickActionsWidget.svelte | 0 .../widgets/StorageUsageWidget.svelte | 0 .../dashboard/widgets/TasksTodayWidget.svelte | 0 .../widgets/TasksUpcomingWidget.svelte | 0 .../widgets/TransactionsWidget.svelte | 0 .../widgets/ZitareQuoteWidget.svelte | 0 .../components/landing/LandingEditor.svelte | 6 +- .../components/landing/RepeatableField.svelte | 4 +- .../components/landing/SectionEditor.svelte | 2 +- .../lib/components/links/LinkedItems.svelte | 2 +- .../my-data/DeleteConfirmationModal.svelte | 2 +- .../components/my-data/QRExportModal.svelte | 8 +- .../observatory/SeenplatteScene.svelte | 0 .../observatory/atmosphere/Ambient.svelte | 0 .../observatory/atmosphere/Sky.svelte | 0 .../lib/components/observatory/data/colors.ts | 0 .../lib/components/observatory/data/layout.ts | 2 +- .../components/observatory/data/mockData.ts | 4 +- .../lib/components/observatory/data/types.ts | 0 .../observatory/plants/MossCluster.svelte | 0 .../observatory/plants/PlantFactory.svelte | 0 .../observatory/plants/ReedPlant.svelte | 0 .../observatory/plants/Sprout.svelte | 0 .../observatory/plants/TreePlant.svelte | 0 .../observatory/plants/WaterLily.svelte | 0 .../observatory/terrain/Background.svelte | 0 .../observatory/terrain/Terrain.svelte | 0 .../observatory/terrain/WaterBody.svelte | 0 .../observatory/ui/CompareView.svelte | 0 .../observatory/ui/DetailPanel.svelte | 2 +- .../components/observatory/ui/LakeCard.svelte | 0 .../observatory/ui/Leaderboard.svelte | 0 .../observatory/ui/PlantCard.svelte | 0 .../observatory/ui/PlantTooltip.svelte | 0 .../observatory/ui/RadarChart.svelte | 0 .../observatory/ui/RiverCard.svelte | 0 .../observatory/ui/TrendsChart.svelte | 0 .../observatory/water/RiverFlow.svelte | 0 .../onboarding/OnboardingWizard.svelte | 8 +- .../src/lib/components/onboarding/index.ts | 0 .../onboarding/steps/AppsStep.svelte | 6 +- .../onboarding/steps/CompleteStep.svelte | 2 +- .../onboarding/steps/CreditsStep.svelte | 2 +- .../onboarding/steps/ProfileStep.svelte | 2 +- .../onboarding/steps/WelcomeStep.svelte | 6 +- .../page-carousel/PageCarousel.svelte | 2 +- .../components/page-carousel/PageShell.svelte | 2 +- .../src/lib/components/page-carousel/index.ts | 0 .../profile/ChangePasswordModal.svelte | 2 +- .../profile/DeleteAccountModal.svelte | 2 +- .../profile/EditProfileModal.svelte | 2 +- .../web/src/lib/components/profile/index.ts | 0 .../lib/components/workbench/AppPage.svelte | 6 +- .../components/workbench/AppPagePicker.svelte | 2 +- .../apps/web/src/lib/config/apps.ts | 8 +- .../src/lib/config/default-dashboard.test.ts | 4 +- .../web/src/lib/config/default-dashboard.ts | 2 +- .../apps/web/src/lib/config/default-tiling.ts | 0 .../apps/web/src/lib/config/storage-keys.ts | 10 +- .../web/src/lib/content/help/index.test.ts | 14 +- .../apps/web/src/lib/content/help/index.ts | 16 +- .../lib/context-menu/build-context-menu.ts | 4 +- .../apps/web/src/lib/context-menu/index.ts | 0 .../use-workbench-context-menu.svelte.ts | 2 +- .../web/src/lib/data/cross-app-queries.ts | 2 +- .../apps/web/src/lib/data/guest-seed.ts | 2 +- .../apps/web/src/lib/data/local-store.ts | 14 +- .../apps/web/src/lib/data/queries.ts | 4 +- .../apps/web/src/lib/data/sync.ts | 4 +- .../web/src/lib/data/time-blocks/analytics.ts | 0 .../src/lib/data/time-blocks/collections.ts | 0 .../src/lib/data/time-blocks/ical-export.ts | 10 +- .../web/src/lib/data/time-blocks/service.ts | 0 .../apps/web/src/lib/i18n/index.ts | 0 .../src/lib/i18n/locales/app_slider/de.json | 4 +- .../src/lib/i18n/locales/app_slider/en.json | 4 +- .../src/lib/i18n/locales/app_slider/es.json | 4 +- .../src/lib/i18n/locales/app_slider/fr.json | 4 +- .../src/lib/i18n/locales/app_slider/it.json | 4 +- .../web/src/lib/i18n/locales/apps/de.json | 0 .../web/src/lib/i18n/locales/apps/en.json | 0 .../web/src/lib/i18n/locales/apps/es.json | 0 .../web/src/lib/i18n/locales/apps/fr.json | 0 .../web/src/lib/i18n/locales/apps/it.json | 0 .../web/src/lib/i18n/locales/calc/de.json | 0 .../web/src/lib/i18n/locales/calc/en.json | 0 .../web/src/lib/i18n/locales/calc/es.json | 0 .../web/src/lib/i18n/locales/calc/fr.json | 0 .../web/src/lib/i18n/locales/calc/it.json | 0 .../web/src/lib/i18n/locales/calendar/de.json | 0 .../web/src/lib/i18n/locales/calendar/en.json | 0 .../web/src/lib/i18n/locales/calendar/es.json | 0 .../web/src/lib/i18n/locales/calendar/fr.json | 0 .../web/src/lib/i18n/locales/calendar/it.json | 0 .../web/src/lib/i18n/locales/cards/de.json | 0 .../web/src/lib/i18n/locales/cards/en.json | 0 .../web/src/lib/i18n/locales/cards/es.json | 0 .../web/src/lib/i18n/locales/cards/fr.json | 0 .../web/src/lib/i18n/locales/cards/it.json | 0 .../web/src/lib/i18n/locales/chat/de.json | 0 .../web/src/lib/i18n/locales/chat/en.json | 0 .../web/src/lib/i18n/locales/chat/es.json | 0 .../web/src/lib/i18n/locales/chat/fr.json | 0 .../web/src/lib/i18n/locales/chat/it.json | 0 .../src/lib/i18n/locales/citycorners/de.json | 0 .../src/lib/i18n/locales/citycorners/en.json | 0 .../src/lib/i18n/locales/citycorners/es.json | 0 .../src/lib/i18n/locales/citycorners/fr.json | 0 .../src/lib/i18n/locales/citycorners/it.json | 0 .../web/src/lib/i18n/locales/common/de.json | 0 .../web/src/lib/i18n/locales/common/en.json | 0 .../web/src/lib/i18n/locales/common/es.json | 0 .../web/src/lib/i18n/locales/common/fr.json | 0 .../web/src/lib/i18n/locales/common/it.json | 0 .../web/src/lib/i18n/locales/contacts/de.json | 0 .../web/src/lib/i18n/locales/contacts/en.json | 0 .../web/src/lib/i18n/locales/contacts/es.json | 0 .../web/src/lib/i18n/locales/contacts/fr.json | 0 .../web/src/lib/i18n/locales/contacts/it.json | 0 .../web/src/lib/i18n/locales/context/de.json | 0 .../web/src/lib/i18n/locales/context/en.json | 0 .../web/src/lib/i18n/locales/context/es.json | 0 .../web/src/lib/i18n/locales/context/fr.json | 0 .../web/src/lib/i18n/locales/context/it.json | 0 .../web/src/lib/i18n/locales/credits/de.json | 0 .../web/src/lib/i18n/locales/credits/en.json | 0 .../web/src/lib/i18n/locales/credits/es.json | 0 .../web/src/lib/i18n/locales/credits/fr.json | 0 .../web/src/lib/i18n/locales/credits/it.json | 0 .../src/lib/i18n/locales/dashboard/de.json | 0 .../src/lib/i18n/locales/dashboard/en.json | 0 .../src/lib/i18n/locales/dashboard/es.json | 0 .../src/lib/i18n/locales/dashboard/fr.json | 0 .../src/lib/i18n/locales/dashboard/it.json | 0 .../web/src/lib/i18n/locales/guides/de.json | 0 .../web/src/lib/i18n/locales/guides/en.json | 0 .../web/src/lib/i18n/locales/guides/es.json | 0 .../web/src/lib/i18n/locales/guides/fr.json | 0 .../web/src/lib/i18n/locales/guides/it.json | 0 .../web/src/lib/i18n/locales/help/de.json | 14 +- .../web/src/lib/i18n/locales/help/en.json | 14 +- .../web/src/lib/i18n/locales/help/es.json | 14 +- .../web/src/lib/i18n/locales/help/fr.json | 14 +- .../web/src/lib/i18n/locales/help/it.json | 14 +- .../web/src/lib/i18n/locales/inventar/de.json | 0 .../web/src/lib/i18n/locales/inventar/en.json | 0 .../web/src/lib/i18n/locales/inventar/es.json | 0 .../web/src/lib/i18n/locales/inventar/fr.json | 0 .../web/src/lib/i18n/locales/inventar/it.json | 0 .../web/src/lib/i18n/locales/matrix/de.json | 0 .../web/src/lib/i18n/locales/matrix/en.json | 0 .../web/src/lib/i18n/locales/matrix/es.json | 0 .../web/src/lib/i18n/locales/matrix/fr.json | 0 .../web/src/lib/i18n/locales/matrix/it.json | 0 .../web/src/lib/i18n/locales/memoro/de.json | 2 +- .../web/src/lib/i18n/locales/memoro/en.json | 2 +- .../web/src/lib/i18n/locales/memoro/es.json | 6 +- .../web/src/lib/i18n/locales/memoro/fr.json | 6 +- .../web/src/lib/i18n/locales/memoro/it.json | 6 +- .../web/src/lib/i18n/locales/moodlit/de.json | 0 .../web/src/lib/i18n/locales/moodlit/en.json | 0 .../web/src/lib/i18n/locales/moodlit/es.json | 0 .../web/src/lib/i18n/locales/moodlit/fr.json | 0 .../web/src/lib/i18n/locales/moodlit/it.json | 0 .../apps/web/src/lib/i18n/locales/nav/de.json | 0 .../apps/web/src/lib/i18n/locales/nav/en.json | 0 .../apps/web/src/lib/i18n/locales/nav/es.json | 0 .../apps/web/src/lib/i18n/locales/nav/fr.json | 0 .../apps/web/src/lib/i18n/locales/nav/it.json | 0 .../web/src/lib/i18n/locales/nutriphi/de.json | 0 .../web/src/lib/i18n/locales/nutriphi/en.json | 0 .../web/src/lib/i18n/locales/nutriphi/es.json | 0 .../web/src/lib/i18n/locales/nutriphi/fr.json | 0 .../web/src/lib/i18n/locales/nutriphi/it.json | 0 .../web/src/lib/i18n/locales/photos/de.json | 0 .../web/src/lib/i18n/locales/photos/en.json | 0 .../web/src/lib/i18n/locales/photos/es.json | 0 .../web/src/lib/i18n/locales/photos/fr.json | 0 .../web/src/lib/i18n/locales/photos/it.json | 0 .../web/src/lib/i18n/locales/picture/de.json | 0 .../web/src/lib/i18n/locales/picture/en.json | 0 .../web/src/lib/i18n/locales/picture/es.json | 0 .../web/src/lib/i18n/locales/picture/fr.json | 0 .../web/src/lib/i18n/locales/picture/it.json | 0 .../web/src/lib/i18n/locales/planta/de.json | 0 .../web/src/lib/i18n/locales/planta/en.json | 0 .../web/src/lib/i18n/locales/planta/es.json | 0 .../web/src/lib/i18n/locales/planta/fr.json | 0 .../web/src/lib/i18n/locales/planta/it.json | 0 .../web/src/lib/i18n/locales/presi/de.json | 0 .../web/src/lib/i18n/locales/presi/en.json | 0 .../web/src/lib/i18n/locales/presi/es.json | 0 .../web/src/lib/i18n/locales/presi/fr.json | 0 .../web/src/lib/i18n/locales/presi/it.json | 0 .../web/src/lib/i18n/locales/profile/de.json | 0 .../web/src/lib/i18n/locales/profile/en.json | 0 .../web/src/lib/i18n/locales/profile/es.json | 0 .../web/src/lib/i18n/locales/profile/fr.json | 0 .../web/src/lib/i18n/locales/profile/it.json | 0 .../src/lib/i18n/locales/questions/de.json | 0 .../src/lib/i18n/locales/questions/en.json | 0 .../src/lib/i18n/locales/questions/es.json | 0 .../src/lib/i18n/locales/questions/fr.json | 0 .../src/lib/i18n/locales/questions/it.json | 0 .../src/lib/i18n/locales/skilltree/de.json | 0 .../src/lib/i18n/locales/skilltree/en.json | 0 .../src/lib/i18n/locales/skilltree/es.json | 0 .../src/lib/i18n/locales/skilltree/fr.json | 0 .../src/lib/i18n/locales/skilltree/it.json | 0 .../web/src/lib/i18n/locales/storage/de.json | 0 .../web/src/lib/i18n/locales/storage/en.json | 0 .../web/src/lib/i18n/locales/storage/es.json | 0 .../web/src/lib/i18n/locales/storage/fr.json | 0 .../web/src/lib/i18n/locales/storage/it.json | 0 .../src/lib/i18n/locales/subscription/de.json | 0 .../src/lib/i18n/locales/subscription/en.json | 0 .../src/lib/i18n/locales/subscription/es.json | 0 .../src/lib/i18n/locales/subscription/fr.json | 0 .../src/lib/i18n/locales/subscription/it.json | 0 .../web/src/lib/i18n/locales/times/de.json | 0 .../web/src/lib/i18n/locales/times/en.json | 0 .../web/src/lib/i18n/locales/times/es.json | 0 .../web/src/lib/i18n/locales/times/fr.json | 0 .../web/src/lib/i18n/locales/times/it.json | 0 .../web/src/lib/i18n/locales/todo/de.json | 0 .../web/src/lib/i18n/locales/todo/en.json | 0 .../web/src/lib/i18n/locales/todo/es.json | 0 .../web/src/lib/i18n/locales/todo/fr.json | 0 .../web/src/lib/i18n/locales/todo/it.json | 0 .../web/src/lib/i18n/locales/uload/de.json | 0 .../web/src/lib/i18n/locales/uload/en.json | 0 .../web/src/lib/i18n/locales/uload/es.json | 0 .../web/src/lib/i18n/locales/uload/fr.json | 0 .../web/src/lib/i18n/locales/uload/it.json | 0 .../web/src/lib/i18n/locales/zitare/de.json | 0 .../web/src/lib/i18n/locales/zitare/en.json | 0 .../web/src/lib/i18n/locales/zitare/es.json | 0 .../web/src/lib/i18n/locales/zitare/fr.json | 0 .../web/src/lib/i18n/locales/zitare/it.json | 0 .../lib/modules/automations/ListView.svelte | 2 +- .../lib/modules/automations/collections.ts | 0 .../web/src/lib/modules/automations/index.ts | 0 .../automations/stores/automations.svelte.ts | 0 .../web/src/lib/modules/automations/types.ts | 2 +- .../web/src/lib/modules/calc/ListView.svelte | 0 .../web/src/lib/modules/calc/collections.ts | 0 .../modules/calc/components/CasioSkin.svelte | 0 .../modules/calc/components/HP35Skin.svelte | 0 .../calc/components/MinimalSkin.svelte | 0 .../modules/calc/components/ModernSkin.svelte | 0 .../modules/calc/components/TI84Skin.svelte | 0 .../src/lib/modules/calc/components/index.ts | 0 .../src/lib/modules/calc/components/types.ts | 0 .../src/lib/modules/calc/engine/evaluate.ts | 0 .../apps/web/src/lib/modules/calc/index.ts | 0 .../apps/web/src/lib/modules/calc/queries.ts | 0 .../calc/stores/calculations.svelte.ts | 2 +- .../calc/stores/saved-formulas.svelte.ts | 2 +- .../apps/web/src/lib/modules/calc/types.ts | 2 +- .../src/lib/modules/calendar/ListView.svelte | 8 +- .../src/lib/modules/calendar/collections.ts | 0 .../calendar/components/AgendaView.svelte | 2 +- .../calendar/components/CalendarHeader.svelte | 2 +- .../components/ConflictWarning.svelte | 2 +- .../calendar/components/DateStrip.svelte | 0 .../components/EventDetailModal.svelte | 2 +- .../calendar/components/EventForm.svelte | 4 +- .../calendar/components/MiniCalendar.svelte | 2 +- .../calendar/components/MonthView.svelte | 0 .../components/QuickEventPopover.svelte | 4 +- .../components/SlotSuggestions.svelte | 2 +- .../calendar/components/WeekView.svelte | 4 +- .../lib/modules/calendar/components/index.ts | 0 .../lib/modules/calendar/composables/index.ts | 0 .../composables/useCalendarKeyboard.svelte.ts | 0 .../composables/useDragToCreate.svelte.ts | 0 .../composables/useEventDragDrop.svelte.ts | 0 .../composables/useVisibleHours.svelte.ts | 2 +- .../web/src/lib/modules/calendar/index.ts | 0 .../web/src/lib/modules/calendar/queries.ts | 2 +- .../modules/calendar/quick-input-adapter.ts | 2 +- .../calendar/stores/calendars.svelte.ts | 0 .../modules/calendar/stores/events.svelte.ts | 2 +- .../modules/calendar/stores/tags.svelte.ts | 4 +- .../modules/calendar/stores/view.svelte.ts | 4 +- .../lib/modules/calendar/utils/constants.ts | 0 .../modules/calendar/utils/drag-helpers.ts | 0 .../calendar/utils/event-date-helpers.ts | 0 .../modules/calendar/utils/event-estimator.ts | 0 .../modules/calendar/utils/event-parser.ts | 2 +- .../modules/calendar/views/DetailView.svelte | 4 +- .../web/src/lib/modules/cards/ListView.svelte | 0 .../web/src/lib/modules/cards/collections.ts | 0 .../cards/components/CreateDeckModal.svelte | 4 +- .../modules/cards/components/DeckCard.svelte | 0 .../apps/web/src/lib/modules/cards/index.ts | 0 .../apps/web/src/lib/modules/cards/queries.ts | 0 .../lib/modules/cards/stores/cards.svelte.ts | 2 +- .../lib/modules/cards/stores/decks.svelte.ts | 2 +- .../lib/modules/cards/stores/tags.svelte.ts | 4 +- .../apps/web/src/lib/modules/cards/types.ts | 2 +- .../lib/modules/cards/views/DetailView.svelte | 4 +- .../web/src/lib/modules/chat/ListView.svelte | 0 .../web/src/lib/modules/chat/collections.ts | 0 .../apps/web/src/lib/modules/chat/index.ts | 0 .../apps/web/src/lib/modules/chat/queries.ts | 0 .../chat/stores/conversations.svelte.ts | 4 +- .../modules/chat/stores/messages.svelte.ts | 2 +- .../lib/modules/chat/stores/tags.svelte.ts | 4 +- .../modules/chat/stores/templates.svelte.ts | 0 .../apps/web/src/lib/modules/chat/types.ts | 2 +- .../lib/modules/citycorners/ListView.svelte | 0 .../lib/modules/citycorners/collections.ts | 0 .../web/src/lib/modules/citycorners/index.ts | 0 .../src/lib/modules/citycorners/queries.ts | 0 .../citycorners/stores/favorites.svelte.ts | 2 +- .../modules/citycorners/stores/tags.svelte.ts | 4 +- .../web/src/lib/modules/citycorners/types.ts | 2 +- .../citycorners/utils/opening-hours.ts | 0 .../citycorners/views/DetailView.svelte | 4 +- .../src/lib/modules/contacts/ListView.svelte | 10 +- .../src/lib/modules/contacts/collections.ts | 0 .../components/pages/ContactPage.svelte | 8 +- .../components/pages/ContactPagePicker.svelte | 2 +- .../web/src/lib/modules/contacts/index.ts | 0 .../web/src/lib/modules/contacts/queries.ts | 0 .../modules/contacts/quick-input-adapter.ts | 2 +- .../contacts/stores/contacts.svelte.ts | 4 +- .../modules/contacts/stores/filter.svelte.ts | 2 +- .../modules/contacts/stores/modal.svelte.ts | 0 .../modules/contacts/stores/tags.svelte.ts | 4 +- .../web/src/lib/modules/contacts/types.ts | 2 +- .../modules/contacts/utils/contact-parser.ts | 2 +- .../modules/contacts/views/DetailView.svelte | 4 +- .../src/lib/modules/context/ListView.svelte | 0 .../src/lib/modules/context/collections.ts | 0 .../apps/web/src/lib/modules/context/index.ts | 0 .../web/src/lib/modules/context/queries.ts | 2 +- .../lib/modules/context/stores/tags.svelte.ts | 4 +- .../apps/web/src/lib/modules/context/types.ts | 4 +- .../core/widgets/ActiveTimerWidget.svelte | 2 +- .../widgets/NutritionProgressWidget.svelte | 2 +- .../core/widgets/PlantWateringWidget.svelte | 2 +- .../core/widgets/QuickActionsWidget.svelte | 0 .../core/widgets/QuoteOfTheDayWidget.svelte | 2 +- .../core/widgets/RecentChatsWidget.svelte | 2 +- .../core/widgets/RecentContactsWidget.svelte | 2 +- .../core/widgets/TasksTodayWidget.svelte | 2 +- .../core/widgets/UpcomingEventsWidget.svelte | 2 +- .../modules/core/widgets/WidgetGrid.svelte | 0 .../web/src/lib/modules/core/widgets/index.ts | 2 +- .../src/lib/modules/finance/ListView.svelte | 0 .../src/lib/modules/finance/collections.ts | 0 .../apps/web/src/lib/modules/finance/index.ts | 0 .../web/src/lib/modules/finance/queries.ts | 2 +- .../modules/finance/stores/finance.svelte.ts | 0 .../apps/web/src/lib/modules/finance/types.ts | 2 +- .../apps/web/src/lib/modules/guides/index.ts | 10 +- .../lib/modules/guides/stores/tags.svelte.ts | 4 +- .../src/lib/modules/habits/ListView.svelte | 8 +- .../web/src/lib/modules/habits/collections.ts | 0 .../habits/components/DayTimeline.svelte | 2 +- .../habits/components/HabitBoard.svelte | 0 .../habits/components/HabitDetail.svelte | 4 +- .../habits/components/HabitForm.svelte | 4 +- .../habits/components/HabitTile.svelte | 6 +- .../apps/web/src/lib/modules/habits/index.ts | 0 .../web/src/lib/modules/habits/queries.ts | 2 +- .../modules/habits/stores/habits.svelte.ts | 0 .../apps/web/src/lib/modules/habits/types.ts | 2 +- .../src/lib/modules/inventar/ListView.svelte | 0 .../src/lib/modules/inventar/collections.ts | 0 .../inventar/components/StatusBadge.svelte | 0 .../inventar/components/ViewModeToggle.svelte | 0 .../components/fields/FieldEditor.svelte | 0 .../components/fields/FieldRenderer.svelte | 0 .../components/fields/SchemaEditor.svelte | 2 +- .../web/src/lib/modules/inventar/constants.ts | 0 .../web/src/lib/modules/inventar/index.ts | 0 .../web/src/lib/modules/inventar/queries.ts | 0 .../inventar/stores/categories.svelte.ts | 2 +- .../inventar/stores/collections.svelte.ts | 2 +- .../modules/inventar/stores/items.svelte.ts | 2 +- .../inventar/stores/locations.svelte.ts | 2 +- .../modules/inventar/stores/tags.svelte.ts | 4 +- .../modules/inventar/stores/view.svelte.ts | 2 +- .../web/src/lib/modules/inventar/types.ts | 2 +- .../modules/inventar/views/DetailView.svelte | 4 +- .../src/lib/modules/memoro/ListView.svelte | 0 .../web/src/lib/modules/memoro/collections.ts | 0 .../apps/web/src/lib/modules/memoro/index.ts | 0 .../web/src/lib/modules/memoro/queries.ts | 4 +- .../modules/memoro/stores/memories.svelte.ts | 2 +- .../lib/modules/memoro/stores/memos.svelte.ts | 4 +- .../lib/modules/memoro/stores/tags.svelte.ts | 4 +- .../apps/web/src/lib/modules/memoro/types.ts | 2 +- .../modules/memoro/views/DetailView.svelte | 4 +- .../src/lib/modules/moodlit/ListView.svelte | 4 +- .../src/lib/modules/moodlit/collections.ts | 0 .../components/mood/CreateMoodDialog.svelte | 2 +- .../moodlit/components/mood/MoodCard.svelte | 2 +- .../components/mood/MoodFullscreen.svelte | 2 +- .../src/lib/modules/moodlit/default-moods.ts | 0 .../apps/web/src/lib/modules/moodlit/index.ts | 0 .../web/src/lib/modules/moodlit/queries.ts | 0 .../modules/moodlit/stores/moods.svelte.ts | 2 +- .../moodlit/stores/sequences.svelte.ts | 2 +- .../lib/modules/moodlit/stores/tags.svelte.ts | 4 +- .../apps/web/src/lib/modules/moodlit/types.ts | 2 +- .../web/src/lib/modules/music/ListView.svelte | 0 .../web/src/lib/modules/music/collections.ts | 0 .../apps/web/src/lib/modules/music/index.ts | 0 .../apps/web/src/lib/modules/music/queries.ts | 0 .../modules/music/stores/library.svelte.ts | 2 +- .../lib/modules/music/stores/player.svelte.ts | 0 .../modules/music/stores/playlists.svelte.ts | 2 +- .../modules/music/stores/projects.svelte.ts | 2 +- .../lib/modules/music/stores/tags.svelte.ts | 4 +- .../apps/web/src/lib/modules/music/types.ts | 2 +- .../lib/modules/music/views/DetailView.svelte | 4 +- .../web/src/lib/modules/notes/ListView.svelte | 4 +- .../web/src/lib/modules/notes/collections.ts | 0 .../apps/web/src/lib/modules/notes/index.ts | 0 .../apps/web/src/lib/modules/notes/queries.ts | 2 +- .../lib/modules/notes/stores/notes.svelte.ts | 0 .../apps/web/src/lib/modules/notes/types.ts | 2 +- .../src/lib/modules/nutriphi/ListView.svelte | 0 .../src/lib/modules/nutriphi/collections.ts | 0 .../web/src/lib/modules/nutriphi/constants.ts | 0 .../web/src/lib/modules/nutriphi/index.ts | 0 .../web/src/lib/modules/nutriphi/queries.ts | 0 .../modules/nutriphi/stores/tags.svelte.ts | 4 +- .../web/src/lib/modules/nutriphi/types.ts | 2 +- .../src/lib/modules/photos/ListView.svelte | 2 +- .../web/src/lib/modules/photos/collections.ts | 0 .../photos/components/albums/AlbumCard.svelte | 2 +- .../photos/components/albums/AlbumGrid.svelte | 0 .../components/albums/CreateAlbumModal.svelte | 2 +- .../components/filters/FilterBar.svelte | 0 .../components/gallery/PhotoCard.svelte | 2 +- .../gallery/PhotoDetailModal.svelte | 4 +- .../components/gallery/PhotoGrid.svelte | 0 .../components/upload/UploadDropzone.svelte | 2 +- .../apps/web/src/lib/modules/photos/index.ts | 0 .../web/src/lib/modules/photos/queries.ts | 0 .../modules/photos/stores/albums.svelte.ts | 2 +- .../modules/photos/stores/photos.svelte.ts | 2 +- .../lib/modules/photos/stores/tags.svelte.ts | 4 +- .../apps/web/src/lib/modules/photos/types.ts | 2 +- .../src/lib/modules/picture/ListView.svelte | 0 .../src/lib/modules/picture/collections.ts | 0 .../apps/web/src/lib/modules/picture/index.ts | 0 .../web/src/lib/modules/picture/queries.ts | 6 +- .../modules/picture/stores/boards.svelte.ts | 0 .../modules/picture/stores/images.svelte.ts | 4 +- .../lib/modules/picture/stores/view.svelte.ts | 2 +- .../apps/web/src/lib/modules/picture/types.ts | 4 +- .../src/lib/modules/places/ListView.svelte | 8 +- .../web/src/lib/modules/places/collections.ts | 0 .../apps/web/src/lib/modules/places/index.ts | 0 .../web/src/lib/modules/places/queries.ts | 0 .../modules/places/stores/places.svelte.ts | 0 .../modules/places/stores/tracking.svelte.ts | 0 .../apps/web/src/lib/modules/places/types.ts | 2 +- .../modules/places/views/DetailView.svelte | 2 +- .../src/lib/modules/planta/ListView.svelte | 0 .../web/src/lib/modules/planta/collections.ts | 0 .../apps/web/src/lib/modules/planta/index.ts | 0 .../web/src/lib/modules/planta/mutations.ts | 2 +- .../web/src/lib/modules/planta/queries.ts | 0 .../lib/modules/planta/quick-input-adapter.ts | 2 +- .../lib/modules/planta/stores/tags.svelte.ts | 4 +- .../apps/web/src/lib/modules/planta/types.ts | 2 +- .../lib/modules/planta/utils/plant-parser.ts | 2 +- .../lib/modules/planta/utils/syntax-help.ts | 2 +- .../modules/planta/views/DetailView.svelte | 4 +- .../lib/modules/playground/ListView.svelte | 0 .../web/src/lib/modules/playground/index.ts | 0 .../web/src/lib/modules/presi/ListView.svelte | 0 .../web/src/lib/modules/presi/collections.ts | 0 .../apps/web/src/lib/modules/presi/index.ts | 0 .../apps/web/src/lib/modules/presi/queries.ts | 0 .../lib/modules/presi/stores/decks.svelte.ts | 2 +- .../lib/modules/presi/stores/tags.svelte.ts | 4 +- .../apps/web/src/lib/modules/presi/types.ts | 2 +- .../lib/modules/presi/views/DetailView.svelte | 4 +- .../src/lib/modules/questions/ListView.svelte | 0 .../src/lib/modules/questions/collections.ts | 0 .../web/src/lib/modules/questions/index.ts | 0 .../web/src/lib/modules/questions/queries.ts | 0 .../modules/questions/stores/tags.svelte.ts | 4 +- .../web/src/lib/modules/questions/types.ts | 2 +- .../modules/questions/views/DetailView.svelte | 4 +- .../src/lib/modules/skilltree/ListView.svelte | 0 .../src/lib/modules/skilltree/collections.ts | 0 .../components/AchievementCard.svelte | 2 +- .../components/AchievementCelebration.svelte | 2 +- .../skilltree/components/AddSkillModal.svelte | 2 +- .../skilltree/components/AddXpModal.svelte | 2 +- .../components/EditSkillModal.svelte | 2 +- .../components/LevelUpCelebration.svelte | 2 +- .../skilltree/components/SkillCard.svelte | 2 +- .../components/SkillTemplates.svelte | 2 +- .../skilltree/components/StatsOverview.svelte | 2 +- .../web/src/lib/modules/skilltree/index.ts | 0 .../web/src/lib/modules/skilltree/queries.ts | 0 .../skilltree/stores/achievements.svelte.ts | 0 .../modules/skilltree/stores/skills.svelte.ts | 2 +- .../modules/skilltree/stores/tags.svelte.ts | 4 +- .../web/src/lib/modules/skilltree/types.ts | 4 +- .../modules/skilltree/views/DetailView.svelte | 4 +- .../web/src/lib/modules/spiral/collect.ts | 2 +- .../spiral/components/SpiralCanvas.svelte | 4 +- .../apps/web/src/lib/modules/spiral/index.ts | 0 .../spiral/stores/mana-spiral.svelte.ts | 2 +- .../src/lib/modules/storage/ListView.svelte | 0 .../src/lib/modules/storage/collections.ts | 0 .../apps/web/src/lib/modules/storage/index.ts | 0 .../web/src/lib/modules/storage/queries.ts | 4 +- .../modules/storage/stores/files.svelte.ts | 2 +- .../lib/modules/storage/stores/tags.svelte.ts | 4 +- .../apps/web/src/lib/modules/storage/types.ts | 2 +- .../modules/storage/views/DetailView.svelte | 4 +- .../web/src/lib/modules/times/ListView.svelte | 2 +- .../web/src/lib/modules/times/collections.ts | 0 .../modules/times/components/EntryForm.svelte | 4 +- .../modules/times/components/EntryItem.svelte | 4 +- .../modules/times/components/EntryList.svelte | 2 +- .../modules/times/components/FocusCard.svelte | 2 +- .../times/components/KeyboardShortcuts.svelte | 0 .../times/components/QuickStart.svelte | 0 .../modules/times/components/TimerCard.svelte | 2 +- .../times/components/TimerIndicator.svelte | 2 +- .../components/clock/CircularProgress.svelte | 0 .../times/components/clock/WorldMap.svelte | 0 .../apps/web/src/lib/modules/times/index.ts | 0 .../apps/web/src/lib/modules/times/queries.ts | 6 +- .../lib/modules/times/quick-input-adapter.ts | 2 +- .../lib/modules/times/stores/alarms.svelte.ts | 0 .../times/stores/countdown-timers.svelte.ts | 2 +- .../lib/modules/times/stores/focus.svelte.ts | 0 .../times/stores/session-alarms.svelte.ts | 0 .../stores/session-countdown-timers.svelte.ts | 0 .../modules/times/stores/stopwatch.svelte.ts | 0 .../lib/modules/times/stores/tags.svelte.ts | 4 +- .../lib/modules/times/stores/timer.svelte.ts | 0 .../lib/modules/times/stores/view.svelte.ts | 2 +- .../times/stores/world-clocks.svelte.ts | 0 .../apps/web/src/lib/modules/times/types.ts | 2 +- .../lib/modules/times/utils/entry-parser.ts | 2 +- .../web/src/lib/modules/times/utils/export.ts | 0 .../src/lib/modules/times/utils/rounding.ts | 0 .../lib/modules/times/views/DetailView.svelte | 2 +- .../web/src/lib/modules/todo/ListView.svelte | 10 +- .../web/src/lib/modules/todo/collections.ts | 0 .../todo/components/OnboardingModal.svelte | 2 +- .../todo/components/QuickAddTask.svelte | 2 +- .../todo/components/SubtaskList.svelte | 2 +- .../todo/components/SyncIndicator.svelte | 2 +- .../todo/components/SyntaxHelpOverlay.svelte | 2 +- .../todo/components/TaskEditModal.svelte | 2 +- .../modules/todo/components/TaskItem.svelte | 4 +- .../modules/todo/components/TaskList.svelte | 4 +- .../board-views/BoardViewRenderer.svelte | 0 .../components/board-views/FokusLayout.svelte | 2 +- .../components/board-views/GridLayout.svelte | 0 .../board-views/KanbanLayout.svelte | 0 .../components/board-views/ViewColumn.svelte | 0 .../board-views/ViewColumnHeader.svelte | 0 .../board-views/ViewEditorModal.svelte | 2 +- .../board-views/ViewSelector.svelte | 2 +- .../todo/components/board-views/index.ts | 0 .../components/form/DurationPicker.svelte | 2 +- .../components/form/FunRatingPicker.svelte | 2 +- .../components/form/PrioritySelector.svelte | 2 +- .../components/form/ReminderSelector.svelte | 2 +- .../form/StorypointsSelector.svelte | 2 +- .../todo/components/form/TagSelector.svelte | 4 +- .../lib/modules/todo/components/form/index.ts | 0 .../components/kanban/KanbanTaskCard.svelte | 4 +- .../kanban/QuickAddTaskInline.svelte | 2 +- .../todo/components/pages/PageEditBar.svelte | 2 +- .../todo/components/pages/PagePicker.svelte | 2 +- .../todo/components/pages/TodoPage.svelte | 2 +- .../skeletons/KanbanBoardSkeleton.svelte | 0 .../skeletons/KanbanColumnSkeleton.svelte | 0 .../skeletons/StatisticsSkeleton.svelte | 0 .../skeletons/TaskItemSkeleton.svelte | 0 .../skeletons/TaskListSkeleton.svelte | 0 .../todo/components/skeletons/index.ts | 0 .../todo/composables/useTaskForm.svelte.ts | 0 .../apps/web/src/lib/modules/todo/index.ts | 0 .../apps/web/src/lib/modules/todo/queries.ts | 6 +- .../lib/modules/todo/quick-input-adapter.ts | 2 +- .../src/lib/modules/todo/reminder-source.ts | 2 +- .../modules/todo/stores/board-views.svelte.ts | 0 .../modules/todo/stores/contacts.svelte.ts | 0 .../lib/modules/todo/stores/labels.svelte.ts | 10 +- .../modules/todo/stores/reminders.svelte.ts | 0 .../modules/todo/stores/settings.svelte.ts | 4 +- .../lib/modules/todo/stores/tasks.svelte.ts | 2 +- .../src/lib/modules/todo/utils/task-parser.ts | 4 +- .../lib/modules/todo/utils/time-estimator.ts | 0 .../web/src/lib/modules/todo/view-grouping.ts | 0 .../lib/modules/todo/views/DetailView.svelte | 4 +- .../web/src/lib/modules/uload/ListView.svelte | 0 .../web/src/lib/modules/uload/collections.ts | 0 .../apps/web/src/lib/modules/uload/index.ts | 0 .../apps/web/src/lib/modules/uload/queries.ts | 2 +- .../apps/web/src/lib/modules/uload/types.ts | 2 +- .../lib/modules/uload/views/DetailView.svelte | 4 +- .../src/lib/modules/zitare/ListView.svelte | 6 +- .../web/src/lib/modules/zitare/collections.ts | 0 .../zitare/components/QuoteCard.svelte | 4 +- .../zitare/components/SpiralCanvas.svelte | 4 +- .../apps/web/src/lib/modules/zitare/index.ts | 0 .../web/src/lib/modules/zitare/queries.ts | 0 .../modules/zitare/stores/favorites.svelte.ts | 0 .../lib/modules/zitare/stores/lists.svelte.ts | 2 +- .../modules/zitare/stores/quotes.svelte.ts | 0 .../modules/zitare/stores/settings.svelte.ts | 4 +- .../modules/zitare/stores/spiral.svelte.ts | 2 +- .../lib/modules/zitare/stores/tags.svelte.ts | 4 +- .../apps/web/src/lib/modules/zitare/types.ts | 2 +- .../modules/zitare/views/DetailView.svelte | 2 +- .../src/lib/quick-input/fallback-adapter.ts | 2 +- .../apps/web/src/lib/quick-input/registry.ts | 0 .../apps/web/src/lib/quick-input/types.ts | 2 +- .../apps/web/src/lib/search/engine.svelte.ts | 0 .../apps/web/src/lib/search/index.ts | 0 .../web/src/lib/search/providers/calendar.ts | 2 +- .../web/src/lib/search/providers/cards.ts | 2 +- .../apps/web/src/lib/search/providers/chat.ts | 2 +- .../web/src/lib/search/providers/clock.ts | 2 +- .../web/src/lib/search/providers/contacts.ts | 2 +- .../web/src/lib/search/providers/index.ts | 0 .../web/src/lib/search/providers/music.ts | 2 +- .../web/src/lib/search/providers/picture.ts | 2 +- .../web/src/lib/search/providers/presi.ts | 2 +- .../web/src/lib/search/providers/storage.ts | 2 +- .../apps/web/src/lib/search/providers/todo.ts | 2 +- .../web/src/lib/search/providers/zitare.ts | 2 +- .../apps/web/src/lib/search/registry.ts | 0 .../apps/web/src/lib/search/scoring.ts | 0 .../apps/web/src/lib/search/types.ts | 0 .../apps/web/src/lib/server/middleware.ts | 0 .../src/lib/splitscreen/PanelHeader.svelte | 0 .../src/lib/splitscreen/ResizeHandle.svelte | 0 .../lib/splitscreen/SplitPaneLayout.svelte | 0 .../apps/web/src/lib/splitscreen/index.ts | 0 .../apps/web/src/lib/splitscreen/registry.ts | 0 .../web/src/lib/splitscreen/store.svelte.ts | 2 +- .../apps/web/src/lib/stores/auth.svelte.ts | 2 +- .../web/src/lib/stores/dashboard.svelte.ts | 2 +- .../web/src/lib/stores/funnel-tracking.ts | 10 +- .../web/src/lib/stores/guest-mode.svelte.ts | 2 +- .../apps/web/src/lib/stores/navigation.ts | 3 + .../apps/web/src/lib/stores/network.svelte.ts | 59 + .../web/src/lib/stores/onboarding.svelte.ts | 0 .../apps/web/src/lib/stores/tags.svelte.ts | 4 +- .../apps/web/src/lib/stores/theme.ts | 12 +- .../apps/web/src/lib/stores/tiling.svelte.ts | 0 .../apps/web/src/lib/stores/toast.svelte.ts | 0 .../src/lib/stores/user-settings.svelte.ts | 12 +- .../apps/web/src/lib/triggers/actions.ts | 0 .../apps/web/src/lib/triggers/conditions.ts | 0 .../apps/web/src/lib/triggers/index.ts | 0 .../web/src/lib/triggers/inline-suggest.ts | 0 .../apps/web/src/lib/triggers/loader.ts | 0 .../apps/web/src/lib/triggers/registry.ts | 0 .../apps/web/src/lib/triggers/suggestions.ts | 0 .../apps/web/src/lib/types/dashboard.test.ts | 4 +- .../apps/web/src/lib/types/dashboard.ts | 8 +- .../apps/web/src/lib/types/database.ts | 0 .../apps/web/src/lib/types/tiling.ts | 0 .../apps/web/src/lib/utils/autoRefresh.ts | 0 .../apps/web/src/lib/utils/tiling-tree.ts | 0 .../apps/web/src/lib/version.ts | 0 .../apps/web/src/routes/(app)/+layout.svelte | 50 +- .../apps/web/src/routes/(app)/+page.svelte | 10 +- .../web/src/routes/(app)/admin/+layout.svelte | 2 +- .../web/src/routes/(app)/admin/+page.svelte | 0 .../routes/(app)/admin/system/+page.svelte | 4 +- .../routes/(app)/admin/user-data/+page.svelte | 2 +- .../admin/user-data/[userId]/+page.svelte | 2 +- .../src/routes/(app)/admin/users/+page.svelte | 2 +- .../src/routes/(app)/api-keys/+page.svelte | 4 +- .../web/src/routes/(app)/apps/+page.svelte | 4 +- .../web/src/routes/(app)/calc/+page.svelte | 4 +- .../routes/(app)/calc/standard/+page.svelte | 2 +- .../src/routes/(app)/calendar/+page.svelte | 10 +- .../(app)/calendar/calendars/+page.svelte | 4 +- .../(app)/calendar/event/[id]/+page.svelte | 4 +- .../web/src/routes/(app)/cards/+layout.svelte | 0 .../web/src/routes/(app)/cards/+page.svelte | 4 +- .../src/routes/(app)/cards/decks/+page.svelte | 2 +- .../(app)/cards/decks/[id]/+page.svelte | 6 +- .../routes/(app)/cards/explore/+page.svelte | 4 +- .../routes/(app)/cards/progress/+page.svelte | 4 +- .../web/src/routes/(app)/chat/+layout.svelte | 0 .../web/src/routes/(app)/chat/+page.svelte | 4 +- .../src/routes/(app)/chat/[id]/+page.svelte | 6 +- .../routes/(app)/chat/archive/+page.svelte | 4 +- .../routes/(app)/chat/templates/+page.svelte | 4 +- .../src/routes/(app)/citycorners/+page.svelte | 2 +- .../(app)/citycorners/add-city/+page.svelte | 2 +- .../routes/(app)/citycorners/add/+page.svelte | 0 .../citycorners/cities/[slug]/+layout.svelte | 0 .../citycorners/cities/[slug]/+page.svelte | 2 +- .../cities/[slug]/add/+page.svelte | 2 +- .../cities/[slug]/locations/[id]/+page.svelte | 2 +- .../[slug]/locations/[id]/edit/+page.svelte | 2 +- .../cities/[slug]/map/+page.svelte | 2 +- .../(app)/citycorners/favorites/+page.svelte | 2 +- .../citycorners/locations/[id]/+page.svelte | 0 .../locations/[id]/edit/+page.svelte | 0 .../routes/(app)/citycorners/map/+page.svelte | 0 .../src/routes/(app)/contacts/+layout.svelte | 0 .../src/routes/(app)/contacts/+page.svelte | 6 +- .../routes/(app)/contacts/[id]/+page.svelte | 10 +- .../web/src/routes/(app)/context/+page.svelte | 4 +- .../(app)/context/documents/+page.svelte | 4 +- .../(app)/context/documents/[id]/+page.svelte | 4 +- .../routes/(app)/context/spaces/+page.svelte | 4 +- .../(app)/context/spaces/[id]/+page.svelte | 4 +- .../web/src/routes/(app)/credits/+page.svelte | 8 +- .../src/routes/(app)/feedback/+page.svelte | 7 + .../src/routes/(app)/finance/+layout.svelte | 0 .../web/src/routes/(app)/finance/+page.svelte | 2 +- .../web/src/routes/(app)/gifts/+page.svelte | 4 +- .../routes/(app)/gifts/redeem/+page.svelte | 2 +- .../(app)/gifts/redeem/[code]/+page.svelte | 2 +- .../web/src/routes/(app)/guides/+page.svelte | 6 +- .../src/routes/(app)/habits/+layout.svelte | 0 .../web/src/routes/(app)/habits/+page.svelte | 2 +- .../src/routes/(app)/habits/[id]/+page.svelte | 2 +- .../web/src/routes/(app)/help/+page.svelte | 16 +- .../src/routes/(app)/inventar/+layout.svelte | 0 .../src/routes/(app)/inventar/+page.svelte | 4 +- .../(app)/inventar/categories/+page.svelte | 4 +- .../inventar/collections/[id]/+page.svelte | 4 +- .../collections/[id]/edit/+page.svelte | 4 +- .../inventar/collections/new/+page.svelte | 4 +- .../(app)/inventar/items/[id]/+page.svelte | 4 +- .../(app)/inventar/locations/+page.svelte | 4 +- .../routes/(app)/inventar/search/+page.svelte | 4 +- .../src/routes/(app)/llm-test/+page.svelte | 8 +- .../web/src/routes/(app)/llm-test/+page.ts | 0 .../web/src/routes/(app)/mana/+page.svelte | 6 +- .../src/routes/(app)/memoro/+layout.svelte | 0 .../web/src/routes/(app)/memoro/+page.svelte | 4 +- .../src/routes/(app)/memoro/[id]/+page.svelte | 4 +- .../routes/(app)/memoro/archive/+page.svelte | 4 +- .../src/routes/(app)/memoro/tags/+page.svelte | 6 +- .../web/src/routes/(app)/moodlit/+page.svelte | 4 +- .../routes/(app)/moodlit/moods/+page.svelte | 6 +- .../(app)/moodlit/sequences/+page.svelte | 6 +- .../web/src/routes/(app)/music/+layout.svelte | 0 .../web/src/routes/(app)/music/+page.svelte | 4 +- .../routes/(app)/music/library/+page.svelte | 4 +- .../routes/(app)/music/playlists/+page.svelte | 4 +- .../(app)/music/playlists/[id]/+page.svelte | 6 +- .../routes/(app)/music/projects/+page.svelte | 4 +- .../web/src/routes/(app)/notes/+layout.svelte | 0 .../web/src/routes/(app)/notes/+page.svelte | 2 +- .../src/routes/(app)/notes/[id]/+page.svelte | 2 +- .../src/routes/(app)/nutriphi/+page.svelte | 4 +- .../routes/(app)/nutriphi/add/+page.svelte | 4 +- .../routes/(app)/nutriphi/goals/+page.svelte | 4 +- .../(app)/nutriphi/history/+page.svelte | 4 +- .../src/routes/(app)/observatory/+page.svelte | 0 .../routes/(app)/organizations/+page.svelte | 4 +- .../(app)/organizations/[id]/+page.svelte | 2 +- .../routes/(app)/organizations/[id]/+page.ts | 0 .../organizations/[id]/landing/+page.svelte | 2 +- .../(app)/organizations/[id]/landing/+page.ts | 0 .../src/routes/(app)/photos/+layout.svelte | 0 .../web/src/routes/(app)/photos/+page.svelte | 4 +- .../routes/(app)/photos/albums/+page.svelte | 4 +- .../(app)/photos/albums/[id]/+page.svelte | 4 +- .../(app)/photos/favorites/+page.svelte | 4 +- .../routes/(app)/photos/upload/+page.svelte | 4 +- .../src/routes/(app)/picture/+layout.svelte | 0 .../web/src/routes/(app)/picture/+page.svelte | 6 +- .../routes/(app)/picture/archive/+page.svelte | 4 +- .../routes/(app)/picture/board/+page.svelte | 4 +- .../(app)/picture/board/[id]/+page.svelte | 4 +- .../(app)/picture/generate/+page.svelte | 4 +- .../web/src/routes/(app)/planta/+page.svelte | 0 .../src/routes/(app)/planta/[id]/+page.svelte | 0 .../src/routes/(app)/planta/add/+page.svelte | 0 .../src/routes/(app)/planta/tags/+page.svelte | 4 +- .../src/routes/(app)/playground/+page.svelte | 4 +- .../web/src/routes/(app)/presi/+page.svelte | 2 +- .../routes/(app)/presi/deck/[id]/+page.svelte | 4 +- .../(app)/presi/present/[id]/+page.svelte | 2 +- .../web/src/routes/(app)/profile/+page.svelte | 6 +- .../src/routes/(app)/questions/+page.svelte | 4 +- .../routes/(app)/questions/[id]/+page.svelte | 4 +- .../(app)/questions/collections/+page.svelte | 4 +- .../routes/(app)/questions/new/+page.svelte | 4 +- .../src/routes/(app)/settings/+page.svelte | 12 +- .../(app)/settings/my-data/+page.svelte | 6 +- .../src/routes/(app)/skilltree/+page.svelte | 2 +- .../(app)/skilltree/achievements/+page.svelte | 2 +- .../routes/(app)/skilltree/tree/+page.svelte | 2 +- .../web/src/routes/(app)/spiral/+page.svelte | 4 +- .../src/routes/(app)/storage/+layout.svelte | 0 .../web/src/routes/(app)/storage/+page.svelte | 4 +- .../(app)/storage/favorites/+page.svelte | 4 +- .../routes/(app)/storage/files/+page.svelte | 4 +- .../storage/files/[folderId]/+page.svelte | 4 +- .../routes/(app)/storage/search/+page.svelte | 4 +- .../routes/(app)/storage/trash/+page.svelte | 4 +- .../routes/(app)/subscription/+page.svelte | 4 +- .../web/src/routes/(app)/tags/+page.svelte | 4 +- .../web/src/routes/(app)/teams/+page.svelte | 4 +- .../web/src/routes/(app)/themes/+page.svelte | 4 +- .../src/routes/(app)/timeline/+page.svelte | 6 +- .../(app)/timeline/analytics/+page.svelte | 4 +- .../web/src/routes/(app)/times/+page.svelte | 0 .../routes/(app)/times/clients/+page.svelte | 4 +- .../(app)/times/clients/[id]/+page.svelte | 2 +- .../src/routes/(app)/times/clock/+page.svelte | 4 +- .../(app)/times/clock/alarms/+page.svelte | 4 +- .../routes/(app)/times/entries/+page.svelte | 0 .../routes/(app)/times/projects/+page.svelte | 4 +- .../(app)/times/projects/[id]/+page.svelte | 2 +- .../routes/(app)/times/reports/+page.svelte | 0 .../routes/(app)/times/templates/+page.svelte | 2 +- .../web/src/routes/(app)/todo/+layout.svelte | 0 .../web/src/routes/(app)/todo/+page.svelte | 8 +- .../routes/(app)/todo/settings/+page.svelte | 4 +- .../web/src/routes/(app)/uload/+page.svelte | 4 +- .../(app)/uload/analytics/[id]/+page.svelte | 4 +- .../src/routes/(app)/uload/links/+page.svelte | 4 +- .../routes/(app)/uload/settings/+page.svelte | 4 +- .../src/routes/(app)/uload/tags/+page.svelte | 2 +- .../src/routes/(app)/zitare/+layout.svelte | 2 +- .../web/src/routes/(app)/zitare/+page.svelte | 4 +- .../(app)/zitare/categories/+page.svelte | 2 +- .../zitare/category/[category]/+page.svelte | 2 +- .../(app)/zitare/favorites/+page.svelte | 4 +- .../routes/(app)/zitare/lists/+page.svelte | 4 +- .../(app)/zitare/lists/[id]/+page.svelte | 2 +- .../apps/web/src/routes/(auth)/+layout.svelte | 2 +- .../(auth)/forgot-password/+page.svelte | 8 +- .../web/src/routes/(auth)/login/+page.svelte | 10 +- .../src/routes/(auth)/register/+page.svelte | 12 +- .../routes/(auth)/reset-password/+page.svelte | 2 +- .../apps/web/src/routes/+error.svelte | 0 .../apps/web/src/routes/+layout.server.ts | 2 +- .../apps/web/src/routes/+layout.svelte | 0 .../apps/web/src/routes/+layout.ts | 4 +- .../web/src/routes/api/example/+server.ts | 0 .../web/src/routes/auth/callback/+page.svelte | 2 +- .../routes/auth/reset-password/+page.svelte | 0 .../src/routes/email-verified/+page.svelte | 8 +- .../apps/web/src/routes/g/[code]/+page.svelte | 2 +- .../apps/web/src/routes/health/+server.ts | 2 +- .../apps/web/src/routes/offline/+page.svelte | 4 +- .../apps/web/src/routes/offline/+page.ts | 0 .../web/src/routes/status/+page.server.ts | 2 +- .../apps/web/src/routes/status/+page.svelte | 4 +- .../routes/verification-failed/+page.svelte | 6 +- .../apps/web/src/routes/welcome/+page.svelte | 0 .../apps/web/static/apple-touch-icon.png | Bin .../apps/web/static/favicon.png | 0 .../maerchenzauber-logo-gradient.png | Bin .../app-icons/manacore-logo-gradient.png | Bin .../app-icons/manadeck-logo-gradient.png | Bin .../images/app-icons/memoro-logo-gradient.png | Bin .../app-icons/moodlit-logo-gradient.png | Bin .../apps/web/static/pwa-192x192.png | Bin .../apps/web/static/pwa-512x512.png | Bin .../apps/web/svelte.config.js | 0 .../apps/web/tailwind.config.js | 4 +- .../{manacore => mana}/apps/web/tsconfig.json | 0 .../apps/web/vite.config.ts | 10 +- apps/manacore/apps/web/package.json | 83 - .../lib/components/OfflineIndicator.svelte | 21 +- .../src/lib/components/PwaUpdatePrompt.svelte | 32 +- .../apps/web/src/lib/data/database.ts | 601 -- .../web/src/lib/data/time-blocks/index.ts | 6 - .../web/src/lib/data/time-blocks/queries.ts | 289 - .../web/src/lib/data/time-blocks/types.ts | 110 - .../calendar/components/EventCard.svelte | 342 - .../web/src/lib/modules/calendar/types.ts | 108 - .../apps/web/src/lib/modules/todo/types.ts | 124 - .../apps/web/src/lib/stores/navigation.ts | 3 - .../apps/web/src/lib/stores/network.svelte.ts | 11 +- .../src/routes/(app)/calendar/+layout.svelte | 22 - .../src/routes/(app)/feedback/+page.svelte | 7 - apps/manavoxel/apps/web/package.json | 30 +- .../apps/web/src/lib/data/local-store.ts | 2 +- apps/manavoxel/apps/web/vite.config.ts | 4 +- apps/matrix/apps/web/package.json | 26 +- apps/matrix/apps/web/src/hooks.client.ts | 2 +- .../src/lib/components/bots/BotCard.svelte | 2 +- .../src/lib/components/call/CallView.svelte | 2 +- .../components/call/IncomingCallDialog.svelte | 2 +- .../components/chat/CreateRoomDialog.svelte | 2 +- .../components/chat/DropZoneOverlay.svelte | 2 +- .../chat/ForwardMessageDialog.svelte | 2 +- .../src/lib/components/chat/Message.svelte | 2 +- .../lib/components/chat/MessageInput.svelte | 4 +- .../src/lib/components/chat/RoomHeader.svelte | 2 +- .../src/lib/components/chat/RoomItem.svelte | 2 +- .../src/lib/components/chat/RoomList.svelte | 2 +- .../components/chat/RoomSettingsPanel.svelte | 2 +- .../lib/components/chat/SearchDialog.svelte | 2 +- .../src/lib/components/chat/Timeline.svelte | 2 +- .../components/chat/TypingIndicator.svelte | 2 +- .../crypto/EmojiVerification.svelte | 2 +- .../crypto/RecoveryKeyDialog.svelte | 2 +- .../crypto/VerificationDialog.svelte | 2 +- .../apps/web/src/lib/content/help/index.ts | 16 +- apps/matrix/apps/web/src/lib/data/bots.ts | 2 +- .../web/src/lib/stores/navigation.svelte.ts | 2 +- .../apps/web/src/lib/stores/tags.svelte.ts | 10 +- apps/matrix/apps/web/src/lib/stores/theme.ts | 2 +- .../web/src/lib/stores/userSettings.svelte.ts | 4 +- .../apps/web/src/routes/(app)/+layout.svelte | 28 +- .../web/src/routes/(app)/bots/+page.svelte | 2 +- .../web/src/routes/(app)/chat/+page.svelte | 2 +- .../routes/(app)/chat/[roomId]/+page.svelte | 2 +- .../src/routes/(app)/feedback/+page.svelte | 8 +- .../web/src/routes/(app)/help/+page.svelte | 2 +- .../src/routes/(app)/settings/+page.svelte | 2 +- .../web/src/routes/(app)/tags/+page.svelte | 2 +- .../web/src/routes/(auth)/login/+page.svelte | 4 +- apps/matrix/apps/web/src/routes/+error.svelte | 2 +- .../matrix/apps/web/src/routes/+layout.svelte | 2 +- apps/matrix/apps/web/src/routes/+page.svelte | 2 +- .../apps/web/src/routes/offline/+page.svelte | 2 +- apps/matrix/apps/web/vite.config.ts | 44 +- .../apps/landing/src/components/Umami.astro | 2 +- apps/memoro/apps/mobile/.env.example | 2 +- .../analytics/services/umamiService.ts | 2 +- apps/memoro/apps/server/openapi.yaml | 2 +- apps/memoro/apps/server/package.json | 2 +- apps/memoro/apps/server/src/index.ts | 2 +- .../apps/server/src/lib/credits.test.ts | 2 +- apps/memoro/apps/server/src/lib/credits.ts | 2 +- apps/memoro/apps/server/src/lib/notify.ts | 4 +- .../apps/server/src/routes/cleanup.test.ts | 2 +- .../apps/server/src/routes/credits.test.ts | 2 +- apps/memoro/apps/server/src/routes/credits.ts | 4 +- .../apps/server/src/routes/health.test.ts | 2 +- .../apps/server/src/routes/internal.test.ts | 2 +- apps/memoro/apps/server/src/routes/invites.ts | 2 +- .../apps/server/src/routes/meetings.test.ts | 4 +- .../memoro/apps/server/src/routes/meetings.ts | 2 +- .../apps/server/src/routes/memos.test.ts | 8 +- apps/memoro/apps/server/src/routes/memos.ts | 2 +- .../apps/server/src/routes/settings.test.ts | 2 +- .../memoro/apps/server/src/routes/settings.ts | 2 +- .../apps/server/src/routes/spaces.test.ts | 2 +- apps/memoro/apps/server/src/routes/spaces.ts | 2 +- .../apps/server/src/services/cleanup.ts | 8 +- apps/moodlit/apps/landing/package.json | 2 +- apps/moodlit/package.json | 2 +- apps/mukke/CLAUDE.md | 4 +- apps/mukke/apps/landing/package.json | 2 +- .../apps/landing/src/layouts/Layout.astro | 2 +- apps/mukke/apps/landing/src/pages/index.astro | 2 +- apps/news/apps/landing/astro.config.mjs | 2 +- apps/news/apps/landing/package.json | 2 +- apps/news/apps/landing/src/pages/index.astro | 12 +- apps/news/package.json | 2 +- apps/nutriphi/CLAUDE.md | 4 +- apps/nutriphi/apps/landing/package.json | 2 +- .../apps/landing/src/layouts/Layout.astro | 2 +- .../apps/landing/src/pages/index.astro | 6 +- apps/photos/CLAUDE.md | 6 +- apps/photos/package.json | 2 +- apps/picture/CLAUDE.md | 8 +- apps/picture/MIGRATION_PLAN.md | 2 +- apps/picture/apps/landing/package.json | 2 +- .../apps/landing/src/layouts/Layout.astro | 2 +- .../apps/landing/src/pages/index.astro | 4 +- .../apps/mobile/contexts/AuthContext.tsx | 4 +- apps/picture/apps/mobile/eslint.config.mjs | 2 +- apps/picture/apps/mobile/package.json | 4 +- apps/picture/apps/mobile/utils/logger.ts | 4 +- apps/planta/CLAUDE.md | 4 +- apps/presi/CLAUDE.md | 4 +- apps/presi/apps/landing/package.json | 2 +- .../apps/landing/src/components/Footer.astro | 6 +- .../landing/src/components/Navigation.astro | 4 +- .../apps/landing/src/layouts/Layout.astro | 2 +- apps/presi/apps/landing/src/pages/index.astro | 10 +- apps/questions/CLAUDE.md | 2 +- apps/storage/CLAUDE.md | 4 +- apps/times/packages/shared/package.json | 2 +- apps/todo/.env.example | 4 +- apps/todo/CLAUDE.md | 6 +- apps/todo/apps/landing/package.json | 2 +- .../apps/landing/src/layouts/Layout.astro | 2 +- apps/todo/apps/landing/src/pages/index.astro | 4 +- apps/todo/docker-compose.prod.yml | 6 +- apps/todo/package.json | 2 +- apps/todo/packages/shared/package.json | 2 +- apps/todo/packages/shared/src/types/task.ts | 2 +- apps/traces/CLAUDE.md | 6 +- apps/uload/apps/landing/package.json | 2 +- apps/uload/apps/landing/src/pages/index.astro | 10 +- apps/uload/apps/server/package.json | 2 +- apps/uload/apps/server/src/config.ts | 2 +- apps/uload/apps/server/src/index.ts | 2 +- apps/uload/apps/server/src/routes/stripe.ts | 2 +- apps/uload/package.json | 2 +- .../packages/uload-database/package.json | 2 +- cloudflared-config.yml | 2 +- docker-compose.dev.yml | 38 +- docker-compose.macmini.yml | 64 +- docker/Dockerfile.sveltekit-base | 4 +- docker/alert-notifier/main.py | 2 +- docker/alertmanager/alertmanager.yml | 2 +- .../dashboards/application-details.json | 8 +- docker/grafana/dashboards/auth-service.json | 48 +- docker/grafana/dashboards/backends.json | 4 +- .../grafana/dashboards/business-metrics.json | 2 +- .../grafana/dashboards/database-details.json | 2 +- .../grafana/dashboards/master-overview.json | 10 +- .../grafana/dashboards/system-overview.json | 4 +- docker/grafana/dashboards/uptime.json | 2 +- .../grafana/dashboards/user-statistics.json | 2 +- .../provisioning/dashboards/default.yml | 6 +- .../provisioning/datasources/prometheus.yml | 4 +- docker/init-db/01-create-databases.sql | 8 +- docker/init-db/02-create-schemas.sh | 2 +- docker/matrix/config/homeserver.yaml | 6 +- docker/matrix/element-config.json | 2 +- docker/matrix/element/config.json | 2 +- docker/matrix/homeserver.yaml | 6 +- docker/prometheus/alerts.yml | 28 +- docker/prometheus/prometheus.yml | 6 +- docs/ANALYTICS.md | 6 +- docs/APP_ONBOARDING.md | 4 +- docs/ARCHITECTURE_MIGRATION_REPORT.md | 8 +- docs/DATABASE_MIGRATIONS.md | 4 +- docs/DEVLOG_GUIDELINES.md | 2 +- docs/DISCORD_NOTIFICATIONS_SETUP.md | 6 +- docs/ENVIRONMENT_VARIABLES.md | 10 +- docs/ERROR_TRACKING.md | 2 +- docs/EXTERNAL_SERVICES.md | 6 +- docs/GIT_WORKFLOW.md | 6 +- docs/LOCAL_LLM_MODELS.md | 2 +- docs/MAC_MINI_SERVER.md | 6 +- docs/MAIL_SERVER.md | 6 +- docs/MANA_VALUES.md | 10 +- docs/MATRIX_BOT_ARCHITECTURE.md | 16 +- docs/MATRIX_SELF_HOSTING.md | 6 +- docs/MICROSERVICES_API_OVERVIEW.md | 4 +- docs/MOBILE_DESKTOP_APP_STRATEGY.md | 6 +- docs/MONITORING.md | 6 +- docs/PLAN_TAURI_V2.md | 34 +- docs/PORT_SCHEMA.md | 2 +- docs/PROD_READINESS_SCORE.md | 4 +- docs/PROJECT_OVERVIEW.md | 2 +- docs/SEPA_ACTIVATION_CHECKLIST.md | 4 +- docs/SETUP_TEMPLATES.md | 24 +- docs/SHARED_PACKAGES_ROADMAP.md | 6 +- docs/TECHNOLOGY_AUDIT_2026_03.md | 2 +- docs/USER_SETTINGS.md | 4 +- docs/VERSIONING.md | 2 +- docs/architecture/WORKSPACE_ORCHESTRATOR.md | 6 +- docs/central-services/SPLIT-SCREEN.md | 2 +- .../decisions/001-monitoring-stack-upgrade.md | 8 +- .../002-cluster-federation-architecture.md | 2 +- .../003-infrastructure-audit-improvements.md | 2 +- docs/future/MAIL_SERVER_DEDICATED.md | 2 +- eslint.config.mjs | 6 +- games/arcade/apps/server/package.json | 2 +- games/arcade/apps/server/src/index.ts | 2 +- games/arcade/apps/web/package.json | 38 +- games/arcade/apps/web/src/hooks.client.ts | 2 +- games/arcade/apps/web/src/hooks.server.ts | 10 +- .../skeletons/AppLoadingSkeleton.svelte | 2 +- .../apps/web/src/lib/data/local-store.ts | 2 +- games/arcade/apps/web/src/lib/data/queries.ts | 2 +- .../apps/web/src/lib/services/feedback.ts | 2 +- .../src/lib/stores/app-onboarding.svelte.ts | 2 +- .../apps/web/src/lib/stores/auth.svelte.ts | 2 +- .../apps/web/src/lib/stores/navigation.ts | 2 +- .../apps/web/src/lib/stores/theme.svelte.ts | 2 +- .../src/lib/stores/user-settings.svelte.ts | 6 +- .../apps/web/src/routes/(app)/+layout.svelte | 22 +- .../src/routes/(app)/feedback/+page.svelte | 2 +- .../web/src/routes/(app)/profile/+page.svelte | 2 +- .../web/src/routes/(app)/themes/+page.svelte | 4 +- .../(auth)/forgot-password/+page.svelte | 2 +- .../web/src/routes/(auth)/login/+page.svelte | 2 +- .../src/routes/(auth)/register/+page.svelte | 2 +- .../arcade/apps/web/src/routes/+layout.svelte | 2 +- games/arcade/apps/web/vite.config.ts | 4 +- mac-mini-setup.sh | 4 +- package.json | 38 +- packages/cards-database/drizzle.config.ts | 2 +- packages/cards-database/package.json | 2 +- packages/cards-database/src/index.ts | 2 +- packages/credits/package.json | 2 +- packages/credits/src/index.ts | 10 +- packages/credits/src/operations.ts | 2 +- packages/eslint-config/index.js | 10 +- packages/eslint-config/package.json | 4 +- packages/feedback/package.json | 2 +- .../feedback/src/createFeedbackService.ts | 2 +- packages/feedback/src/index.ts | 2 +- packages/help/package.json | 2 +- packages/help/src/index.ts | 2 +- packages/help/src/mana-faq.ts | 12 +- packages/help/src/privacy-faq.ts | 12 +- packages/local-llm/package.json | 2 +- packages/local-llm/src/svelte.svelte.ts | 2 +- packages/local-llm/src/types.ts | 2 +- packages/local-store/package.json | 2 +- packages/local-store/src/database.ts | 2 +- packages/local-store/src/store.ts | 4 +- .../local-store/src/svelte/reactive.svelte.ts | 2 +- .../src/svelte/useSyncStatus.svelte.ts | 2 +- packages/notify-client/package.json | 2 +- packages/qr-export/package.json | 6 +- packages/qr-export/src/index.ts | 4 +- packages/qr-export/src/svelte/index.ts | 4 +- packages/qr-export/src/wallpaper.ts | 8 +- packages/shared-api-client/package.json | 4 +- packages/shared-api-client/src/client.ts | 4 +- packages/shared-api-client/src/index.ts | 6 +- packages/shared-auth-ui/package.json | 8 +- .../src/components/AuthGate.svelte | 2 +- .../src/components/AuthGateModal.svelte | 2 +- .../src/components/ChangePassword.svelte | 2 +- .../components/GuestRegistrationNudge.svelte | 2 +- .../src/components/GuestWelcomeModal.svelte | 10 +- .../components/SessionExpiredBanner.svelte | 4 +- packages/shared-auth-ui/src/index.ts | 2 +- .../src/pages/ForgotPasswordPage.svelte | 2 +- .../shared-auth-ui/src/pages/LoginPage.svelte | 6 +- .../src/pages/RegisterPage.svelte | 2 +- .../src/stores/createAuthStore.svelte.ts | 2 +- .../src/stores/createManaAuthStore.svelte.ts | 14 +- packages/shared-auth/package.json | 6 +- packages/shared-auth/src/adapters/device.ts | 4 +- .../shared-auth/src/clients/contactsClient.ts | 2 +- packages/shared-auth/src/index.ts | 2 +- packages/shared-branding/README.md | 2 +- packages/shared-branding/package.json | 2 +- packages/shared-branding/src/app-icons.ts | 6 +- packages/shared-branding/src/config.ts | 6 +- packages/shared-branding/src/index.ts | 4 +- .../src/logos/ManaCoreLogo.svelte | 2 +- packages/shared-branding/src/logos/index.ts | 2 +- packages/shared-branding/src/mana-apps.ts | 8 +- packages/shared-branding/src/types.ts | 2 +- packages/shared-config/package.json | 2 +- packages/shared-drizzle-config/package.json | 2 +- packages/shared-drizzle-config/src/index.ts | 4 +- packages/shared-error-tracking/package.json | 4 +- packages/shared-error-tracking/src/browser.ts | 4 +- packages/shared-error-tracking/src/index.ts | 4 +- packages/shared-error-tracking/src/nestjs.ts | 2 +- packages/shared-errors/package.json | 2 +- packages/shared-errors/src/index.ts | 6 +- .../src/nestjs/app-exception.filter.ts | 2 +- packages/shared-go/authutil/claims.go | 6 +- .../shared-go/authutil/validator_remote.go | 6 +- packages/shared-go/envutil/envutil.go | 2 +- packages/shared-go/httputil/httputil.go | 2 +- packages/shared-hono/package.json | 4 +- packages/shared-hono/src/admin.ts | 4 +- packages/shared-hono/src/auth.ts | 14 +- packages/shared-hono/src/credits.ts | 4 +- packages/shared-hono/src/db.ts | 4 +- packages/shared-hono/src/error.ts | 2 +- packages/shared-hono/src/health.ts | 2 +- packages/shared-hono/src/index.ts | 12 +- packages/shared-hono/src/logger.ts | 6 +- packages/shared-hono/src/rate-limit.ts | 2 +- packages/shared-hono/src/types.ts | 2 +- packages/shared-i18n/package.json | 2 +- packages/shared-icons/package.json | 2 +- packages/shared-icons/src/index.ts | 4 +- packages/shared-landing-ui/package.json | 6 +- packages/shared-landing-ui/src/index.ts | 56 +- .../src/sections/ManaPricingSection.astro | 4 +- packages/shared-links/package.json | 6 +- packages/shared-links/src/deep-links.ts | 4 +- packages/shared-links/src/queries.svelte.ts | 2 +- packages/shared-links/src/resolvers.ts | 4 +- packages/shared-links/src/store.ts | 4 +- packages/shared-links/src/types.ts | 4 +- .../shared-links/src/ui/ManaLinkBadge.svelte | 4 +- .../shared-links/src/ui/ManaLinkPicker.svelte | 4 +- packages/shared-llm/package.json | 2 +- packages/shared-llm/src/standalone.ts | 2 +- packages/shared-logger/package.json | 4 +- packages/shared-logger/src/index.ts | 4 +- packages/shared-pwa/package.json | 2 +- packages/shared-pwa/src/config.ts | 2 +- packages/shared-pwa/src/defaults.ts | 2 +- packages/shared-pwa/src/index.ts | 6 +- packages/shared-pwa/src/types.ts | 2 +- .../shared-python/manacore_auth/__init__.py | 6 +- packages/shared-python/manacore_auth/auth.py | 6 +- .../manacore_auth/external_auth.py | 12 +- packages/shared-splitscreen/package.json | 2 +- packages/shared-splitscreen/src/index.ts | 4 +- .../src/utils/local-storage.ts | 4 +- packages/shared-storage/README.md | 2 +- packages/shared-storage/package.json | 2 +- packages/shared-storage/src/factory.ts | 2 +- packages/shared-storage/src/index.ts | 2 +- packages/shared-storage/src/metrics.ts | 6 +- packages/shared-storage/src/types.ts | 2 +- packages/shared-stores/package.json | 8 +- packages/shared-stores/src/archive.ts | 2 +- packages/shared-stores/src/data-export.ts | 2 +- .../shared-stores/src/guest-mode.svelte.ts | 2 +- packages/shared-stores/src/index.ts | 2 +- .../shared-stores/src/keyboard-shortcuts.ts | 2 +- packages/shared-stores/src/notifications.ts | 2 +- .../shared-stores/src/reminder-scheduler.ts | 2 +- packages/shared-stores/src/tag-links.ts | 2 +- .../shared-stores/src/tags-local.svelte.ts | 10 +- packages/shared-stores/src/tags.svelte.ts | 12 +- packages/shared-stores/src/toggle-field.ts | 2 +- packages/shared-stores/src/view.svelte.ts | 2 +- packages/shared-tags/package.json | 4 +- packages/shared-tags/src/client.ts | 4 +- packages/shared-tags/src/types.ts | 2 +- packages/shared-tailwind/package.json | 2 +- packages/shared-tailwind/src/colors.js | 4 +- packages/shared-tailwind/src/index.js | 6 +- packages/shared-tailwind/src/preset.js | 6 +- packages/shared-theme-ui/package.json | 6 +- .../src/ThemeModeSelector.svelte | 4 +- .../shared-theme-ui/src/ThemeSelector.svelte | 4 +- .../shared-theme-ui/src/ThemeToggle.svelte | 4 +- .../src/components/A11yQuickToggles.svelte | 2 +- .../src/components/A11ySettings.svelte | 4 +- .../src/components/ThemeCard.svelte | 6 +- .../src/components/ThemeColorPreview.svelte | 4 +- .../src/components/ThemeGrid.svelte | 4 +- .../src/pages/ThemePage.svelte | 4 +- packages/shared-theme-ui/src/types.ts | 2 +- packages/shared-theme/README.md | 2 +- packages/shared-theme/package.json | 2 +- .../shared-theme/src/a11y-store.svelte.ts | 2 +- packages/shared-theme/src/app-routes.ts | 4 +- packages/shared-theme/src/index.ts | 2 +- packages/shared-theme/src/store.svelte.ts | 6 +- packages/shared-theme/src/types.ts | 2 +- .../src/user-settings-store.svelte.ts | 8 +- packages/shared-tsconfig/package.json | 4 +- packages/shared-types/package.json | 2 +- packages/shared-ui/package.json | 10 +- .../shared-ui/src/atoms/DynamicIcon.svelte | 4 +- .../src/bottom-stack/MinimizedTabs.svelte | 2 +- .../src/bottom-stack/NotificationBar.svelte | 2 +- .../src/command-bar/CommandBar.svelte | 2 +- .../src/components/ImmersiveModeToggle.svelte | 2 +- .../src/components/SyncIndicator.svelte | 2 +- packages/shared-ui/src/dnd/ActionZone.svelte | 2 +- packages/shared-ui/src/dnd/README.md | 2 +- packages/shared-ui/src/dnd/types.ts | 2 +- packages/shared-ui/src/help/HelpModal.svelte | 2 +- .../src/help/KeyboardShortcutsPanel.svelte | 2 +- .../shared-ui/src/help/SyntaxHelpPanel.svelte | 2 +- .../src/molecules/ColorPicker.svelte | 2 +- .../src/molecules/ConfirmationPopover.svelte | 2 +- .../src/molecules/FavoriteButton.svelte | 2 +- .../src/molecules/IconPicker.constants.ts | 2 +- .../shared-ui/src/molecules/IconPicker.svelte | 4 +- .../molecules/KeyboardShortcutsPanel.svelte | 2 +- .../shared-ui/src/molecules/PageHeader.svelte | 2 +- .../src/molecules/ReminderPicker.svelte | 2 +- .../shared-ui/src/molecules/Select.svelte | 2 +- .../molecules/contacts/ContactAvatar.svelte | 2 +- .../molecules/contacts/ContactBadge.svelte | 4 +- .../molecules/contacts/ContactSelector.svelte | 4 +- .../src/molecules/feedback/EmptyState.svelte | 2 +- .../src/molecules/media/AudioPlayer.svelte | 2 +- .../src/molecules/tags/TagBadge.svelte | 2 +- .../src/molecules/tags/TagList.svelte | 2 +- .../src/molecules/tags/TagSelector.svelte | 2 +- .../shared-ui/src/molecules/tags/constants.ts | 2 +- .../shared-ui/src/navigation/Navbar.svelte | 2 +- .../src/navigation/PillDropdown.svelte | 2 +- .../src/navigation/PillNavigation.svelte | 2 +- .../src/navigation/PillTabGroup.svelte | 2 +- .../src/navigation/PillTagSelector.svelte | 2 +- .../navigation/PillTimeRangeSelector.svelte | 2 +- .../src/navigation/PillViewSwitcher.svelte | 2 +- .../shared-ui/src/navigation/Sidebar.svelte | 2 +- .../src/navigation/SidebarSection.svelte | 2 +- .../shared-ui/src/navigation/TagStrip.svelte | 2 +- .../ExpandableToolbar.svelte | 2 +- .../create-app-onboarding.svelte.ts | 2 +- packages/shared-ui/src/onboarding/types.ts | 2 +- .../src/organisms/ConfirmationModal.svelte | 2 +- packages/shared-ui/src/organisms/Modal.svelte | 2 +- .../organisms/network/NetworkControls.svelte | 2 +- packages/shared-ui/src/pages/AppsPage.svelte | 2 +- .../shared-ui/src/pages/OfflinePage.svelte | 2 +- .../shared-ui/src/quick-input/InputBar.svelte | 2 +- .../quick-input/InputBarContextMenu.svelte | 2 +- .../src/settings/GlobalSettingsSection.svelte | 6 +- .../src/settings/NavVisibilitySettings.svelte | 4 +- .../shared-ui/src/settings/SettingsRow.svelte | 2 +- .../src/settings/SettingsTimeInput.svelte | 2 +- .../shared-ui/src/toast/ToastContainer.svelte | 2 +- .../shared-ui/src/toast/globalErrorHandler.ts | 2 +- packages/shared-ui/src/toast/toast.svelte.ts | 2 +- packages/shared-uload/package.json | 6 +- packages/shared-uload/src/ShareModal.svelte | 2 +- packages/shared-uload/src/create-link.ts | 4 +- packages/shared-uload/src/types.ts | 6 +- packages/shared-utils/package.json | 2 +- packages/shared-utils/src/analytics-server.ts | 2 +- packages/shared-utils/src/analytics.ts | 42 +- packages/shared-utils/src/cache.ts | 2 +- packages/shared-utils/src/security-headers.ts | 2 +- packages/shared-utils/src/web-vitals.ts | 2 +- packages/shared-vite-config/package.json | 2 +- packages/shared-vite-config/src/index.ts | 56 +- packages/spiral-db/package.json | 6 +- packages/spiral-db/src/index.ts | 2 +- packages/spiral-db/src/schema.ts | 2 +- packages/spiral-db/src/wallpaper.ts | 10 +- packages/subscriptions/package.json | 2 +- packages/subscriptions/src/index.ts | 2 +- packages/test-config/jest.config.backend.js | 4 +- packages/test-config/jest.config.mobile.js | 4 +- packages/test-config/package.json | 2 +- .../test-config/playwright.config.base.ts | 2 +- packages/test-config/vitest.config.base.ts | 2 +- packages/test-config/vitest.config.svelte.ts | 2 +- packages/wallpaper-generator/package.json | 2 +- packages/wallpaper-generator/src/index.ts | 6 +- pnpm-lock.yaml | 5484 ++--------------- scripts/audit-workspace-deps.mjs | 10 +- scripts/backup-monitoring.sh | 8 +- scripts/check-status.sh | 2 +- scripts/create-gift-codes.mjs | 4 +- scripts/ecosystem-audit.mjs | 40 +- scripts/generate-env.mjs | 102 +- scripts/generate-status-page.sh | 12 +- scripts/lighthouse-audit.sh | 4 +- scripts/mac-mini/README.md | 2 +- scripts/mac-mini/backup-databases.sh | 6 +- scripts/mac-mini/check-disk-space.sh | 8 +- scripts/mac-mini/configure-ollama.sh | 4 +- scripts/mac-mini/deploy-v2.sh | 6 +- scripts/mac-mini/deploy.sh | 6 +- scripts/mac-mini/ensure-containers-running.sh | 12 +- scripts/mac-mini/health-check.sh | 18 +- scripts/mac-mini/migrate-to-colima.sh | 4 +- .../mac-mini/move-colima-to-external-ssd.sh | 2 +- scripts/mac-mini/restart.sh | 4 +- scripts/mac-mini/setup-autostart.sh | 32 +- scripts/mac-mini/setup-cloudflared-service.sh | 2 +- scripts/mac-mini/setup-forgejo.sh | 4 +- scripts/mac-mini/setup-image-gen.sh | 10 +- scripts/mac-mini/setup-matrix.sh | 22 +- scripts/mac-mini/setup-notifications.sh | 16 +- scripts/mac-mini/setup-stt.sh | 14 +- scripts/mac-mini/setup-tts.sh | 10 +- scripts/mac-mini/setup-umami-db.sh | 6 +- scripts/mac-mini/startup.sh | 8 +- scripts/mac-mini/status.sh | 14 +- scripts/mac-mini/stop.sh | 4 +- scripts/mac-mini/weekly-report.sh | 10 +- scripts/run-tests-with-coverage.sh | 4 +- scripts/setup-databases.sh | 6 +- scripts/test-data/cleanup-test-data.sh | 10 +- scripts/test-data/seed-test-data.sh | 2 +- scripts/test-reporting/README.md | 2 +- scripts/validate-dockerfiles.mjs | 2 +- scripts/validate-monorepo.mjs | 2 +- services/mana-analytics/CLAUDE.md | 2 +- services/mana-analytics/drizzle.config.ts | 2 +- services/mana-analytics/src/config.ts | 6 +- services/mana-analytics/src/index.ts | 2 +- .../mana-analytics/src/middleware/jwt-auth.ts | 4 +- services/mana-api-gateway/CLAUDE.md | 2 +- services/mana-api-gateway/Dockerfile | 4 +- services/mana-api-gateway/cmd/server/main.go | 12 +- .../internal/config/config.go | 6 +- .../internal/handler/apikeys.go | 6 +- .../internal/handler/health.go | 2 +- .../internal/middleware/apikey.go | 2 +- .../internal/middleware/jwt.go | 2 +- .../internal/middleware/ratelimit.go | 2 +- .../mana-api-gateway/internal/proxy/proxy.go | 4 +- services/mana-auth/CLAUDE.md | 4 +- services/mana-auth/drizzle.config.ts | 2 +- .../mana-auth/src/auth/better-auth.config.ts | 4 +- services/mana-auth/src/config.ts | 6 +- services/mana-auth/src/email/send.ts | 14 +- services/mana-auth/src/index.ts | 6 +- services/mana-auth/src/middleware/jwt-auth.ts | 4 +- services/mana-auth/src/routes/auth.ts | 2 +- services/mana-auth/src/services/user-data.ts | 2 +- services/mana-crawler/Dockerfile | 4 +- services/mana-crawler/cmd/server/main.go | 10 +- .../mana-crawler/internal/config/config.go | 6 +- .../mana-crawler/internal/crawler/crawler.go | 4 +- .../mana-crawler/internal/handler/handler.go | 4 +- services/mana-credits/CLAUDE.md | 6 +- services/mana-credits/drizzle.config.ts | 2 +- services/mana-credits/src/config.ts | 6 +- .../mana-credits/src/db/schema/credits.ts | 2 +- services/mana-credits/src/db/schema/gifts.ts | 2 +- services/mana-credits/src/db/schema/guilds.ts | 2 +- services/mana-credits/src/index.ts | 2 +- .../mana-credits/src/middleware/jwt-auth.ts | 4 +- services/mana-credits/src/services/credits.ts | 2 +- .../mana-credits/src/services/gift-code.ts | 2 +- .../mana-credits/src/services/guild-pool.ts | 6 +- services/mana-landing-builder/.env.example | 2 +- services/mana-landing-builder/CLAUDE.md | 8 +- services/mana-landing-builder/package.json | 2 +- .../src/builder/builder.service.ts | 2 +- .../src/config/configuration.ts | 2 +- .../template/package.json | 2 +- .../template/src/pages/index.astro | 10 +- services/mana-matrix-bot/CLAUDE.md | 2 +- services/mana-matrix-bot/cmd/server/main.go | 46 +- .../mana-matrix-bot/internal/config/config.go | 4 +- .../internal/plugins/calendar/calendar.go | 4 +- .../internal/plugins/cards/cards.go | 4 +- .../internal/plugins/chat/chat.go | 4 +- .../internal/plugins/clock/clock.go | 4 +- .../internal/plugins/contacts/contacts.go | 4 +- .../internal/plugins/gateway/gateway.go | 4 +- .../internal/plugins/nutriphi/nutriphi.go | 4 +- .../internal/plugins/ollama/ollama.go | 2 +- .../internal/plugins/onboarding/onboarding.go | 4 +- .../internal/plugins/picture/picture.go | 4 +- .../internal/plugins/planta/planta.go | 4 +- .../internal/plugins/presi/presi.go | 4 +- .../internal/plugins/projectdoc/projectdoc.go | 4 +- .../internal/plugins/questions/questions.go | 4 +- .../internal/plugins/skilltree/skilltree.go | 4 +- .../internal/plugins/stats/stats.go | 4 +- .../internal/plugins/storage/storage.go | 4 +- .../internal/plugins/stt/stt.go | 4 +- .../internal/plugins/todo/todo.go | 4 +- .../internal/plugins/tts/tts.go | 4 +- .../internal/plugins/zitare/zitare.go | 4 +- .../internal/runtime/runtime.go | 10 +- .../mana-matrix-bot/internal/services/auth.go | 2 +- .../internal/services/credit.go | 2 +- services/mana-media/CLAUDE.md | 2 +- services/mana-media/apps/api/Dockerfile | 2 +- .../mana-media/apps/api/drizzle.config.ts | 2 +- services/mana-media/apps/api/package.json | 2 +- services/mana-media/drizzle.config.ts | 2 +- .../mana-media/packages/client/package.json | 2 +- services/mana-notify/CLAUDE.md | 4 +- services/mana-notify/Dockerfile | 4 +- services/mana-notify/cmd/server/main.go | 18 +- services/mana-notify/internal/auth/auth.go | 4 +- .../mana-notify/internal/channel/email.go | 2 +- .../mana-notify/internal/channel/matrix.go | 2 +- services/mana-notify/internal/channel/push.go | 2 +- .../mana-notify/internal/config/config.go | 10 +- .../mana-notify/internal/handler/devices.go | 6 +- .../mana-notify/internal/handler/health.go | 4 +- .../internal/handler/notifications.go | 8 +- .../internal/handler/preferences.go | 6 +- .../mana-notify/internal/handler/templates.go | 6 +- services/mana-notify/internal/queue/worker.go | 6 +- .../mana-notify/internal/template/engine.go | 10 +- services/mana-notify/package.json | 2 +- services/mana-search/Dockerfile | 4 +- services/mana-search/cmd/server/main.go | 12 +- services/mana-search/internal/cache/cache.go | 4 +- .../mana-search/internal/config/config.go | 2 +- .../mana-search/internal/extract/extractor.go | 2 +- .../mana-search/internal/handler/extract.go | 10 +- .../mana-search/internal/handler/health.go | 6 +- .../internal/handler/helpers_test.go | 6 +- .../mana-search/internal/handler/search.go | 10 +- .../mana-search/internal/search/searxng.go | 2 +- services/mana-search/package.json | 2 +- services/mana-search/searxng/settings.yml | 2 +- services/mana-stt/README.md | 2 +- services/mana-stt/app/__init__.py | 2 +- services/mana-stt/app/auth.py | 8 +- services/mana-stt/app/external_auth.py | 4 +- services/mana-stt/app/main.py | 6 +- services/mana-stt/grafana-dashboard.json | 6 +- services/mana-stt/install-service.sh | 2 +- services/mana-stt/install-services.sh | 12 +- services/mana-stt/setup.sh | 4 +- services/mana-subscriptions/CLAUDE.md | 4 +- services/mana-subscriptions/drizzle.config.ts | 2 +- services/mana-subscriptions/src/config.ts | 6 +- .../src/db/schema/subscriptions.ts | 2 +- services/mana-subscriptions/src/index.ts | 2 +- .../src/middleware/jwt-auth.ts | 4 +- services/mana-sync/CLAUDE.md | 2 +- services/mana-sync/cmd/server/main.go | 10 +- services/mana-sync/internal/auth/jwt.go | 2 +- services/mana-sync/internal/config/config.go | 4 +- services/mana-sync/internal/sync/handler.go | 6 +- services/mana-sync/internal/ws/hub.go | 2 +- services/mana-sync/package.json | 2 +- services/mana-tts/app/auth.py | 8 +- services/mana-tts/app/external_auth.py | 4 +- services/mana-tts/install-service.sh | 2 +- services/mana-user/CLAUDE.md | 2 +- services/mana-user/drizzle.config.ts | 2 +- services/mana-user/src/config.ts | 6 +- services/mana-user/src/index.ts | 2 +- services/mana-user/src/middleware/jwt-auth.ts | 4 +- test-chat-auth.sh | 2 +- turbo.json | 2 +- vitest.config.ts | 2 +- 1961 files changed, 3817 insertions(+), 9671 deletions(-) rename apps/{manacore => mana}/.gitignore (100%) rename apps/{manacore => mana}/CLAUDE.md (96%) rename apps/{manacore => mana}/README.md (95%) rename apps/{manacore => mana}/apps/landing/.gitignore (100%) rename apps/{manacore => mana}/apps/landing/Plans/landing-page-concepts.md (100%) rename apps/{manacore => mana}/apps/landing/astro.config.mjs (93%) rename apps/{manacore => mana}/apps/landing/netlify.toml (100%) rename apps/{manacore => mana}/apps/landing/package.json (88%) rename apps/{manacore => mana}/apps/landing/public/README.md (100%) rename apps/{manacore => mana}/apps/landing/public/icons/README.md (100%) rename apps/{manacore => mana}/apps/landing/public/icons/mana-icon.svg (100%) rename apps/{manacore => mana}/apps/landing/public/images/Mana_Blooming_Manacore_AI_Credits.jpg (100%) rename apps/{manacore => mana}/apps/landing/public/images/Mana_Connection_Manacore_AI_Credits.jpg (100%) rename apps/{manacore => mana}/apps/landing/public/images/Mana_Drop_Manacore_AI_Credits.jpg (100%) rename apps/{manacore => mana}/apps/landing/public/images/Mana_Drops_Manacore_AI_Credits.jpg (100%) rename apps/{manacore => mana}/apps/landing/public/images/Mana_Lake_Manacore_AI_Credits.jpg (100%) rename apps/{manacore => mana}/apps/landing/public/images/Mana_Landscape_Manacore_AI_Credits_16x9.jpg (100%) rename apps/{manacore => mana}/apps/landing/public/images/Mana_River_Flowers_Manacore_AI_Credits.jpg (100%) rename apps/{manacore => mana}/apps/landing/public/images/Mana_River_Manacore_AI_Credits.jpg (100%) rename apps/{manacore => mana}/apps/landing/public/images/Mana_Sea_Manacore_AI_Credits.jpg (100%) rename apps/{manacore => mana}/apps/landing/public/images/Mana_Sea_Sun_Manacore_AI_Credits.jpg (100%) rename apps/{manacore => mana}/apps/landing/public/images/Mana_Wave_Manacore_AI_Credits.jpg (100%) rename apps/{manacore => mana}/apps/landing/public/images/README.md (100%) rename apps/{manacore => mana}/apps/landing/public/images/clients/HSLU-Hochschule-Luzern-Logo-Universitaet-Mana-Manacore-AI.png (100%) rename apps/{manacore => mana}/apps/landing/public/images/clients/RWU-Hochschule-Ravensburg-Weingarten-Universitaet-Logo-Mana-Manacore-AI-1.png (100%) rename apps/{manacore => mana}/apps/landing/public/images/clients/RWU-Hochschule-Ravensburg-Weingarten-Universitaet-Logo-Mana-Manacore-AI.png (100%) rename apps/{manacore => mana}/apps/landing/public/images/clients/edisconet-Schweiz-Unternehmen-Zuerich-Logo-Mana-Manacore-AI.png (100%) rename apps/{manacore => mana}/apps/landing/public/logos/Memoro-Logo-V1.png (100%) rename apps/{manacore => mana}/apps/landing/public/logos/Märchenzauber-logo.png (100%) rename apps/{manacore => mana}/apps/landing/public/logos/README.md (100%) rename apps/{manacore => mana}/apps/landing/src/components/content/HeroSection.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/content/ImageTextSection.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/content/Section.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/feedback/Alert.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/layout/Container.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/layout/Flex.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/layout/Grid.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/navigation/Footer.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/navigation/MobileMenu.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/navigation/Navbar.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/navigation/Sidebar.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/pricing/PricingCard.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/pricing/PricingSection.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/sections/CostComparison.astro (93%) rename apps/{manacore => mana}/apps/landing/src/components/sections/EcosystemOverview.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/sections/ManaPrinciple.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/seo/AlternateLinks.astro (91%) rename apps/{manacore => mana}/apps/landing/src/components/typography/Heading.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/typography/Text.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/ui/AppCard.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/ui/Badge.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/ui/Button.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/ui/Card.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/ui/Image.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/ui/Input.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/ui/LanguageSwitcher.astro (100%) rename apps/{manacore => mana}/apps/landing/src/components/ui/ThemeToggle.astro (100%) rename apps/{manacore => mana}/apps/landing/src/content/apps/cards-de.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/apps/memoro-de.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/apps/memoro-en.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/apps/moodlit-de.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/apps/nutriphi-de.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/apps/orakel-de.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/apps/pictus-de.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/apps/traces-de.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/apps/zitare-de.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/blueprints/001-mana-cluster-federation-architecture.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/blueprints/002-infrastructure-audit-improvements.md (98%) rename apps/{manacore => mana}/apps/landing/src/content/blueprints/003-payment-systems-stripe-vs-direct-debit.md (99%) rename apps/{manacore => mana}/apps/landing/src/content/branchen/ngos.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/branchen/privat.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/branchen/selbststaendige.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/branchen/startups.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/branchen/studenten.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/branchen/universitaeten.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/branchen/unternehmen.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/branchen/vereine.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/clients/edisconet.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/clients/hslu-hochschule-luzern.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/clients/mindmed.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/clients/rwu-ravensburg-weingarten.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/clients/uni-heidelberg.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/config.ts (93%) rename apps/{manacore => mana}/apps/landing/src/content/context/overview-short.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/context/overview.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/context/questions.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-01-23-production-launch.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-01-24-guest-mode-improvements.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-01-25-nutriphi-monitoring-infrastructure.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-01-26-monitoring-auth-ai.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-01-27-matrix-infrastructure-self-hosting.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-01-28-massive-feature-sprint.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-01-29-microservices-matrix-consolidation.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-01-30-matrix-bots-llm-playground.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-01-31-matrix-consolidation-voice-support.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-02-01-ssd-migration-i18n-cicd.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-02-02-cross-domain-sso-mana-media.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-02-11-photos-app-stt-tts-admin.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-02-12-gdpr-matrix-mac-mini.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-02-13-gift-codes-stripe-zitare.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-02-14-matrix-stt-bot-gift-codes-onboarding.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-02-15-onboarding-polish-calendar-views.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-02-16-lightwrite-pwa-stripe-sepa.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-02-17-spiral-db-planta-bot-mana-values.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-06-matrix-mobile-manalink.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-07-manalink-sdk55-fixes.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-11-cd-pipeline-mac-mini-runner.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-12-manalink-eas-build-fixes.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-15-traces-app-calendar-hardening.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-17-mukke-mobile-e2e-tests-pre-commit.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-18-test-coverage-contacts-todo.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-19-security-hardening-error-tracking.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-20-cross-app-sso-infrastructure-fixes.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-21-whopixels-refactor-storage-picture.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-22-analytics-pwa-visualizer-error-tracking.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-23-abend-context-menus-llm-onboarding.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-23-vormittag-manalink-prod-ready.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-24-abend-pwa-todo-infra.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-24-vormittag-credits-dashboard-infra.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-25-storage-auth-tags-analytics.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-26-local-first-architektur-planung.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-27-matrix-bot-go-consolidation.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-28-gpu-offload-colima-migration.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-28-local-first-nestjs-elimination.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-30-todo-ux-keyboard-navigation.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/devlog/2026-03-31-memoro-statuspage-todo-infra.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/legal/agb.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/legal/datenschutz.md (99%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-calendar.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-cards.md (98%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-chat.md (97%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-clock.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-contacts.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-context.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-manacore.md (90%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-matrix.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-mukke.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-nutriphi.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-photos.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-picture.md (98%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-planta.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-presi.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-questions.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-skilltree.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-storage.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-todo.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-traces.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-19-zitare.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-27-inventar.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-28-architecture-update.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-30-calc.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-30-citycorners.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-30-manavoxel.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-30-news.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-30-playground.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-30-times.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-30-uload.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-03-30-wisekeep.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/2026-04-01-memoro.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/manascore/about.md (98%) rename apps/{manacore => mana}/apps/landing/src/content/mission/de/unser-team.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/mission/de/unsere-vision.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/mission/de/unsere-werte.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/mission/en/our-vision.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/privacy/dsgvo-konformitaet.md (100%) rename apps/{manacore => mana}/apps/landing/src/content/privacy/ki-modelle-umgang.md (100%) rename apps/{manacore => mana}/apps/landing/src/data/ecosystem-health.json (98%) rename apps/{manacore => mana}/apps/landing/src/data/pricing.js (100%) rename apps/{manacore => mana}/apps/landing/src/env.d.ts (100%) rename apps/{manacore => mana}/apps/landing/src/layouts/Layout.astro (97%) rename apps/{manacore => mana}/apps/landing/src/lib/i18n/config.ts (100%) rename apps/{manacore => mana}/apps/landing/src/lib/i18n/utils.ts (100%) rename apps/{manacore => mana}/apps/landing/src/pages/apps/[slug].astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/apps/index.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/blueprints/[slug].astro (99%) rename apps/{manacore => mana}/apps/landing/src/pages/blueprints/index.astro (99%) rename apps/{manacore => mana}/apps/landing/src/pages/clients/[slug].astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/clients/index.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/context/[slug].astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/context/index.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/de/shared-demo.astro (74%) rename apps/{manacore => mana}/apps/landing/src/pages/design-system.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/devlog/[slug].astro (98%) rename apps/{manacore => mana}/apps/landing/src/pages/devlog/activity.astro (99%) rename apps/{manacore => mana}/apps/landing/src/pages/devlog/index.astro (97%) rename apps/{manacore => mana}/apps/landing/src/pages/en/index.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/es/index.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/fr/index.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/fuer/[slug].astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/fuer/index.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/impressum.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/index.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/it/index.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/legal/[slug].astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/legal/index.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/manascore/[slug].astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/manascore/ecosystem.astro (98%) rename apps/{manacore => mana}/apps/landing/src/pages/manascore/index.astro (98%) rename apps/{manacore => mana}/apps/landing/src/pages/mission/[slug].astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/mission/index.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/pricing.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/privacy/[slug].astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/privacy/index.astro (100%) rename apps/{manacore => mana}/apps/landing/src/pages/release-plan.astro (100%) rename apps/{manacore => mana}/apps/landing/src/styles/global.css (100%) rename apps/{manacore => mana}/apps/landing/tailwind.config.mjs (100%) rename apps/{manacore => mana}/apps/landing/tsconfig.json (100%) rename apps/{manacore => mana}/apps/landing/wrangler.toml (58%) rename apps/{manacore => mana}/apps/mobile/.env.example (100%) rename apps/{manacore => mana}/apps/mobile/.gitignore (100%) rename apps/{manacore => mana}/apps/mobile/app-env.d.ts (100%) rename apps/{manacore => mana}/apps/mobile/app.json (86%) rename apps/{manacore => mana}/apps/mobile/app/(drawer)/(tabs)/_layout.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/(drawer)/(tabs)/index.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/(drawer)/(tabs)/two.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/(drawer)/_layout.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/(drawer)/apps.tsx (96%) rename apps/{manacore => mana}/apps/mobile/app/(drawer)/get-mana.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/(drawer)/index.tsx (98%) rename apps/{manacore => mana}/apps/mobile/app/(drawer)/organizations/[id].tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/(drawer)/organizations/index.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/(drawer)/send-mana.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/(drawer)/settings.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/(drawer)/teams/[id].tsx (96%) rename apps/{manacore => mana}/apps/mobile/app/(drawer)/teams/index.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/+html.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/+not-found.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/_layout.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/auth/_layout.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/auth/reset-password.tsx (98%) rename apps/{manacore => mana}/apps/mobile/app/login.tsx (100%) rename apps/{manacore => mana}/apps/mobile/app/modal.tsx (100%) rename apps/{manacore => mana}/apps/mobile/assets/adaptive-icon.png (100%) rename apps/{manacore => mana}/apps/mobile/assets/favicon.png (100%) rename apps/{manacore => mana}/apps/mobile/assets/icon.png (100%) rename apps/{manacore => mana}/apps/mobile/assets/splash.png (100%) rename apps/{manacore => mana}/apps/mobile/babel.config.js (100%) rename apps/{manacore => mana}/apps/mobile/cesconfig.json (95%) rename apps/{manacore => mana}/apps/mobile/components/Account.tsx (100%) rename apps/{manacore => mana}/apps/mobile/components/Auth.tsx (98%) rename apps/{manacore => mana}/apps/mobile/components/Button.tsx (100%) rename apps/{manacore => mana}/apps/mobile/components/Container.tsx (100%) rename apps/{manacore => mana}/apps/mobile/components/CreateOrganization.tsx (100%) rename apps/{manacore => mana}/apps/mobile/components/CreateTeam.tsx (95%) rename apps/{manacore => mana}/apps/mobile/components/DashboardStats.tsx (100%) rename apps/{manacore => mana}/apps/mobile/components/EditScreenInfo.tsx (100%) rename apps/{manacore => mana}/apps/mobile/components/HeaderButton.tsx (100%) rename apps/{manacore => mana}/apps/mobile/components/OrganizationList.tsx (100%) rename apps/{manacore => mana}/apps/mobile/components/ScreenContent.tsx (100%) rename apps/{manacore => mana}/apps/mobile/components/SendMana.tsx (96%) rename apps/{manacore => mana}/apps/mobile/components/TabBarIcon.tsx (100%) rename apps/{manacore => mana}/apps/mobile/components/TeamList.tsx (91%) rename apps/{manacore => mana}/apps/mobile/components/TeamMembers.tsx (97%) rename apps/{manacore => mana}/apps/mobile/context/AuthProvider.tsx (97%) rename apps/{manacore => mana}/apps/mobile/eas.json (100%) rename apps/{manacore => mana}/apps/mobile/eslint.config.mjs (89%) rename apps/{manacore => mana}/apps/mobile/global.css (100%) rename apps/{manacore => mana}/apps/mobile/metro.config.js (100%) rename apps/{manacore => mana}/apps/mobile/nativewind-env.d.ts (100%) rename apps/{manacore => mana}/apps/mobile/netlify.toml (100%) rename apps/{manacore => mana}/apps/mobile/package.json (96%) rename apps/{manacore => mana}/apps/mobile/prettier.config.js (100%) rename apps/{manacore => mana}/apps/mobile/services/api.ts (94%) rename apps/{manacore => mana}/apps/mobile/supabase/migrations/20250315_find_user_by_email.sql (100%) rename apps/{manacore => mana}/apps/mobile/tailwind.config.js (100%) rename apps/{manacore => mana}/apps/mobile/tsconfig.json (100%) rename apps/{manacore => mana}/apps/mobile/utils/themeContext.tsx (100%) rename apps/{manacore => mana}/apps/web/.env.example (100%) rename apps/{manacore => mana}/apps/web/.gitignore (100%) rename apps/{manacore => mana}/apps/web/Dockerfile (80%) rename apps/{manacore => mana}/apps/web/MIDDLEWARE_SECURITY.md (100%) rename apps/{manacore => mana}/apps/web/README.md (97%) rename apps/{manacore => mana}/apps/web/SETUP.md (99%) rename apps/{manacore => mana}/apps/web/WELCOME_ROUTE_SETUP.md (99%) rename apps/{manacore => mana}/apps/web/eslint.config.js (88%) rename apps/{manacore => mana}/apps/web/src/app.css (100%) rename apps/{manacore => mana}/apps/web/src/app.d.ts (65%) rename apps/{manacore => mana}/apps/web/src/app.html (100%) rename apps/{manacore => mana}/apps/web/src/hooks.client.ts (58%) rename apps/{manacore => mana}/apps/web/src/hooks.server.ts (91%) rename apps/{manacore => mana}/apps/web/src/lib/api/api-keys.test.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/api-keys.ts (87%) rename apps/{manacore => mana}/apps/web/src/lib/api/base-client.test.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/base-client.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/config.ts (76%) rename apps/{manacore => mana}/apps/web/src/lib/api/credits.test.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/credits.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/api/feedback.ts (65%) rename apps/{manacore => mana}/apps/web/src/lib/api/gifts.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/api/profile.test.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/profile.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/admin.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/calendar.test.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/calendar.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/cards.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/chat.test.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/chat.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/clock.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/contacts.test.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/contacts.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/context.test.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/context.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/landing.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/music.test.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/music.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/my-data.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/picture.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/presi.test.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/presi.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/qr-export.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/storage.test.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/storage.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/todo.test.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/todo.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/zitare.test.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/services/zitare.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/api/subscriptions.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/app-registry/apps.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/app-registry/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/app-registry/registry.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/app-registry/types.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/components/AppSlider.svelte (84%) rename apps/{manacore => mana}/apps/web/src/lib/components/Breadcrumbs.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/Icon.svelte (88%) rename apps/{manacore => mana}/apps/web/src/lib/components/KeyboardShortcutsModal.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/LanguageSelector.svelte (87%) create mode 100644 apps/mana/apps/web/src/lib/components/OfflineIndicator.svelte create mode 100644 apps/mana/apps/web/src/lib/components/PwaUpdatePrompt.svelte rename apps/{manacore => mana}/apps/web/src/lib/components/SessionWarning.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/SuggestionToast.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/admin/ProjectDataCard.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/admin/QuickLinks.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/components/admin/StatCard.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/admin/UserTable.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/DashboardGrid.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/TilePanel.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/TileResizeHandle.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/TilingLayout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/WidgetContainer.svelte (90%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/WidgetError.svelte (96%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/WidgetSkeleton.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widget-registry.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/ActivityFeedWidget.svelte (95%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/CalendarEventsWidget.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/CardsProgressWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/ChatRecentWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/ClockTimersWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/ContactsFavoritesWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/ContextDocsWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/CreditsWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/DayTimelineWidget.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/MusicLibraryWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/PictureRecentWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/PresiDecksWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/QuickActionsWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/StorageUsageWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/TasksTodayWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/TasksUpcomingWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/TransactionsWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/dashboard/widgets/ZitareQuoteWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/landing/LandingEditor.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/landing/RepeatableField.svelte (91%) rename apps/{manacore => mana}/apps/web/src/lib/components/landing/SectionEditor.svelte (94%) rename apps/{manacore => mana}/apps/web/src/lib/components/links/LinkedItems.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/components/my-data/DeleteConfirmationModal.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/my-data/QRExportModal.svelte (96%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/SeenplatteScene.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/atmosphere/Ambient.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/atmosphere/Sky.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/data/colors.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/data/layout.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/data/mockData.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/data/types.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/plants/MossCluster.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/plants/PlantFactory.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/plants/ReedPlant.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/plants/Sprout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/plants/TreePlant.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/plants/WaterLily.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/terrain/Background.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/terrain/Terrain.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/terrain/WaterBody.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/ui/CompareView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/ui/DetailPanel.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/ui/LakeCard.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/ui/Leaderboard.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/ui/PlantCard.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/ui/PlantTooltip.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/ui/RadarChart.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/ui/RiverCard.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/ui/TrendsChart.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/observatory/water/RiverFlow.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/onboarding/OnboardingWizard.svelte (95%) rename apps/{manacore => mana}/apps/web/src/lib/components/onboarding/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/onboarding/steps/AppsStep.svelte (94%) rename apps/{manacore => mana}/apps/web/src/lib/components/onboarding/steps/CompleteStep.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/onboarding/steps/CreditsStep.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/onboarding/steps/ProfileStep.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/components/onboarding/steps/WelcomeStep.svelte (94%) rename apps/{manacore => mana}/apps/web/src/lib/components/page-carousel/PageCarousel.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/page-carousel/PageShell.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/page-carousel/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/profile/ChangePasswordModal.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/components/profile/DeleteAccountModal.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/profile/EditProfileModal.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/profile/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/components/workbench/AppPage.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/components/workbench/AppPagePicker.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/config/apps.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/config/default-dashboard.test.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/config/default-dashboard.ts (93%) rename apps/{manacore => mana}/apps/web/src/lib/config/default-tiling.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/config/storage-keys.ts (59%) rename apps/{manacore => mana}/apps/web/src/lib/content/help/index.test.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/content/help/index.ts (86%) rename apps/{manacore => mana}/apps/web/src/lib/context-menu/build-context-menu.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/context-menu/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/context-menu/use-workbench-context-menu.svelte.ts (92%) rename apps/{manacore => mana}/apps/web/src/lib/data/cross-app-queries.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/data/guest-seed.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/data/local-store.ts (92%) rename apps/{manacore => mana}/apps/web/src/lib/data/queries.ts (88%) rename apps/{manacore => mana}/apps/web/src/lib/data/sync.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/data/time-blocks/analytics.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/data/time-blocks/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/data/time-blocks/ical-export.ts (93%) rename apps/{manacore => mana}/apps/web/src/lib/data/time-blocks/service.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/app_slider/de.json (86%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/app_slider/en.json (86%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/app_slider/es.json (86%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/app_slider/fr.json (86%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/app_slider/it.json (86%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/apps/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/apps/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/apps/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/apps/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/apps/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/calc/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/calc/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/calc/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/calc/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/calc/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/calendar/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/calendar/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/calendar/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/calendar/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/calendar/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/cards/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/cards/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/cards/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/cards/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/cards/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/chat/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/chat/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/chat/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/chat/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/chat/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/citycorners/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/citycorners/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/citycorners/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/citycorners/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/citycorners/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/common/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/common/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/common/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/common/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/common/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/contacts/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/contacts/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/contacts/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/contacts/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/contacts/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/context/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/context/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/context/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/context/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/context/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/credits/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/credits/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/credits/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/credits/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/credits/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/dashboard/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/dashboard/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/dashboard/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/dashboard/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/dashboard/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/guides/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/guides/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/guides/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/guides/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/guides/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/help/de.json (68%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/help/en.json (68%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/help/es.json (68%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/help/fr.json (69%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/help/it.json (67%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/inventar/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/inventar/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/inventar/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/inventar/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/inventar/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/matrix/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/matrix/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/matrix/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/matrix/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/matrix/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/memoro/de.json (97%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/memoro/en.json (97%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/memoro/es.json (96%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/memoro/fr.json (96%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/memoro/it.json (96%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/moodlit/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/moodlit/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/moodlit/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/moodlit/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/moodlit/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/nav/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/nav/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/nav/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/nav/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/nav/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/nutriphi/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/nutriphi/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/nutriphi/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/nutriphi/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/nutriphi/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/photos/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/photos/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/photos/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/photos/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/photos/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/picture/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/picture/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/picture/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/picture/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/picture/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/planta/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/planta/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/planta/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/planta/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/planta/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/presi/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/presi/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/presi/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/presi/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/presi/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/profile/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/profile/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/profile/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/profile/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/profile/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/questions/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/questions/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/questions/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/questions/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/questions/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/skilltree/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/skilltree/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/skilltree/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/skilltree/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/skilltree/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/storage/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/storage/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/storage/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/storage/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/storage/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/subscription/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/subscription/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/subscription/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/subscription/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/subscription/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/times/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/times/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/times/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/times/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/times/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/todo/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/todo/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/todo/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/todo/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/todo/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/uload/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/uload/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/uload/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/uload/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/uload/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/zitare/de.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/zitare/en.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/zitare/es.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/zitare/fr.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/i18n/locales/zitare/it.json (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/automations/ListView.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/automations/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/automations/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/automations/stores/automations.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/automations/types.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/components/CasioSkin.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/components/HP35Skin.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/components/MinimalSkin.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/components/ModernSkin.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/components/TI84Skin.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/components/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/components/types.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/engine/evaluate.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/stores/calculations.svelte.ts (94%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/stores/saved-formulas.svelte.ts (94%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calc/types.ts (87%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/ListView.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/components/AgendaView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/components/CalendarHeader.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/components/ConflictWarning.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/components/DateStrip.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/components/EventDetailModal.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/components/EventForm.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/components/MiniCalendar.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/components/MonthView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/components/QuickEventPopover.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/components/SlotSuggestions.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/components/WeekView.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/components/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/composables/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/composables/useCalendarKeyboard.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/composables/useDragToCreate.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/composables/useEventDragDrop.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/composables/useVisibleHours.svelte.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/queries.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/quick-input-adapter.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/stores/calendars.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/stores/events.svelte.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/stores/view.svelte.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/utils/constants.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/utils/drag-helpers.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/utils/event-date-helpers.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/utils/event-estimator.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/utils/event-parser.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/calendar/views/DetailView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/cards/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/cards/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/cards/components/CreateDeckModal.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/cards/components/DeckCard.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/cards/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/cards/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/cards/stores/cards.svelte.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/cards/stores/decks.svelte.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/cards/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/cards/types.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/modules/cards/views/DetailView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/chat/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/chat/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/chat/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/chat/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/chat/stores/conversations.svelte.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/modules/chat/stores/messages.svelte.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/chat/stores/tags.svelte.ts (78%) rename apps/{manacore => mana}/apps/web/src/lib/modules/chat/stores/templates.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/chat/types.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/citycorners/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/citycorners/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/citycorners/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/citycorners/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/citycorners/stores/favorites.svelte.ts (94%) rename apps/{manacore => mana}/apps/web/src/lib/modules/citycorners/stores/tags.svelte.ts (78%) rename apps/{manacore => mana}/apps/web/src/lib/modules/citycorners/types.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/modules/citycorners/utils/opening-hours.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/citycorners/views/DetailView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/ListView.svelte (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/components/pages/ContactPage.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/components/pages/ContactPagePicker.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/quick-input-adapter.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/stores/contacts.svelte.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/stores/filter.svelte.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/stores/modal.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/types.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/utils/contact-parser.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/contacts/views/DetailView.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/context/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/context/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/context/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/context/queries.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/context/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/context/types.ts (94%) rename apps/{manacore => mana}/apps/web/src/lib/modules/core/widgets/ActiveTimerWidget.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/core/widgets/NutritionProgressWidget.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/core/widgets/PlantWateringWidget.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/core/widgets/QuickActionsWidget.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/core/widgets/QuoteOfTheDayWidget.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/core/widgets/RecentChatsWidget.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/core/widgets/RecentContactsWidget.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/core/widgets/TasksTodayWidget.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/core/widgets/UpcomingEventsWidget.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/core/widgets/WidgetGrid.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/core/widgets/index.ts (93%) rename apps/{manacore => mana}/apps/web/src/lib/modules/finance/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/finance/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/finance/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/finance/queries.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/finance/stores/finance.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/finance/types.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/guides/index.ts (87%) rename apps/{manacore => mana}/apps/web/src/lib/modules/guides/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/habits/ListView.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/habits/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/habits/components/DayTimeline.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/habits/components/HabitBoard.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/habits/components/HabitDetail.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/habits/components/HabitForm.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/habits/components/HabitTile.svelte (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/habits/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/habits/queries.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/habits/stores/habits.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/habits/types.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/components/StatusBadge.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/components/ViewModeToggle.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/components/fields/FieldEditor.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/components/fields/FieldRenderer.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/components/fields/SchemaEditor.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/constants.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/stores/categories.svelte.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/stores/collections.svelte.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/stores/items.svelte.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/stores/locations.svelte.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/stores/view.svelte.ts (88%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/types.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/inventar/views/DetailView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/memoro/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/memoro/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/memoro/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/memoro/queries.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/memoro/stores/memories.svelte.ts (94%) rename apps/{manacore => mana}/apps/web/src/lib/modules/memoro/stores/memos.svelte.ts (93%) rename apps/{manacore => mana}/apps/web/src/lib/modules/memoro/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/memoro/types.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/memoro/views/DetailView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/moodlit/ListView.svelte (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/moodlit/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/moodlit/components/mood/CreateMoodDialog.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/moodlit/components/mood/MoodCard.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/moodlit/components/mood/MoodFullscreen.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/moodlit/default-moods.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/moodlit/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/moodlit/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/moodlit/stores/moods.svelte.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/moodlit/stores/sequences.svelte.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/moodlit/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/moodlit/types.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/music/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/music/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/music/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/music/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/music/stores/library.svelte.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/music/stores/player.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/music/stores/playlists.svelte.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/music/stores/projects.svelte.ts (94%) rename apps/{manacore => mana}/apps/web/src/lib/modules/music/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/music/types.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/music/views/DetailView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/notes/ListView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/notes/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/notes/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/notes/queries.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/notes/stores/notes.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/notes/types.ts (94%) rename apps/{manacore => mana}/apps/web/src/lib/modules/nutriphi/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/nutriphi/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/nutriphi/constants.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/nutriphi/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/nutriphi/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/nutriphi/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/nutriphi/types.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/ListView.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/components/albums/AlbumCard.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/components/albums/AlbumGrid.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/components/albums/CreateAlbumModal.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/components/filters/FilterBar.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/components/gallery/PhotoCard.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/components/gallery/PhotoDetailModal.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/components/gallery/PhotoGrid.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/components/upload/UploadDropzone.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/stores/albums.svelte.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/stores/photos.svelte.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/photos/types.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/picture/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/picture/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/picture/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/picture/queries.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/picture/stores/boards.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/picture/stores/images.svelte.ts (91%) rename apps/{manacore => mana}/apps/web/src/lib/modules/picture/stores/view.svelte.ts (94%) rename apps/{manacore => mana}/apps/web/src/lib/modules/picture/types.ts (94%) rename apps/{manacore => mana}/apps/web/src/lib/modules/places/ListView.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/places/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/places/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/places/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/places/stores/places.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/places/stores/tracking.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/places/types.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/modules/places/views/DetailView.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/planta/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/planta/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/planta/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/planta/mutations.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/planta/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/planta/quick-input-adapter.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/planta/stores/tags.svelte.ts (78%) rename apps/{manacore => mana}/apps/web/src/lib/modules/planta/types.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/planta/utils/plant-parser.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/planta/utils/syntax-help.ts (89%) rename apps/{manacore => mana}/apps/web/src/lib/modules/planta/views/DetailView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/playground/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/playground/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/presi/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/presi/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/presi/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/presi/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/presi/stores/decks.svelte.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/presi/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/presi/types.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/presi/views/DetailView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/questions/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/questions/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/questions/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/questions/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/questions/stores/tags.svelte.ts (78%) rename apps/{manacore => mana}/apps/web/src/lib/modules/questions/types.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/questions/views/DetailView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/components/AchievementCard.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/components/AchievementCelebration.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/components/AddSkillModal.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/components/AddXpModal.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/components/EditSkillModal.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/components/LevelUpCelebration.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/components/SkillCard.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/components/SkillTemplates.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/components/StatsOverview.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/stores/achievements.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/stores/skills.svelte.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/types.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/skilltree/views/DetailView.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/spiral/collect.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/spiral/components/SpiralCanvas.svelte (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/spiral/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/spiral/stores/mana-spiral.svelte.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/storage/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/storage/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/storage/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/storage/queries.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/storage/stores/files.svelte.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/storage/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/storage/types.ts (92%) rename apps/{manacore => mana}/apps/web/src/lib/modules/storage/views/DetailView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/ListView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/components/EntryForm.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/components/EntryItem.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/components/EntryList.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/components/FocusCard.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/components/KeyboardShortcuts.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/components/QuickStart.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/components/TimerCard.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/components/TimerIndicator.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/components/clock/CircularProgress.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/components/clock/WorldMap.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/queries.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/quick-input-adapter.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/stores/alarms.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/stores/countdown-timers.svelte.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/stores/focus.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/stores/session-alarms.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/stores/session-countdown-timers.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/stores/stopwatch.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/stores/timer.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/stores/view.svelte.ts (89%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/stores/world-clocks.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/types.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/utils/entry-parser.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/utils/export.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/utils/rounding.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/times/views/DetailView.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/ListView.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/OnboardingModal.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/QuickAddTask.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/SubtaskList.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/SyncIndicator.svelte (91%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/SyntaxHelpOverlay.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/TaskEditModal.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/TaskItem.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/TaskList.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/board-views/BoardViewRenderer.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/board-views/FokusLayout.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/board-views/GridLayout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/board-views/KanbanLayout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/board-views/ViewColumn.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/board-views/ViewColumnHeader.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/board-views/ViewEditorModal.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/board-views/ViewSelector.svelte (93%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/board-views/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/form/DurationPicker.svelte (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/form/FunRatingPicker.svelte (93%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/form/PrioritySelector.svelte (95%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/form/ReminderSelector.svelte (82%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/form/StorypointsSelector.svelte (93%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/form/TagSelector.svelte (90%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/form/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/kanban/KanbanTaskCard.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/kanban/QuickAddTaskInline.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/pages/PageEditBar.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/pages/PagePicker.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/pages/TodoPage.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/skeletons/KanbanBoardSkeleton.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/skeletons/KanbanColumnSkeleton.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/skeletons/StatisticsSkeleton.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/skeletons/TaskItemSkeleton.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/skeletons/TaskListSkeleton.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/components/skeletons/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/composables/useTaskForm.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/queries.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/quick-input-adapter.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/reminder-source.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/stores/board-views.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/stores/contacts.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/stores/labels.svelte.ts (72%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/stores/reminders.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/stores/settings.svelte.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/stores/tasks.svelte.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/utils/task-parser.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/utils/time-estimator.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/view-grouping.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/todo/views/DetailView.svelte (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/uload/ListView.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/uload/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/uload/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/uload/queries.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/uload/types.ts (94%) rename apps/{manacore => mana}/apps/web/src/lib/modules/uload/views/DetailView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/ListView.svelte (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/collections.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/components/QuoteCard.svelte (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/components/SpiralCanvas.svelte (96%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/queries.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/stores/favorites.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/stores/lists.svelte.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/stores/quotes.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/stores/settings.svelte.ts (94%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/stores/spiral.svelte.ts (99%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/stores/tags.svelte.ts (77%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/types.ts (82%) rename apps/{manacore => mana}/apps/web/src/lib/modules/zitare/views/DetailView.svelte (98%) rename apps/{manacore => mana}/apps/web/src/lib/quick-input/fallback-adapter.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/quick-input/registry.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/quick-input/types.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/search/engine.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/search/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/search/providers/calendar.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/search/providers/cards.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/search/providers/chat.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/search/providers/clock.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/search/providers/contacts.ts (96%) rename apps/{manacore => mana}/apps/web/src/lib/search/providers/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/search/providers/music.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/search/providers/picture.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/search/providers/presi.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/search/providers/storage.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/search/providers/todo.ts (97%) rename apps/{manacore => mana}/apps/web/src/lib/search/providers/zitare.ts (95%) rename apps/{manacore => mana}/apps/web/src/lib/search/registry.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/search/scoring.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/search/types.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/server/middleware.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/splitscreen/PanelHeader.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/splitscreen/ResizeHandle.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/splitscreen/SplitPaneLayout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/lib/splitscreen/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/splitscreen/registry.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/splitscreen/store.svelte.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/stores/auth.svelte.ts (63%) rename apps/{manacore => mana}/apps/web/src/lib/stores/dashboard.svelte.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/stores/funnel-tracking.ts (90%) rename apps/{manacore => mana}/apps/web/src/lib/stores/guest-mode.svelte.ts (84%) create mode 100644 apps/mana/apps/web/src/lib/stores/navigation.ts create mode 100644 apps/mana/apps/web/src/lib/stores/network.svelte.ts rename apps/{manacore => mana}/apps/web/src/lib/stores/onboarding.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/stores/tags.svelte.ts (75%) rename apps/{manacore => mana}/apps/web/src/lib/stores/theme.ts (62%) rename apps/{manacore => mana}/apps/web/src/lib/stores/tiling.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/stores/toast.svelte.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/stores/user-settings.svelte.ts (65%) rename apps/{manacore => mana}/apps/web/src/lib/triggers/actions.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/triggers/conditions.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/triggers/index.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/triggers/inline-suggest.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/triggers/loader.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/triggers/registry.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/triggers/suggestions.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/types/dashboard.test.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/types/dashboard.ts (98%) rename apps/{manacore => mana}/apps/web/src/lib/types/database.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/types/tiling.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/utils/autoRefresh.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/utils/tiling-tree.ts (100%) rename apps/{manacore => mana}/apps/web/src/lib/version.ts (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/+layout.svelte (93%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/+page.svelte (96%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/admin/+layout.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/admin/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/admin/system/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/admin/user-data/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/admin/user-data/[userId]/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/admin/users/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/api-keys/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/apps/+page.svelte (60%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/calc/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/calc/standard/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/calendar/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/calendar/calendars/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/calendar/event/[id]/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/cards/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/cards/+page.svelte (94%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/cards/decks/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/cards/decks/[id]/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/cards/explore/+page.svelte (87%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/cards/progress/+page.svelte (96%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/chat/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/chat/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/chat/[id]/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/chat/archive/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/chat/templates/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/citycorners/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/citycorners/add-city/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/citycorners/add/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/citycorners/cities/[slug]/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/citycorners/cities/[slug]/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/citycorners/cities/[slug]/add/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/citycorners/cities/[slug]/locations/[id]/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/citycorners/cities/[slug]/locations/[id]/edit/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/citycorners/cities/[slug]/map/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/citycorners/favorites/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/citycorners/locations/[id]/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/citycorners/locations/[id]/edit/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/citycorners/map/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/contacts/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/contacts/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/contacts/[id]/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/context/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/context/documents/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/context/documents/[id]/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/context/spaces/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/context/spaces/[id]/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/credits/+page.svelte (98%) create mode 100644 apps/mana/apps/web/src/routes/(app)/feedback/+page.svelte rename apps/{manacore => mana}/apps/web/src/routes/(app)/finance/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/finance/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/gifts/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/gifts/redeem/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/gifts/redeem/[code]/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/guides/+page.svelte (95%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/habits/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/habits/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/habits/[id]/+page.svelte (96%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/help/+page.svelte (51%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/inventar/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/inventar/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/inventar/categories/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/inventar/collections/[id]/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/inventar/collections/[id]/edit/+page.svelte (96%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/inventar/collections/new/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/inventar/items/[id]/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/inventar/locations/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/inventar/search/+page.svelte (95%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/llm-test/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/llm-test/+page.ts (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/mana/+page.svelte (90%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/memoro/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/memoro/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/memoro/[id]/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/memoro/archive/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/memoro/tags/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/moodlit/+page.svelte (94%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/moodlit/moods/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/moodlit/sequences/+page.svelte (95%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/music/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/music/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/music/library/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/music/playlists/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/music/playlists/[id]/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/music/projects/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/notes/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/notes/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/notes/[id]/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/nutriphi/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/nutriphi/add/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/nutriphi/goals/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/nutriphi/history/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/observatory/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/organizations/+page.svelte (86%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/organizations/[id]/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/organizations/[id]/+page.ts (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/organizations/[id]/landing/+page.svelte (96%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/organizations/[id]/landing/+page.ts (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/photos/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/photos/+page.svelte (96%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/photos/albums/+page.svelte (95%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/photos/albums/[id]/+page.svelte (96%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/photos/favorites/+page.svelte (95%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/photos/upload/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/picture/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/picture/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/picture/archive/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/picture/board/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/picture/board/[id]/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/picture/generate/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/planta/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/planta/[id]/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/planta/add/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/planta/tags/+page.svelte (93%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/playground/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/presi/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/presi/deck/[id]/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/presi/present/[id]/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/profile/+page.svelte (96%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/questions/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/questions/[id]/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/questions/collections/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/questions/new/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/settings/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/settings/my-data/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/skilltree/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/skilltree/achievements/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/skilltree/tree/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/spiral/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/storage/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/storage/+page.svelte (96%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/storage/favorites/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/storage/files/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/storage/files/[folderId]/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/storage/search/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/storage/trash/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/subscription/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/tags/+page.svelte (95%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/teams/+page.svelte (85%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/themes/+page.svelte (80%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/timeline/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/timeline/analytics/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/times/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/times/clients/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/times/clients/[id]/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/times/clock/+page.svelte (95%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/times/clock/alarms/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/times/entries/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/times/projects/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/times/projects/[id]/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/times/reports/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/times/templates/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/todo/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/todo/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/todo/settings/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/uload/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/uload/analytics/[id]/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/uload/links/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/uload/settings/+page.svelte (96%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/uload/tags/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/zitare/+layout.svelte (94%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/zitare/+page.svelte (93%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/zitare/categories/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/zitare/category/[category]/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/zitare/favorites/+page.svelte (96%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/zitare/lists/+page.svelte (97%) rename apps/{manacore => mana}/apps/web/src/routes/(app)/zitare/lists/[id]/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/(auth)/+layout.svelte (94%) rename apps/{manacore => mana}/apps/web/src/routes/(auth)/forgot-password/+page.svelte (76%) rename apps/{manacore => mana}/apps/web/src/routes/(auth)/login/+page.svelte (88%) rename apps/{manacore => mana}/apps/web/src/routes/(auth)/register/+page.svelte (80%) rename apps/{manacore => mana}/apps/web/src/routes/(auth)/reset-password/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/+error.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/+layout.server.ts (62%) rename apps/{manacore => mana}/apps/web/src/routes/+layout.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/+layout.ts (66%) rename apps/{manacore => mana}/apps/web/src/routes/api/example/+server.ts (100%) rename apps/{manacore => mana}/apps/web/src/routes/auth/callback/+page.svelte (98%) rename apps/{manacore => mana}/apps/web/src/routes/auth/reset-password/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/src/routes/email-verified/+page.svelte (82%) rename apps/{manacore => mana}/apps/web/src/routes/g/[code]/+page.svelte (99%) rename apps/{manacore => mana}/apps/web/src/routes/health/+server.ts (88%) rename apps/{manacore => mana}/apps/web/src/routes/offline/+page.svelte (73%) rename apps/{manacore => mana}/apps/web/src/routes/offline/+page.ts (100%) rename apps/{manacore => mana}/apps/web/src/routes/status/+page.server.ts (96%) rename apps/{manacore => mana}/apps/web/src/routes/status/+page.svelte (94%) rename apps/{manacore => mana}/apps/web/src/routes/verification-failed/+page.svelte (91%) rename apps/{manacore => mana}/apps/web/src/routes/welcome/+page.svelte (100%) rename apps/{manacore => mana}/apps/web/static/apple-touch-icon.png (100%) rename apps/{manacore => mana}/apps/web/static/favicon.png (100%) rename apps/{manacore => mana}/apps/web/static/images/app-icons/maerchenzauber-logo-gradient.png (100%) rename apps/{manacore => mana}/apps/web/static/images/app-icons/manacore-logo-gradient.png (100%) rename apps/{manacore => mana}/apps/web/static/images/app-icons/manadeck-logo-gradient.png (100%) rename apps/{manacore => mana}/apps/web/static/images/app-icons/memoro-logo-gradient.png (100%) rename apps/{manacore => mana}/apps/web/static/images/app-icons/moodlit-logo-gradient.png (100%) rename apps/{manacore => mana}/apps/web/static/pwa-192x192.png (100%) rename apps/{manacore => mana}/apps/web/static/pwa-512x512.png (100%) rename apps/{manacore => mana}/apps/web/svelte.config.js (100%) rename apps/{manacore => mana}/apps/web/tailwind.config.js (85%) rename apps/{manacore => mana}/apps/web/tsconfig.json (100%) rename apps/{manacore => mana}/apps/web/vite.config.ts (88%) delete mode 100644 apps/manacore/apps/web/package.json delete mode 100644 apps/manacore/apps/web/src/lib/data/database.ts delete mode 100644 apps/manacore/apps/web/src/lib/data/time-blocks/index.ts delete mode 100644 apps/manacore/apps/web/src/lib/data/time-blocks/queries.ts delete mode 100644 apps/manacore/apps/web/src/lib/data/time-blocks/types.ts delete mode 100644 apps/manacore/apps/web/src/lib/modules/calendar/components/EventCard.svelte delete mode 100644 apps/manacore/apps/web/src/lib/modules/calendar/types.ts delete mode 100644 apps/manacore/apps/web/src/lib/modules/todo/types.ts delete mode 100644 apps/manacore/apps/web/src/lib/stores/navigation.ts delete mode 100644 apps/manacore/apps/web/src/routes/(app)/calendar/+layout.svelte delete mode 100644 apps/manacore/apps/web/src/routes/(app)/feedback/+page.svelte diff --git a/.env.development b/.env.development index 6467ab5f9..168d95143 100644 --- a/.env.development +++ b/.env.development @@ -22,13 +22,13 @@ GLITCHTIP_DSN= PUBLIC_GLITCHTIP_DSN= # Mana Core Auth Service -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 # Mana Credits Service MANA_CREDITS_URL=http://localhost:3061 # Mana Media Service (CAS, thumbnails, Photos gallery) MANA_MEDIA_URL=http://localhost:3015 # Service key for service-to-service communication -MANA_CORE_SERVICE_KEY=dev-service-key-for-bot-sso-2024 +MANA_SERVICE_KEY=dev-service-key-for-bot-sso-2024 # WebAuthn / Passkeys (localhost for dev, mana.how for production) WEBAUTHN_RP_ID=localhost @@ -39,7 +39,7 @@ JWT_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBK JWT_PUBLIC_KEY="-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxkbDl0TgeJaa8PaF2jiL\nfnMB3t1MQTqIlolF3KRbl8G/pAVp/y8o3giDl7XnzsBNEtdCRKHSvun6Hmqhh2p6\nvOqgJppG+GvLI4+SwMV5By9+bCaPB2mHMeTZCUC8UEkR6U33X8bCrCsMWuEeLqq7\n06KnaOrZf1TLBgz0vC+ys2oimknRroL5VbV1oFdbKHl0lD8j8KcgF0IO4WOApE0p\nCQKZa7O+0S3Y/Luo2xykdxe0JMIlNSaHI4TNRj/7Lioql0bvKJixZ7uOQrNPUjUk\nbDqTWOXLKygOD2diwpLPVRx+x2nxbwfgW0c+Ssr6myOysAztqi3bZMRWLTakWpBb\nwIDAQAB\n-----END PUBLIC KEY-----" # Database (shared Postgres for local Docker) -POSTGRES_USER=manacore +POSTGRES_USER=mana POSTGRES_PASSWORD=devpassword # Redis @@ -59,12 +59,12 @@ S3_SECRET_KEY=minioadmin # MANA-CORE-AUTH SERVICE # ============================================ -MANA_CORE_AUTH_PORT=3001 -MANA_CORE_AUTH_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +MANA_AUTH_PORT=3001 +MANA_AUTH_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform JWT_ACCESS_TOKEN_EXPIRY=15m JWT_REFRESH_TOKEN_EXPIRY=7d -JWT_ISSUER=manacore -JWT_AUDIENCE=manacore +JWT_ISSUER=mana +JWT_AUDIENCE=mana CORS_ORIGINS=http://localhost:3000,http://localhost:3002,http://localhost:5173,http://localhost:5174,http://localhost:5175,http://localhost:5176,http://localhost:5177,http://localhost:5178,http://localhost:5179,http://localhost:5180,http://localhost:5181,http://localhost:5182,http://localhost:5183,http://localhost:5184,http://localhost:5185,http://localhost:5186,http://localhost:5187,http://localhost:5188,http://localhost:5189,http://localhost:5190,http://localhost:5191,http://localhost:5195,http://localhost:8081 CREDITS_SIGNUP_BONUS=150 CREDITS_DAILY_FREE=5 @@ -142,7 +142,7 @@ UMAMI_WEBSITE_ID_MUKKE_LANDING=b2c9ab34-3c53-4463-9dde-1ecf098886a5 # Chat Backend CHAT_BACKEND_PORT=3002 -CHAT_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +CHAT_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform DEV_BYPASS_AUTH=true DEV_USER_ID=00000000-0000-0000-0000-000000000000 @@ -174,7 +174,7 @@ MAERCHENZAUBER_REPLICATE_API_KEY=YOUR_KEY # ============================================ CARDS_BACKEND_PORT=3009 -CARDS_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +CARDS_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform CARDS_APP_ID=cea4bfc6-a4de-4e17-91e2-54275940156e # ============================================ @@ -183,7 +183,7 @@ CARDS_APP_ID=cea4bfc6-a4de-4e17-91e2-54275940156e PICTURE_BACKEND_PORT=3006 PICTURE_BACKEND_URL=http://localhost:3006 -PICTURE_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +PICTURE_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # Replicate API Token for AI image generation PICTURE_REPLICATE_API_TOKEN=r8_QlvkstNhIc6NBX1ktpQ6ibvzOE2d2UQ1Emamd @@ -194,14 +194,14 @@ PICTURE_STORAGE_PUBLIC_URL=http://localhost:9000/picture-storage # Credit System (staging only - freemium: 3 free images, then credits) PICTURE_APP_ID=picture-app -PICTURE_MANA_CORE_SERVICE_KEY= +PICTURE_MANA_SERVICE_KEY= # ============================================ # NUTRIPHI PROJECT # ============================================ NUTRIPHI_BACKEND_PORT=3023 -NUTRIPHI_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +NUTRIPHI_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform NUTRIPHI_APP_ID=nutriphi # Google Gemini API for food image analysis @@ -215,14 +215,14 @@ NUTRIPHI_S3_PUBLIC_URL=http://localhost:9000/nutriphi-storage # ============================================ ZITARE_BACKEND_PORT=3007 -ZITARE_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +ZITARE_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # ============================================ # ZITARE TELEGRAM BOT # ============================================ ZITARE_BOT_PORT=3303 -ZITARE_BOT_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +ZITARE_BOT_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform ZITARE_BOT_TELEGRAM_TOKEN=8489424174:AAHHG_mlLVeu6xAWY6U2ZGXO0D8JKWnqBvg # ============================================ @@ -230,7 +230,7 @@ ZITARE_BOT_TELEGRAM_TOKEN=8489424174:AAHHG_mlLVeu6xAWY6U2ZGXO0D8JKWnqBvg # ============================================ TODO_BOT_PORT=3304 -TODO_BOT_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +TODO_BOT_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform TODO_BOT_TELEGRAM_TOKEN=8363906368:AAHzNC1DPSb0TUb2a3UGWWH1_rrAQFdBv2w TODO_BOT_API_URL=http://localhost:3018 @@ -239,14 +239,14 @@ TODO_BOT_API_URL=http://localhost:3018 # ============================================ PRESI_BACKEND_PORT=3008 -PRESI_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +PRESI_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # ============================================ # VOXEL-LAVA PROJECT # ============================================ VOXEL_LAVA_BACKEND_PORT=3010 -VOXEL_LAVA_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +VOXEL_LAVA_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform VOXEL_LAVA_API_URL=http://localhost:3010 # ============================================ @@ -254,7 +254,7 @@ VOXEL_LAVA_API_URL=http://localhost:3010 # ============================================ CONTACTS_BACKEND_PORT=3015 -CONTACTS_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +CONTACTS_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # S3 Storage for contact photos CONTACTS_S3_BUCKET=contacts-photos @@ -273,7 +273,7 @@ CONTACTS_GOOGLE_REDIRECT_URI=http://localhost:5184/import?tab=google CALENDAR_BACKEND_PORT=3014 CALENDAR_BACKEND_URL=http://localhost:3014 -CALENDAR_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +CALENDAR_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # Speech-to-Text Service (mana-stt) # Production: https://stt-api.mana.how @@ -285,7 +285,7 @@ STT_URL=https://stt-api.mana.how # ============================================ CONTEXT_BACKEND_PORT=3020 -CONTEXT_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +CONTEXT_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # AI API Keys (server-side only) CONTEXT_AZURE_OPENAI_API_KEY=YOUR_KEY @@ -297,7 +297,7 @@ CONTEXT_GOOGLE_API_KEY=YOUR_KEY # ============================================ STORAGE_BACKEND_PORT=3016 -STORAGE_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +STORAGE_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform STORAGE_S3_PUBLIC_URL=http://localhost:9000/storage-storage STORAGE_MAX_FILE_SIZE=104857600 STORAGE_MAX_FILES_PER_UPLOAD=10 @@ -307,7 +307,7 @@ STORAGE_MAX_FILES_PER_UPLOAD=10 # ============================================ CLOCK_BACKEND_PORT=3017 -CLOCK_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +CLOCK_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # ============================================ # TODO PROJECT @@ -315,14 +315,14 @@ CLOCK_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platfor TODO_BACKEND_PORT=3018 TODO_BACKEND_URL=http://localhost:3018 -TODO_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +TODO_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # ============================================ # MOODLIT PROJECT # ============================================ MOODLIT_BACKEND_PORT=3012 -MOODLIT_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +MOODLIT_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # ============================================ # MANA-GAMES PROJECT @@ -351,14 +351,14 @@ MANA_GAMES_GITHUB_REPO=mana-games # ============================================ FINANCE_BACKEND_PORT=3019 -FINANCE_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +FINANCE_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # ============================================ # INVENTORY PROJECT # ============================================ INVENTORY_BACKEND_PORT=3020 -INVENTORY_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +INVENTORY_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform INVENTORY_S3_PUBLIC_URL=http://localhost:9000/inventory-storage # ============================================ @@ -366,14 +366,14 @@ INVENTORY_S3_PUBLIC_URL=http://localhost:9000/inventory-storage # ============================================ TECHBASE_BACKEND_PORT=3021 -TECHBASE_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +TECHBASE_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # ============================================ # PLANTA PROJECT # ============================================ PLANTA_BACKEND_PORT=3022 -PLANTA_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +PLANTA_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform PLANTA_S3_PUBLIC_URL=http://localhost:9000/planta-storage # Google Gemini API for plant vision analysis @@ -384,27 +384,27 @@ PLANTA_GEMINI_API_KEY=AIzaSyC_-hPWpVttTlqJdU4jbXR5H0OAnRi2LgI # ============================================ TRACES_BACKEND_PORT=3026 -TRACES_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +TRACES_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # ============================================ # SKILLTREE PROJECT # ============================================ SKILLTREE_BACKEND_PORT=3024 -SKILLTREE_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +SKILLTREE_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # ============================================ # MUKKE PROJECT # ============================================ MUKKE_BACKEND_PORT=3010 -MUKKE_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +MUKKE_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform # ============================================ # CITYCORNERS PROJECT # ============================================ CITYCORNERS_BACKEND_PORT=3025 -CITYCORNERS_DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mana_platform +CITYCORNERS_DATABASE_URL=postgresql://mana:devpassword@localhost:5432/mana_platform CITYCORNERS_WEB_PORT=5196 # ============================================ diff --git a/.env.macmini.example b/.env.macmini.example index 31b2f2eb3..1dfb26efc 100644 --- a/.env.macmini.example +++ b/.env.macmini.example @@ -13,7 +13,7 @@ REDIS_PASSWORD=your-redis-password-here # ============================================ # JWT Keys (generate with: openssl rand -base64 32) -# For EdDSA keys, use mana-core-auth key generation +# For EdDSA keys, use mana-auth key generation # ============================================ JWT_SECRET=your-jwt-secret-here # Leave empty to use auto-generated keys diff --git a/.github/workflows/cd-macmini.yml b/.github/workflows/cd-macmini.yml index 0c9926aee..35728bef7 100644 --- a/.github/workflows/cd-macmini.yml +++ b/.github/workflows/cd-macmini.yml @@ -56,7 +56,7 @@ concurrency: cancel-in-progress: false # Don't cancel in-progress deploys env: - PROJECT_DIR: /Users/mana/projects/manacore-monorepo + PROJECT_DIR: /Users/mana/projects/mana-monorepo COMPOSE_FILE: docker-compose.macmini.yml ENV_FILE: .env.macmini DEPLOY_NOTIFY_ROOM_ID: ${{ secrets.DEPLOY_NOTIFY_ROOM_ID }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e6f68dc24..d1115af66 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -57,7 +57,7 @@ jobs: mana-crawler: ${{ steps.changes.outputs.mana-crawler }} mana-credits: ${{ steps.changes.outputs.mana-credits }} mana-search: ${{ steps.changes.outputs.mana-search }} - manacore-web: ${{ steps.changes.outputs.manacore-web }} + mana-web: ${{ steps.changes.outputs.mana-web }} chat-backend: ${{ steps.changes.outputs.chat-backend }} chat-web: ${{ steps.changes.outputs.chat-web }} todo-backend: ${{ steps.changes.outputs.todo-backend }} @@ -96,7 +96,7 @@ jobs: echo "mana-crawler=true" >> $GITHUB_OUTPUT echo "mana-credits=true" >> $GITHUB_OUTPUT echo "mana-search=true" >> $GITHUB_OUTPUT - echo "manacore-web=true" >> $GITHUB_OUTPUT + echo "mana-web=true" >> $GITHUB_OUTPUT echo "chat-backend=true" >> $GITHUB_OUTPUT echo "chat-web=true" >> $GITHUB_OUTPUT echo "todo-backend=true" >> $GITHUB_OUTPUT @@ -139,7 +139,7 @@ jobs: echo "mana-crawler=true" >> $GITHUB_OUTPUT echo "mana-credits=true" >> $GITHUB_OUTPUT echo "mana-search=true" >> $GITHUB_OUTPUT - echo "manacore-web=true" >> $GITHUB_OUTPUT + echo "mana-web=true" >> $GITHUB_OUTPUT echo "chat-backend=true" >> $GITHUB_OUTPUT echo "chat-web=true" >> $GITHUB_OUTPUT echo "todo-backend=true" >> $GITHUB_OUTPUT @@ -228,12 +228,12 @@ jobs: fi done - # manacore-web: apps/manacore/apps/web + shared packages - MANACORE_WEB_CHANGED=$(check_pattern "apps/manacore/apps/web/|apps/manacore/packages/") + # mana-web: apps/mana/apps/web + shared packages + MANACORE_WEB_CHANGED=$(check_pattern "apps/mana/apps/web/|apps/mana/packages/") if [ "$COMMON_CHANGED" == "true" ] || [ "$SHARED_AUTH_CHANGED" == "true" ] || [ "$SHARED_UI_CHANGED" == "true" ] || [ "$SHARED_WEB_CHANGED" == "true" ] || [ "$MANACORE_WEB_CHANGED" == "true" ]; then - echo "manacore-web=true" >> $GITHUB_OUTPUT + echo "mana-web=true" >> $GITHUB_OUTPUT else - echo "manacore-web=false" >> $GITHUB_OUTPUT + echo "mana-web=false" >> $GITHUB_OUTPUT fi # chat-backend: apps/chat/apps/backend + packages @@ -401,7 +401,7 @@ jobs: echo "| mana-crawler | ${{ steps.changes.outputs.mana-crawler }} |" >> $GITHUB_STEP_SUMMARY echo "| mana-credits | ${{ steps.changes.outputs.mana-credits }} |" >> $GITHUB_STEP_SUMMARY echo "| mana-search | ${{ steps.changes.outputs.mana-search }} |" >> $GITHUB_STEP_SUMMARY - echo "| manacore-web | ${{ steps.changes.outputs.manacore-web }} |" >> $GITHUB_STEP_SUMMARY + echo "| mana-web | ${{ steps.changes.outputs.mana-web }} |" >> $GITHUB_STEP_SUMMARY echo "| chat-backend | ${{ steps.changes.outputs.chat-backend }} |" >> $GITHUB_STEP_SUMMARY echo "| chat-web | ${{ steps.changes.outputs.chat-web }} |" >> $GITHUB_STEP_SUMMARY echo "| todo-backend | ${{ steps.changes.outputs.todo-backend }} |" >> $GITHUB_STEP_SUMMARY @@ -721,11 +721,11 @@ jobs: cache-from: type=gha cache-to: type=gha,mode=max - build-manacore-web: - name: Build manacore-web + build-mana-web: + name: Build mana-web runs-on: ubuntu-latest needs: detect-changes - if: needs.detect-changes.outputs.manacore-web == 'true' + if: needs.detect-changes.outputs.mana-web == 'true' steps: - uses: actions/checkout@v4 - uses: docker/setup-qemu-action@v3 @@ -738,12 +738,12 @@ jobs: - uses: docker/metadata-action@v5 id: meta with: - images: ghcr.io/${{ github.repository_owner }}/manacore-web + images: ghcr.io/${{ github.repository_owner }}/mana-web tags: type=raw,value=latest - uses: docker/build-push-action@v5 with: context: . - file: apps/manacore/apps/web/Dockerfile + file: apps/mana/apps/web/Dockerfile platforms: linux/amd64,linux/arm64 push: true tags: ${{ steps.meta.outputs.tags }} diff --git a/.github/workflows/daily-tests.yml b/.github/workflows/daily-tests.yml index 21932aa0b..e7ce949a4 100644 --- a/.github/workflows/daily-tests.yml +++ b/.github/workflows/daily-tests.yml @@ -47,9 +47,9 @@ jobs: postgres: image: postgres:16-alpine env: - POSTGRES_USER: manacore + POSTGRES_USER: mana POSTGRES_PASSWORD: testpassword - POSTGRES_DB: manacore + POSTGRES_DB: mana options: >- --health-cmd pg_isready --health-interval 10s @@ -92,17 +92,17 @@ jobs: - name: Setup test database working-directory: services/mana-auth env: - DATABASE_URL: postgresql://manacore:testpassword@localhost:5432/manacore + DATABASE_URL: postgresql://mana:testpassword@localhost:5432/mana run: pnpm run db:migrate - name: Run tests with coverage working-directory: services/mana-auth env: - DATABASE_URL: postgresql://manacore:testpassword@localhost:5432/manacore + DATABASE_URL: postgresql://mana:testpassword@localhost:5432/mana REDIS_URL: redis://localhost:6379 NODE_ENV: test - JWT_ISSUER: manacore - JWT_AUDIENCE: manacore + JWT_ISSUER: mana + JWT_AUDIENCE: mana run: | if [ "${{ github.event.inputs.verbose }}" = "true" ]; then pnpm run test:cov --verbose @@ -140,9 +140,9 @@ jobs: postgres: image: postgres:16-alpine env: - POSTGRES_USER: manacore + POSTGRES_USER: mana POSTGRES_PASSWORD: testpassword - POSTGRES_DB: manacore + POSTGRES_DB: mana options: >- --health-cmd pg_isready --health-interval 10s @@ -185,16 +185,16 @@ jobs: - name: Setup databases for integration tests working-directory: services/mana-auth env: - DATABASE_URL: postgresql://manacore:testpassword@localhost:5432/manacore + DATABASE_URL: postgresql://mana:testpassword@localhost:5432/mana run: pnpm run db:migrate - name: Run integration tests env: - DATABASE_URL: postgresql://manacore:testpassword@localhost:5432/manacore + DATABASE_URL: postgresql://mana:testpassword@localhost:5432/mana REDIS_URL: redis://localhost:6379 NODE_ENV: test - JWT_ISSUER: manacore - JWT_AUDIENCE: manacore + JWT_ISSUER: mana + JWT_AUDIENCE: mana run: | # Run auth integration tests cd services/mana-auth @@ -278,7 +278,7 @@ jobs: curl -X POST "$DISCORD_WEBHOOK_URL" \ -H 'Content-Type: application/json' \ -d "{ - \"username\": \"ManaCore CI/CD\", + \"username\": \"Mana CI/CD\", \"avatar_url\": \"https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png\", \"embeds\": [{ \"title\": \"$TITLE\", @@ -312,7 +312,7 @@ jobs: } ], \"footer\": { - \"text\": \"ManaCore Monorepo\" + \"text\": \"Mana Monorepo\" }, \"timestamp\": \"$(date -u +%Y-%m-%dT%H:%M:%SZ)\" }] diff --git a/.github/workflows/mirror-to-forgejo.yml b/.github/workflows/mirror-to-forgejo.yml index 82584822e..9b0f20415 100644 --- a/.github/workflows/mirror-to-forgejo.yml +++ b/.github/workflows/mirror-to-forgejo.yml @@ -17,7 +17,7 @@ jobs: steps: - name: Mirror to Forgejo via SSH run: | - cd /Users/mana/projects/manacore-monorepo + cd /Users/mana/projects/mana-monorepo # Stash any local changes so pull never fails git stash --quiet 2>/dev/null || true @@ -25,5 +25,5 @@ jobs: # Push to Forgejo via localhost SSH (runner is on the Mac Mini) GIT_SSH_COMMAND='ssh -p 2222 -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=no' \ - git push ssh://git@localhost:2222/till/manacore-monorepo.git main 2>&1 + git push ssh://git@localhost:2222/till/mana-monorepo.git main 2>&1 echo "Mirrored to Forgejo" diff --git a/CLAUDE.md b/CLAUDE.md index 62b644ad7..8872a1fa0 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -4,9 +4,9 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co ## Monorepo Overview -This is a pnpm workspace monorepo with a **unified web application** (`apps/manacore/apps/web`) serving 27+ product modules. All modules share one SvelteKit app, one IndexedDB database, one auth session, and one deployment. Backend services use Hono/Bun compute servers. Data follows a local-first architecture (Dexie.js + mana-sync). +This is a pnpm workspace monorepo with a **unified web application** (`apps/mana/apps/web`) serving 27+ product modules. All modules share one SvelteKit app, one IndexedDB database, one auth session, and one deployment. Backend services use Hono/Bun compute servers. Data follows a local-first architecture (Dexie.js + mana-sync). -**Unified App:** `apps/manacore/apps/web` — the main web interface at `mana.how` +**Unified App:** `apps/mana/apps/web` — the main web interface at `mana.how` **Standalone Web Apps:** Archived to `apps/*/apps/web-archived/` (superseded by unified app) **Active Standalone:** matrix, manavoxel, arcade (separate containers, not yet unified) @@ -35,7 +35,7 @@ For comprehensive guidelines on code patterns and conventions, see the `.claude/ ## Projects -### Unified App — ManaCore (`apps/manacore/apps/web`) +### Unified App — Mana (`apps/mana/apps/web`) The main web interface serving 27+ modules. All modules share one SvelteKit build, one IndexedDB, one auth session. Each module lives in `src/lib/modules/{name}/`. @@ -97,7 +97,7 @@ Archived apps are excluded from the pnpm workspace. | **clock** | Consolidated into Times | | **wisekeep** | Inactive, not integrated into unified app | -**Note:** Standalone web apps (`apps/*/apps/web-archived/`) are also archived but remain within their project directories. Only the unified ManaCore web app (`apps/manacore/apps/web`) is active. +**Note:** Standalone web apps (`apps/*/apps/web-archived/`) are also archived but remain within their project directories. Only the unified Mana web app (`apps/mana/apps/web`) is active. ## Development Commands @@ -136,7 +136,7 @@ pnpm setup:db:auth # Setup just auth ```bash # Start specific project (runs all apps in project) -pnpm run manacore:dev +pnpm run mana:dev pnpm run memoro:dev pnpm run cards:dev pnpm run picture:dev @@ -163,7 +163,7 @@ Each project has its own `CLAUDE.md` with detailed project-specific commands. ### Monorepo Structure ``` -manacore-monorepo/ +mana-monorepo/ ├── apps/ # Active SaaS product applications │ ├── chat/ │ │ ├── apps/ @@ -290,7 +290,7 @@ Parent workspace packages (e.g., `apps/chat/package.json`, `apps/zitare/package. - Hono 4.x + Bun runtime - TypeScript, Drizzle ORM (where needed) -- `@manacore/shared-hono` for auth middleware +- `@mana/shared-hono` for auth middleware ### Authentication Architecture @@ -315,15 +315,15 @@ All projects use **mana-core-auth** as the central authentication service: | Component | Purpose | | ------------------------------- | -------------------------------------------------- | | `services/mana-auth` | Central auth service (Better Auth + EdDSA JWT) | -| `@manacore/shared-hono` | Shared Hono middleware for JWT validation | -| `@manacore/shared-auth` | Client-side auth for web/mobile apps | +| `@mana/shared-hono` | Shared Hono middleware for JWT validation | +| `@mana/shared-auth` | Client-side auth for web/mobile apps | #### Hono Server Auth Integration -All compute servers use `@manacore/shared-hono` for auth: +All compute servers use `@mana/shared-hono` for auth: ```typescript -import { authMiddleware, healthRoute, errorHandler, notFoundHandler } from '@manacore/shared-hono'; +import { authMiddleware, healthRoute, errorHandler, notFoundHandler } from '@mana/shared-hono'; const app = new Hono(); app.onError(errorHandler); @@ -342,7 +342,7 @@ app.get('/api/v1/data', (c) => { ```env # All servers need this -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 CORS_ORIGINS=http://localhost:5173 ``` @@ -355,8 +355,8 @@ CORS_ORIGINS=http://localhost:5173 "role": "user", "sid": "session-id", "exp": 1764606251, - "iss": "manacore", - "aud": "manacore" + "iss": "mana", + "aud": "mana" } ``` @@ -595,11 +595,11 @@ All web apps use a **local-first** data layer: reads/writes go to IndexedDB (Dex ### Unified IndexedDB Architecture -The ManaCore unified app uses a **single IndexedDB** (`manacore`) containing all 120+ collections from all apps. Table names that collide across apps are prefixed (e.g., `todoProjects`, `cardDecks`, `presiDecks`). +The Mana unified app uses a **single IndexedDB** (`mana`) containing all 120+ collections from all apps. Table names that collide across apps are prefixed (e.g., `todoProjects`, `cardDecks`, `presiDecks`). ``` ┌─────────────────────────────────────────────┐ -│ Unified IndexedDB: "manacore" │ +│ Unified IndexedDB: "mana" │ │ │ │ tasks, todoProjects, labels, ... (todo) │ │ calendars, events (calendar) │ @@ -629,9 +629,9 @@ The ManaCore unified app uses a **single IndexedDB** (`manacore`) containing all | File | Purpose | |------|---------| -| `apps/manacore/apps/web/src/lib/data/database.ts` | Unified Dexie DB, SYNC_APP_MAP, table name mappings, Dexie hooks | -| `apps/manacore/apps/web/src/lib/data/sync.ts` | Unified sync engine (push/pull/WS per appId) | -| `apps/manacore/apps/web/src/lib/data/legacy-migration.ts` | One-time migration from old per-app DBs | +| `apps/mana/apps/web/src/lib/data/database.ts` | Unified Dexie DB, SYNC_APP_MAP, table name mappings, Dexie hooks | +| `apps/mana/apps/web/src/lib/data/sync.ts` | Unified sync engine (push/pull/WS per appId) | +| `apps/mana/apps/web/src/lib/data/legacy-migration.ts` | One-time migration from old per-app DBs | | `packages/local-store/` | Standalone local-store (used by individual apps, not the unified app) | | `services/mana-sync/` | Go sync server (WebSocket push, field-level LWW) | @@ -653,7 +653,7 @@ The ManaCore unified app uses a **single IndexedDB** (`manacore`) containing all ### Standalone Apps (Legacy) -Individual apps in `apps/*/apps/web/` still use `@manacore/local-store` with per-app IndexedDB databases (`manacore-{appId}`). When users first open the unified ManaCore app, `legacy-migration.ts` migrates data from these old DBs into the unified DB. +Individual apps in `apps/*/apps/web/` still use `@mana/local-store` with per-app IndexedDB databases (`mana-{appId}`). When users first open the unified Mana app, `legacy-migration.ts` migrates data from these old DBs into the unified DB. ### Dev Commands (Local-First Stack) @@ -669,21 +669,21 @@ pnpm dev:todo:full # Everything incl. auth + DB setup | Package | Purpose | | ------------------------------- | ----------------------------------------------- | -| `@manacore/local-store` | Local-first data layer (Dexie.js + sync engine) | -| `@manacore/shared-hono` | Shared Hono middleware (auth, health, errors) | -| `@manacore/shared-auth` | Client-side auth service for web/mobile apps | -| `@manacore/shared-storage` | S3-compatible storage (MinIO) | -| `@manacore/shared-types` | Common TypeScript types | -| `@manacore/shared-utils` | Utility functions | -| `@manacore/shared-ui` | React Native UI components | -| `@manacore/shared-theme` | Theme configuration | -| `@manacore/shared-i18n` | Internationalization | +| `@mana/local-store` | Local-first data layer (Dexie.js + sync engine) | +| `@mana/shared-hono` | Shared Hono middleware (auth, health, errors) | +| `@mana/shared-auth` | Client-side auth service for web/mobile apps | +| `@mana/shared-storage` | S3-compatible storage (MinIO) | +| `@mana/shared-types` | Common TypeScript types | +| `@mana/shared-utils` | Utility functions | +| `@mana/shared-ui` | React Native UI components | +| `@mana/shared-theme` | Theme configuration | +| `@mana/shared-i18n` | Internationalization | Import shared packages: ```typescript -import { createAuthService } from '@manacore/shared-auth'; -import { formatDate, truncate } from '@manacore/shared-utils'; +import { createAuthService } from '@mana/shared-auth'; +import { formatDate, truncate } from '@mana/shared-utils'; ``` ## Database Architecture (PostgreSQL) @@ -771,7 +771,7 @@ pnpm docker:up ### Usage in Server ```typescript -import { createPictureStorage, generateUserFileKey, getContentType } from '@manacore/shared-storage'; +import { createPictureStorage, generateUserFileKey, getContentType } from '@mana/shared-storage'; const storage = createPictureStorage(); @@ -809,7 +809,7 @@ All landing pages are deployed to Cloudflare Pages using Direct Upload via Wrang |---------|---------|-------------------|-----| | Chat | `@chat/landing` | `chat-landing` | https://chat-landing.pages.dev | | Picture | `@picture/landing` | `picture-landing` | https://picture-landing.pages.dev | -| ManaCore | `@manacore/landing` | `manacore-landing` | https://manacore-landing.pages.dev | +| Mana | `@mana/landing` | `mana-landing` | https://mana-landing.pages.dev | | Cards | `@cards/landing` | `cards-landing` | https://cards-landing.pages.dev | | Zitare | `@zitare/landing` | `zitare-landing` | https://zitare-landing.pages.dev | @@ -825,7 +825,7 @@ pnpm cf:projects:create # Deploy individual landing page pnpm deploy:landing:chat pnpm deploy:landing:picture -pnpm deploy:landing:manacore +pnpm deploy:landing:mana pnpm deploy:landing:cards pnpm deploy:landing:zitare @@ -880,11 +880,11 @@ See `services/mana-landing-builder/CLAUDE.md` for full documentation. ## ManaScore (Production Readiness) -ManaScore is the internal quality assessment system for all ManaCore apps. Each app is rated on a 0-100 scale across 8 categories plus extended metrics. +ManaScore is the internal quality assessment system for all Mana apps. Each app is rated on a 0-100 scale across 8 categories plus extended metrics. -**Location:** `apps/manacore/apps/landing/src/content/manascore/` -**Live:** https://manacore-landing.pages.dev/manascore -**Methodology:** https://manacore-landing.pages.dev/manascore/about +**Location:** `apps/mana/apps/landing/src/content/manascore/` +**Live:** https://mana-landing.pages.dev/manascore +**Methodology:** https://mana-landing.pages.dev/manascore/about ### Core Categories (8) @@ -941,7 +941,7 @@ Host mana-server ```bash ssh mana-server # Connect to server -cd ~/projects/manacore-monorepo +cd ~/projects/mana-monorepo ./scripts/mac-mini/status.sh # Check all services ./scripts/mac-mini/deploy.sh # Pull & restart containers @@ -1003,7 +1003,7 @@ pnpm add --filter memoro pnpm add --filter @memoro/mobile # Add to shared package -pnpm add --filter @manacore/shared-utils +pnpm add --filter @mana/shared-utils ``` ## Environment Variables @@ -1059,7 +1059,7 @@ PUBLIC_SUPABASE_ANON_KEY=... ``` PORT=... DATABASE_URL=... -MANA_CORE_AUTH_URL=... +MANA_AUTH_URL=... ``` ## Project-Specific Documentation @@ -1070,7 +1070,7 @@ MANA_CORE_AUTH_URL=... Each project has its own `CLAUDE.md` with detailed information: -- `apps/manacore/CLAUDE.md` - Multi-app ecosystem, auth details +- `apps/mana/CLAUDE.md` - Multi-app ecosystem, auth details - `apps/cards/CLAUDE.md` - Card/deck management - `apps/chat/CLAUDE.md` - Chat API endpoints, AI models - `apps/picture/CLAUDE.md` - AI image generation diff --git a/NewAppIdeas/Roblox Reimagined/Stack-Optionen-Manacore.md b/NewAppIdeas/Roblox Reimagined/Stack-Optionen-Manacore.md index e1abf7158..eb77c8837 100644 --- a/NewAppIdeas/Roblox Reimagined/Stack-Optionen-Manacore.md +++ b/NewAppIdeas/Roblox Reimagined/Stack-Optionen-Manacore.md @@ -29,7 +29,7 @@ Wir betreiben bereits ein komplexes, polyglot, selbst-gehostetes Oekosystem: | **Hono Services (5)** | Hono 4.7 + Bun, Drizzle ORM | auth, credits, user, subscriptions, analytics | | **Python AI (5+)** | FastAPI, MLX, Whisper, FLUX | llm, image-gen, stt, tts, voice-bot | | **Frontend (19 Apps)** | SvelteKit 2 + Svelte 5 + Tailwind 4 | Todo, Chat, Calendar, Photos, etc. | -| **Mobile** | Expo 55 + React Native 0.83 + NativeWind | ManaCore, Traces | +| **Mobile** | Expo 55 + React Native 0.83 + NativeWind | Mana, Traces | | **Local-First** | Dexie.js + mana-sync (Go WebSocket) | 19 Apps migriert | | **Datenbank** | PostgreSQL 16 | Alle Services | | **Cache** | Redis 7 | Rate Limiting, Sessions | diff --git a/apps/api/package.json b/apps/api/package.json index 3580ee624..46f2e3aec 100644 --- a/apps/api/package.json +++ b/apps/api/package.json @@ -1,5 +1,5 @@ { - "name": "@manacore/api", + "name": "@mana/api", "version": "1.0.0", "private": true, "type": "module", @@ -10,9 +10,9 @@ "type-check": "tsc --noEmit" }, "dependencies": { - "@manacore/media-client": "workspace:*", - "@manacore/shared-hono": "workspace:*", - "@manacore/shared-storage": "workspace:*", + "@mana/media-client": "workspace:*", + "@mana/shared-hono": "workspace:*", + "@mana/shared-storage": "workspace:*", "@mozilla/readability": "^0.5.0", "drizzle-orm": "^0.38.0", "hono": "^4.7.0", diff --git a/apps/api/src/index.ts b/apps/api/src/index.ts index 8972d2d08..275edd6ce 100644 --- a/apps/api/src/index.ts +++ b/apps/api/src/index.ts @@ -1,5 +1,5 @@ /** - * ManaCore Unified API Server + * Mana Unified API Server * * Consolidates all app compute servers into one Hono/Bun process. * Each module registers its routes under /api/v1/{module}/*. @@ -13,7 +13,7 @@ import { errorHandler, notFoundHandler, rateLimitMiddleware, -} from '@manacore/shared-hono'; +} from '@mana/shared-hono'; // Module routes import { calendarRoutes } from './modules/calendar/routes'; diff --git a/apps/api/src/lib/media.ts b/apps/api/src/lib/media.ts index e9d1ed969..a0929d0b6 100644 --- a/apps/api/src/lib/media.ts +++ b/apps/api/src/lib/media.ts @@ -3,7 +3,7 @@ * for CAS deduplication, thumbnail generation, and Photos gallery visibility. */ -import { MediaClient, type MediaResult } from '@manacore/media-client'; +import { MediaClient, type MediaResult } from '@mana/media-client'; const MEDIA_URL = process.env.MANA_MEDIA_URL || 'http://localhost:3015'; let client: MediaClient | null = null; diff --git a/apps/api/src/modules/chat/routes.ts b/apps/api/src/modules/chat/routes.ts index 4393d10ab..df6aa607f 100644 --- a/apps/api/src/modules/chat/routes.ts +++ b/apps/api/src/modules/chat/routes.ts @@ -8,7 +8,7 @@ import { Hono } from 'hono'; import { streamSSE } from 'hono/streaming'; -import { consumeCredits, validateCredits } from '@manacore/shared-hono/credits'; +import { consumeCredits, validateCredits } from '@mana/shared-hono/credits'; const LLM_URL = process.env.MANA_LLM_URL || 'http://localhost:3025'; diff --git a/apps/api/src/modules/contacts/routes.ts b/apps/api/src/modules/contacts/routes.ts index 1ea988d8d..8a6a0051a 100644 --- a/apps/api/src/modules/contacts/routes.ts +++ b/apps/api/src/modules/contacts/routes.ts @@ -34,7 +34,7 @@ routes.post('/:id/avatar', async (c) => { if (file.type === 'image/svg+xml') { // SVGs stay on shared-storage (Sharp can't process SVG) const { createContactsStorage, generateUserFileKey } = await import( - '@manacore/shared-storage' + '@mana/shared-storage' ); const storage = createContactsStorage(); const key = generateUserFileKey(userId, `avatar-${c.req.param('id')}.svg`); diff --git a/apps/api/src/modules/context/routes.ts b/apps/api/src/modules/context/routes.ts index 4bb02eec5..15305ffa7 100644 --- a/apps/api/src/modules/context/routes.ts +++ b/apps/api/src/modules/context/routes.ts @@ -6,7 +6,7 @@ */ import { Hono } from 'hono'; -import { consumeCredits, validateCredits } from '@manacore/shared-hono/credits'; +import { consumeCredits, validateCredits } from '@mana/shared-hono/credits'; const LLM_URL = process.env.MANA_LLM_URL || 'http://localhost:3025'; diff --git a/apps/api/src/modules/music/routes.ts b/apps/api/src/modules/music/routes.ts index b75b83fb7..41a2782e7 100644 --- a/apps/api/src/modules/music/routes.ts +++ b/apps/api/src/modules/music/routes.ts @@ -18,7 +18,7 @@ routes.post('/songs/upload', async (c) => { const key = `users/${userId}/songs/${songId}/${filename}`; try { - const { createMusicStorage } = await import('@manacore/shared-storage'); + const { createMusicStorage } = await import('@mana/shared-storage'); const storage = createMusicStorage(); const uploadUrl = await storage.getUploadUrl(key, { expiresIn: 3600 }); @@ -38,7 +38,7 @@ routes.get('/songs/:id/download-url', async (c) => { if (!storagePath) return c.json({ error: 'storagePath required' }, 400); try { - const { createMusicStorage } = await import('@manacore/shared-storage'); + const { createMusicStorage } = await import('@mana/shared-storage'); const storage = createMusicStorage(); const url = await storage.getDownloadUrl(storagePath, { expiresIn: 3600 }); return c.json({ url }); @@ -83,7 +83,7 @@ routes.get('/songs/:id/cover-url', async (c) => { if (!coverArtPath) return c.json({ url: null }); try { - const { createMusicStorage } = await import('@manacore/shared-storage'); + const { createMusicStorage } = await import('@mana/shared-storage'); const storage = createMusicStorage(); const url = await storage.getDownloadUrl(coverArtPath, { expiresIn: 3600 }); return c.json({ url }); @@ -99,7 +99,7 @@ routes.post('/library/cover-urls', async (c) => { if (!paths?.length) return c.json({ urls: {} }); try { - const { createMusicStorage } = await import('@manacore/shared-storage'); + const { createMusicStorage } = await import('@mana/shared-storage'); const storage = createMusicStorage(); const urls: Record = {}; diff --git a/apps/api/src/modules/news/routes.ts b/apps/api/src/modules/news/routes.ts index df51e64d4..3a0e30eb6 100644 --- a/apps/api/src/modules/news/routes.ts +++ b/apps/api/src/modules/news/routes.ts @@ -16,7 +16,7 @@ import { sql } from 'drizzle-orm'; // ─── DB Connection (reads from sync_changes for feed) ─────── const DATABASE_URL = - process.env.DATABASE_URL ?? 'postgresql://manacore:devpassword@localhost:5432/mana_sync'; + process.env.DATABASE_URL ?? 'postgresql://mana:devpassword@localhost:5432/mana_sync'; const connection = postgres(DATABASE_URL, { max: 10 }); const db = drizzle(connection); diff --git a/apps/api/src/modules/picture/routes.ts b/apps/api/src/modules/picture/routes.ts index c43c8d692..a1b380237 100644 --- a/apps/api/src/modules/picture/routes.ts +++ b/apps/api/src/modules/picture/routes.ts @@ -7,7 +7,7 @@ */ import { Hono } from 'hono'; -import { consumeCredits, validateCredits } from '@manacore/shared-hono/credits'; +import { consumeCredits, validateCredits } from '@mana/shared-hono/credits'; const REPLICATE_TOKEN = process.env.REPLICATE_API_TOKEN || ''; const IMAGE_GEN_URL = process.env.MANA_IMAGE_GEN_URL || ''; diff --git a/apps/api/src/modules/presi/routes.ts b/apps/api/src/modules/presi/routes.ts index c66ffee4e..3adb31d73 100644 --- a/apps/api/src/modules/presi/routes.ts +++ b/apps/api/src/modules/presi/routes.ts @@ -9,7 +9,7 @@ import { Hono } from 'hono'; import { eq, and, gt, or, isNull, asc } from 'drizzle-orm'; import { HTTPException } from 'hono/http-exception'; -import { authMiddleware } from '@manacore/shared-hono/auth'; +import { authMiddleware } from '@mana/shared-hono/auth'; import { drizzle } from 'drizzle-orm/postgres-js'; import postgres from 'postgres'; import { @@ -27,7 +27,7 @@ import { relations } from 'drizzle-orm'; // ─── DB Schema (read-only for share lookups) ──────────────── const DATABASE_URL = - process.env.DATABASE_URL ?? 'postgresql://manacore:devpassword@localhost:5432/mana_platform'; + process.env.DATABASE_URL ?? 'postgresql://mana:devpassword@localhost:5432/mana_platform'; const presiSchema = pgSchema('presi'); diff --git a/apps/api/src/modules/storage/routes.ts b/apps/api/src/modules/storage/routes.ts index 20750f2ff..b87bd08b1 100644 --- a/apps/api/src/modules/storage/routes.ts +++ b/apps/api/src/modules/storage/routes.ts @@ -47,7 +47,7 @@ routes.post('/files/upload', async (c) => { // Non-images -> shared-storage as before const { createStorageStorage, generateUserFileKey, getContentType } = await import( - '@manacore/shared-storage' + '@mana/shared-storage' ); const storage = createStorageStorage(); const key = generateUserFileKey(userId, file.name); @@ -83,7 +83,7 @@ routes.get('/files/:id/download', async (c) => { if (!storagePath) return c.json({ error: 'storagePath required' }, 400); try { - const { createStorageStorage } = await import('@manacore/shared-storage'); + const { createStorageStorage } = await import('@mana/shared-storage'); const storage = createStorageStorage(); if (urlOnly) { @@ -114,7 +114,7 @@ routes.post('/files/:id/versions', async (c) => { if (!file) return c.json({ error: 'No file' }, 400); try { - const { createStorageStorage, generateUserFileKey } = await import('@manacore/shared-storage'); + const { createStorageStorage, generateUserFileKey } = await import('@mana/shared-storage'); const storage = createStorageStorage(); const key = generateUserFileKey(userId, `v-${Date.now()}-${file.name}`); const buffer = Buffer.from(await file.arrayBuffer()); diff --git a/apps/api/src/modules/todo/routes.ts b/apps/api/src/modules/todo/routes.ts index 2a99cc541..32e954959 100644 --- a/apps/api/src/modules/todo/routes.ts +++ b/apps/api/src/modules/todo/routes.ts @@ -18,7 +18,7 @@ import { z } from 'zod'; import { eq, and, asc, sql } from 'drizzle-orm'; import { drizzle } from 'drizzle-orm/postgres-js'; import postgres from 'postgres'; -import { serviceAuthMiddleware } from '@manacore/shared-hono'; +import { serviceAuthMiddleware } from '@mana/shared-hono'; import { pgSchema, uuid, @@ -34,7 +34,7 @@ import { // ─── DB Schema (minimal, server-only) ────────────────────── const DATABASE_URL = - process.env.DATABASE_URL ?? 'postgresql://manacore:devpassword@localhost:5432/mana_platform'; + process.env.DATABASE_URL ?? 'postgresql://mana:devpassword@localhost:5432/mana_platform'; const todoSchema = pgSchema('todo'); diff --git a/apps/api/src/modules/traces/routes.ts b/apps/api/src/modules/traces/routes.ts index 0923ca01b..f924f5b6c 100644 --- a/apps/api/src/modules/traces/routes.ts +++ b/apps/api/src/modules/traces/routes.ts @@ -23,7 +23,7 @@ import { // ─── DB Schema ────────────────────────────────────────────── const DATABASE_URL = - process.env.DATABASE_URL ?? 'postgresql://manacore:devpassword@localhost:5432/mana_platform'; + process.env.DATABASE_URL ?? 'postgresql://mana:devpassword@localhost:5432/mana_platform'; const LLM_URL = process.env.MANA_LLM_URL || 'http://localhost:3025'; const tracesSchema = pgSchema('traces'); diff --git a/apps/calendar/CLAUDE.md b/apps/calendar/CLAUDE.md index a91593642..ccdd97fea 100644 --- a/apps/calendar/CLAUDE.md +++ b/apps/calendar/CLAUDE.md @@ -407,7 +407,7 @@ FREQ=WEEKLY;UNTIL=20241231T235959Z # Wöchentlich bis Ende 2024 NODE_ENV=development PORT=3014 DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/calendar -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 CORS_ORIGINS=http://localhost:5173,http://localhost:5179,http://localhost:8081 # Notifications (optional) @@ -420,14 +420,14 @@ EMAIL_FROM=calendar@mana.how ```env PUBLIC_BACKEND_URL=http://localhost:3014 -PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +PUBLIC_MANA_AUTH_URL=http://localhost:3001 ``` ### Mobile (.env) ```env EXPO_PUBLIC_BACKEND_URL=http://localhost:3014 -EXPO_PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +EXPO_PUBLIC_MANA_AUTH_URL=http://localhost:3001 ``` ## Shared Packages diff --git a/apps/calendar/apps/landing/package.json b/apps/calendar/apps/landing/package.json index a91ada7be..454f295ef 100644 --- a/apps/calendar/apps/landing/package.json +++ b/apps/calendar/apps/landing/package.json @@ -15,7 +15,7 @@ }, "dependencies": { "@astrojs/check": "^0.9.0", - "@manacore/shared-landing-ui": "workspace:*", + "@mana/shared-landing-ui": "workspace:*", "astro": "^5.16.0", "typescript": "^5.9.2" }, diff --git a/apps/calendar/apps/landing/src/layouts/Layout.astro b/apps/calendar/apps/landing/src/layouts/Layout.astro index d36cd01d2..97c49b111 100644 --- a/apps/calendar/apps/landing/src/layouts/Layout.astro +++ b/apps/calendar/apps/landing/src/layouts/Layout.astro @@ -1,6 +1,6 @@ --- import '../styles/global.css'; -import Analytics from '@manacore/shared-landing-ui/atoms/Analytics.astro'; +import Analytics from '@mana/shared-landing-ui/atoms/Analytics.astro'; interface Props { title?: string; diff --git a/apps/calendar/apps/landing/src/pages/index.astro b/apps/calendar/apps/landing/src/pages/index.astro index 56fff2432..63c8e08d5 100644 --- a/apps/calendar/apps/landing/src/pages/index.astro +++ b/apps/calendar/apps/landing/src/pages/index.astro @@ -9,13 +9,13 @@ import Footer from '@components/Footer.astro'; let StepsSection: any = null; let PricingSection: any = null; try { - const shared = await import('@manacore/shared-landing-ui/sections/StepsSection.astro'); + const shared = await import('@mana/shared-landing-ui/sections/StepsSection.astro'); StepsSection = shared.default; } catch { // Shared component not available } try { - const shared = await import('@manacore/shared-landing-ui/sections/PricingSection.astro'); + const shared = await import('@mana/shared-landing-ui/sections/PricingSection.astro'); PricingSection = shared.default; } catch { // Shared component not available diff --git a/apps/cards/CREDIT_SYSTEM.md b/apps/cards/CREDIT_SYSTEM.md index 8d383a6b9..dd97a067b 100644 --- a/apps/cards/CREDIT_SYSTEM.md +++ b/apps/cards/CREDIT_SYSTEM.md @@ -70,7 +70,7 @@ SERVICE_KEY=your-service-key-from-mana-core **backend/src/app.module.ts**: ```typescript -ManaCoreModule.forRootAsync({ +ManaModule.forRootAsync({ imports: [ConfigModule], useFactory: (configService: ConfigService) => ({ serviceKey: configService.get('SERVICE_KEY', ''), diff --git a/apps/cards/MANA_CORE_INTEGRATION_CHECKLIST.md b/apps/cards/MANA_CORE_INTEGRATION_CHECKLIST.md index 00780cb20..1d89c838b 100644 --- a/apps/cards/MANA_CORE_INTEGRATION_CHECKLIST.md +++ b/apps/cards/MANA_CORE_INTEGRATION_CHECKLIST.md @@ -46,12 +46,12 @@ Use this checklist when integrating `@mana-core/nestjs-integration` into a new N ### 3. Module Configuration -- [ ] Import `ManaCoreModule` in `app.module.ts` +- [ ] Import `ManaModule` in `app.module.ts` - [ ] Configure with `forRootAsync()`: ```typescript - ManaCoreModule.forRootAsync({ + ManaModule.forRootAsync({ imports: [ConfigModule], useFactory: (configService: ConfigService) => ({ manaServiceUrl: 'your-mana-url', diff --git a/apps/cards/MANA_CORE_INTEGRATION_GUIDE.md b/apps/cards/MANA_CORE_INTEGRATION_GUIDE.md index a89b63be0..644f1b0d9 100644 --- a/apps/cards/MANA_CORE_INTEGRATION_GUIDE.md +++ b/apps/cards/MANA_CORE_INTEGRATION_GUIDE.md @@ -123,12 +123,12 @@ SIGNUP_REDIRECT_URL=https://yourapp.com/welcome ### Step 2: Import and Configure the Module -In your `app.module.ts`, import and configure `ManaCoreModule`: +In your `app.module.ts`, import and configure `ManaModule`: ```typescript import { Module } from '@nestjs/common'; import { ConfigModule, ConfigService } from '@nestjs/config'; -import { ManaCoreModule } from '@mana-core/nestjs-integration'; +import { ManaModule } from '@mana-core/nestjs-integration'; @Module({ imports: [ @@ -139,7 +139,7 @@ import { ManaCoreModule } from '@mana-core/nestjs-integration'; }), // Mana Core Module - async configuration - ManaCoreModule.forRootAsync({ + ManaModule.forRootAsync({ imports: [ConfigModule], useFactory: (configService: ConfigService) => ({ // Required: Mana service URL @@ -898,7 +898,7 @@ describe('CharacterController', () => { Test with the Mana Core module: ```typescript -import { ManaCoreModule } from '@mana-core/nestjs-integration'; +import { ManaModule } from '@mana-core/nestjs-integration'; describe('CharacterController (e2e)', () => { let app: INestApplication; @@ -910,7 +910,7 @@ describe('CharacterController (e2e)', () => { isGlobal: true, envFilePath: '.env.test', }), - ManaCoreModule.forRootAsync({ + ManaModule.forRootAsync({ imports: [ConfigModule], useFactory: (configService: ConfigService) => ({ manaServiceUrl: configService.get('MANA_SERVICE_URL'), @@ -1028,7 +1028,7 @@ console.log('Device info:', deviceInfo); Enable debug mode to see detailed logs: ```typescript -ManaCoreModule.forRootAsync({ +ManaModule.forRootAsync({ imports: [ConfigModule], useFactory: (configService: ConfigService) => ({ manaServiceUrl: configService.get('MANA_SERVICE_URL'), diff --git a/apps/cards/MANA_CORE_README.md b/apps/cards/MANA_CORE_README.md index 7523793a9..377b06f4a 100644 --- a/apps/cards/MANA_CORE_README.md +++ b/apps/cards/MANA_CORE_README.md @@ -104,11 +104,11 @@ EXPO_PUBLIC_STORYTELLER_BACKEND_URL=http://localhost:3002 **`backend/src/app.module.ts`**: ```typescript -import { ManaCoreModule } from '@mana-core/nestjs-integration'; +import { ManaModule } from '@mana-core/nestjs-integration'; @Module({ imports: [ - ManaCoreModule.forRootAsync({ + ManaModule.forRootAsync({ imports: [ConfigModule], useFactory: (configService: ConfigService) => ({ manaServiceUrl: 'https://mana-core-middleware-111768794939.europe-west3.run.app', diff --git a/apps/cards/SETUP_GUIDE.md b/apps/cards/SETUP_GUIDE.md index b65bcfcfd..d6428c344 100644 --- a/apps/cards/SETUP_GUIDE.md +++ b/apps/cards/SETUP_GUIDE.md @@ -5,7 +5,7 @@ Your Mana Core integration is now **100% complete** with a fully functional credit system! 🎉 ### ✅ Backend (Complete) -- [x] ManaCoreModule configured with environment variables +- [x] ManaModule configured with environment variables - [x] Service key configuration for credit operations - [x] Credit operation types defined (deck creation = 10 mana) - [x] Credit validation before deck creation diff --git a/apps/cards/apps/landing/astro.config.mjs b/apps/cards/apps/landing/astro.config.mjs index 269971b86..1652690c3 100644 --- a/apps/cards/apps/landing/astro.config.mjs +++ b/apps/cards/apps/landing/astro.config.mjs @@ -8,7 +8,7 @@ export default defineConfig({ integrations: [tailwind(), sitemap()], vite: { ssr: { - noExternal: ['@manacore/shared-landing-ui'], + noExternal: ['@mana/shared-landing-ui'], }, }, }); diff --git a/apps/cards/apps/landing/package.json b/apps/cards/apps/landing/package.json index 176a543d3..092e72851 100644 --- a/apps/cards/apps/landing/package.json +++ b/apps/cards/apps/landing/package.json @@ -14,7 +14,7 @@ "dependencies": { "@astrojs/check": "^0.9.0", "@astrojs/sitemap": "^3.2.1", - "@manacore/shared-landing-ui": "workspace:*", + "@mana/shared-landing-ui": "workspace:*", "astro": "^5.16.0", "astro-icon": "^1.1.5", "typescript": "^5.0.0" diff --git a/apps/cards/apps/landing/src/layouts/Layout.astro b/apps/cards/apps/landing/src/layouts/Layout.astro index 7a0f2356c..144e4ea62 100644 --- a/apps/cards/apps/landing/src/layouts/Layout.astro +++ b/apps/cards/apps/landing/src/layouts/Layout.astro @@ -1,6 +1,6 @@ --- import '../styles/global.css'; -import Analytics from '@manacore/shared-landing-ui/atoms/Analytics.astro'; +import Analytics from '@mana/shared-landing-ui/atoms/Analytics.astro'; interface Props { title: string; diff --git a/apps/cards/apps/landing/src/pages/cookies.astro b/apps/cards/apps/landing/src/pages/cookies.astro index 01bb154f2..5e49bb7db 100644 --- a/apps/cards/apps/landing/src/pages/cookies.astro +++ b/apps/cards/apps/landing/src/pages/cookies.astro @@ -1,6 +1,6 @@ --- import Layout from '../layouts/Layout.astro'; -import LegalPageTemplate from '@manacore/shared-landing-ui/templates/LegalPageTemplate.astro'; +import LegalPageTemplate from '@mana/shared-landing-ui/templates/LegalPageTemplate.astro'; --- diff --git a/apps/cards/apps/landing/src/pages/imprint.astro b/apps/cards/apps/landing/src/pages/imprint.astro index 14a51fdc1..13f2ac812 100644 --- a/apps/cards/apps/landing/src/pages/imprint.astro +++ b/apps/cards/apps/landing/src/pages/imprint.astro @@ -1,6 +1,6 @@ --- import Layout from '../layouts/Layout.astro'; -import LegalPageTemplate from '@manacore/shared-landing-ui/templates/LegalPageTemplate.astro'; +import LegalPageTemplate from '@mana/shared-landing-ui/templates/LegalPageTemplate.astro'; --- diff --git a/apps/cards/apps/landing/src/pages/index.astro b/apps/cards/apps/landing/src/pages/index.astro index d0017049c..1838e959a 100644 --- a/apps/cards/apps/landing/src/pages/index.astro +++ b/apps/cards/apps/landing/src/pages/index.astro @@ -4,13 +4,13 @@ import Navigation from '../components/Navigation.astro'; import Footer from '../components/Footer.astro'; // Shared components -import HeroSection from '@manacore/shared-landing-ui/sections/HeroSection.astro'; -import FeatureSection from '@manacore/shared-landing-ui/sections/FeatureSection.astro'; -import StepsSection from '@manacore/shared-landing-ui/sections/StepsSection.astro'; -import FAQSection from '@manacore/shared-landing-ui/sections/FAQSection.astro'; -import CTASection from '@manacore/shared-landing-ui/sections/CTASection.astro'; -import PricingSection from '@manacore/shared-landing-ui/sections/PricingSection.astro'; -import Card from '@manacore/shared-landing-ui/atoms/Card.astro'; +import HeroSection from '@mana/shared-landing-ui/sections/HeroSection.astro'; +import FeatureSection from '@mana/shared-landing-ui/sections/FeatureSection.astro'; +import StepsSection from '@mana/shared-landing-ui/sections/StepsSection.astro'; +import FAQSection from '@mana/shared-landing-ui/sections/FAQSection.astro'; +import CTASection from '@mana/shared-landing-ui/sections/CTASection.astro'; +import PricingSection from '@mana/shared-landing-ui/sections/PricingSection.astro'; +import Card from '@mana/shared-landing-ui/atoms/Card.astro'; // Feature data const features = [ diff --git a/apps/cards/apps/landing/src/pages/pricing.astro b/apps/cards/apps/landing/src/pages/pricing.astro index 485627936..d075ff435 100644 --- a/apps/cards/apps/landing/src/pages/pricing.astro +++ b/apps/cards/apps/landing/src/pages/pricing.astro @@ -2,7 +2,7 @@ import Layout from '../layouts/Layout.astro'; import Navigation from '../components/Navigation.astro'; import Footer from '../components/Footer.astro'; -import ManaPricingSection from '@manacore/shared-landing-ui/sections/ManaPricingSection.astro'; +import ManaPricingSection from '@mana/shared-landing-ui/sections/ManaPricingSection.astro'; --- diff --git a/apps/cards/apps/landing/src/pages/privacy.astro b/apps/cards/apps/landing/src/pages/privacy.astro index b1ee97795..fcad106d7 100644 --- a/apps/cards/apps/landing/src/pages/privacy.astro +++ b/apps/cards/apps/landing/src/pages/privacy.astro @@ -1,6 +1,6 @@ --- import Layout from '../layouts/Layout.astro'; -import LegalPageTemplate from '@manacore/shared-landing-ui/templates/LegalPageTemplate.astro'; +import LegalPageTemplate from '@mana/shared-landing-ui/templates/LegalPageTemplate.astro'; --- diff --git a/apps/cards/apps/landing/src/pages/terms.astro b/apps/cards/apps/landing/src/pages/terms.astro index e97c83329..581845208 100644 --- a/apps/cards/apps/landing/src/pages/terms.astro +++ b/apps/cards/apps/landing/src/pages/terms.astro @@ -1,6 +1,6 @@ --- import Layout from '../layouts/Layout.astro'; -import LegalPageTemplate from '@manacore/shared-landing-ui/templates/LegalPageTemplate.astro'; +import LegalPageTemplate from '@mana/shared-landing-ui/templates/LegalPageTemplate.astro'; --- diff --git a/apps/cards/apps/mobile/.env.example b/apps/cards/apps/mobile/.env.example index fd64207dd..8920bc75f 100644 --- a/apps/cards/apps/mobile/.env.example +++ b/apps/cards/apps/mobile/.env.example @@ -4,5 +4,5 @@ EXPO_PUBLIC_BACKEND_URL=http://localhost:3000 # Mana Core Auth -EXPO_PUBLIC_MANA_MIDDLEWARE_URL=https://api.manacore.de +EXPO_PUBLIC_MANA_MIDDLEWARE_URL=https://api.mana.de EXPO_PUBLIC_MIDDLEWARE_APP_ID=cards diff --git a/apps/cards/apps/mobile/CLAUDE.md b/apps/cards/apps/mobile/CLAUDE.md index 1a9a04cc0..354ed4412 100644 --- a/apps/cards/apps/mobile/CLAUDE.md +++ b/apps/cards/apps/mobile/CLAUDE.md @@ -77,7 +77,7 @@ Uses Expo Router v5 with file-based routing: ### Backend Integration - NestJS backend at port 3009 (`@mana-core/nestjs-integration`) -- Environment variable: `EXPO_PUBLIC_MANA_CORE_AUTH_URL` +- Environment variable: `EXPO_PUBLIC_MANA_AUTH_URL` ### TypeScript Configuration @@ -119,7 +119,7 @@ For new screens: Create a `.env` or `.env.local` file: ``` -EXPO_PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +EXPO_PUBLIC_MANA_AUTH_URL=http://localhost:3001 EXPO_PUBLIC_BACKEND_URL=http://localhost:3009 ``` diff --git a/apps/cards/apps/mobile/eslint.config.mjs b/apps/cards/apps/mobile/eslint.config.mjs index 0a8233f8d..b736d0db7 100644 --- a/apps/cards/apps/mobile/eslint.config.mjs +++ b/apps/cards/apps/mobile/eslint.config.mjs @@ -1,5 +1,5 @@ // @ts-check -import { baseConfig, typescriptConfig, reactConfig, prettierConfig } from '@manacore/eslint-config'; +import { baseConfig, typescriptConfig, reactConfig, prettierConfig } from '@mana/eslint-config'; export default [ { diff --git a/apps/cards/apps/mobile/package.json b/apps/cards/apps/mobile/package.json index 30fd52687..1ca35de26 100644 --- a/apps/cards/apps/mobile/package.json +++ b/apps/cards/apps/mobile/package.json @@ -17,7 +17,7 @@ "web": "expo start --web" }, "dependencies": { - "@manacore/shared-auth": "workspace:*", + "@mana/shared-auth": "workspace:*", "@expo/ui": "~0.2.0-beta.6", "@expo/vector-icons": "^15.0.2", "@react-native-async-storage/async-storage": "2.2.0", diff --git a/apps/cards/apps/mobile/services/authService.ts b/apps/cards/apps/mobile/services/authService.ts index 8d924f563..3d2a2cbc7 100644 --- a/apps/cards/apps/mobile/services/authService.ts +++ b/apps/cards/apps/mobile/services/authService.ts @@ -1,6 +1,6 @@ /** * Mana Core Authentication Service - * Uses @manacore/shared-auth for unified auth across all apps + * Uses @mana/shared-auth for unified auth across all apps */ import { Platform } from 'react-native'; @@ -14,11 +14,11 @@ import { isTokenValidLocally as sharedIsTokenValidLocally, getUserFromToken as sharedGetUserFromToken, decodeToken as sharedDecodeToken, -} from '@manacore/shared-auth'; +} from '@mana/shared-auth'; import type { ManaUser, JwtPayload } from '../types/auth'; // Mana Core Auth URL -const AUTH_URL = process.env.EXPO_PUBLIC_MANA_CORE_AUTH_URL || 'http://localhost:3001'; +const AUTH_URL = process.env.EXPO_PUBLIC_MANA_AUTH_URL || 'http://localhost:3001'; // --- Adapters --- @@ -123,7 +123,7 @@ export const authService = { _username?: string ): Promise<{ success: boolean; user?: ManaUser; error?: string }> => { try { - // TODO: username is not supported by mana-core-auth signUp - add profile update after registration + // TODO: username is not supported by mana-auth signUp - add profile update after registration const result = await _sharedAuth.signUp(email, password); if (!result.success) { return { success: false, error: result.error || 'Sign up failed' }; diff --git a/apps/cards/apps/mobile/services/tokenManager.ts b/apps/cards/apps/mobile/services/tokenManager.ts index 4733c6f3c..4a9293c35 100644 --- a/apps/cards/apps/mobile/services/tokenManager.ts +++ b/apps/cards/apps/mobile/services/tokenManager.ts @@ -1,10 +1,10 @@ /** - * Token Manager - wraps @manacore/shared-auth TokenManager + * Token Manager - wraps @mana/shared-auth TokenManager * Maintains backward-compatible API for existing consumers */ import { _sharedTokenManager } from './authService'; -export { TokenState } from '@manacore/shared-auth'; +export { TokenState } from '@mana/shared-auth'; type TokenStateObserver = (state: string, token?: string | null) => void; diff --git a/apps/cards/apps/mobile/store/authStore.ts b/apps/cards/apps/mobile/store/authStore.ts index 9766d4624..1531a068b 100644 --- a/apps/cards/apps/mobile/store/authStore.ts +++ b/apps/cards/apps/mobile/store/authStore.ts @@ -147,8 +147,8 @@ export const useAuthStore = create((set, get) => ({ const user = get().user; if (!user) throw new Error('No user logged in'); - // TODO: Implement profile update via mana-core-auth API - console.warn('Profile update not yet implemented via mana-core-auth API'); + // TODO: Implement profile update via mana-auth API + console.warn('Profile update not yet implemented via mana-auth API'); set({ user: { diff --git a/apps/cards/apps/mobile/utils/logger.ts b/apps/cards/apps/mobile/utils/logger.ts index 8f2b68f68..60b8d3719 100644 --- a/apps/cards/apps/mobile/utils/logger.ts +++ b/apps/cards/apps/mobile/utils/logger.ts @@ -1,5 +1,5 @@ /** * Logger utility - re-exports from shared package - * @see @manacore/shared-logger + * @see @mana/shared-logger */ -export { debug, info, warn, error, log, logger } from '@manacore/shared-logger'; +export { debug, info, warn, error, log, logger } from '@mana/shared-logger'; diff --git a/apps/chat/CLAUDE.md b/apps/chat/CLAUDE.md index bde59f5cd..e483a1e82 100644 --- a/apps/chat/CLAUDE.md +++ b/apps/chat/CLAUDE.md @@ -106,7 +106,7 @@ LLM_TIMEOUT=120000 # Timeout in ms (default: 120s) DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/chat # Auth -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 # Server PORT=3002 @@ -115,14 +115,14 @@ PORT=3002 #### Mobile (.env) ```env -EXPO_PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +EXPO_PUBLIC_MANA_AUTH_URL=http://localhost:3001 EXPO_PUBLIC_BACKEND_URL=http://localhost:3002 ``` #### Web (.env) ```env -PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +PUBLIC_MANA_AUTH_URL=http://localhost:3001 PUBLIC_BACKEND_URL=http://localhost:3002 ``` @@ -173,7 +173,7 @@ pnpm --filter @chat/server db:add-local-models ```env OPENROUTER_API_KEY=sk-or-v1-xxx DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/chat - MANA_CORE_AUTH_URL=http://localhost:3001 + MANA_AUTH_URL=http://localhost:3001 PORT=3002 ``` 3. **Start services**: diff --git a/apps/chat/INTEGRATION_COMPLETE.md b/apps/chat/INTEGRATION_COMPLETE.md index 44cf871a4..fe4dc4fcf 100644 --- a/apps/chat/INTEGRATION_COMPLETE.md +++ b/apps/chat/INTEGRATION_COMPLETE.md @@ -47,7 +47,7 @@ The Chat project has been **fully migrated** from Supabase Auth to **Mana Core A - Created CurrentUser decorator to inject user data into controllers - Updated all controllers to use JwtAuthGuard - Removed userId from request body (now extracted from JWT) -- Added MANA_CORE_AUTH_URL environment variable +- Added MANA_AUTH_URL environment variable - Changed PORT from 3001 to 3002 (to avoid conflict with auth service) **Key Features:** @@ -73,7 +73,7 @@ The Chat project has been **fully migrated** from Supabase Auth to **Mana Core A - Added `initializeWebAuth()` initialization - Added `getCredits()` method for credit balance - Added `getAccessToken()` method for API calls -- Added MANA_CORE_AUTH_URL environment variable +- Added MANA_AUTH_URL environment variable **API Compatibility:** @@ -97,7 +97,7 @@ The Chat project has been **fully migrated** from Supabase Auth to **Mana Core A - Created React Native device adapter - Created React Native network adapter - Removed Supabase auth dependencies -- Added MANA_CORE_AUTH_URL environment variable +- Added MANA_AUTH_URL environment variable **Key Features:** @@ -119,7 +119,7 @@ The Chat project has been **fully migrated** from Supabase Auth to **Mana Core A # PORT=3001 # NEW (Add): -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 PORT=3002 # Keep (for database): @@ -136,7 +136,7 @@ SUPABASE_SERVICE_KEY=your-service-key-here # PUBLIC_BACKEND_URL=http://localhost:3001 # NEW (Add): -PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +PUBLIC_MANA_AUTH_URL=http://localhost:3001 PUBLIC_BACKEND_URL=http://localhost:3002 # Keep (for database): @@ -153,7 +153,7 @@ PUBLIC_SUPABASE_ANON_KEY=your-supabase-anon-key # EXPO_PUBLIC_BACKEND_URL=http://localhost:3001 # NEW (Add): -EXPO_PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +EXPO_PUBLIC_MANA_AUTH_URL=http://localhost:3001 EXPO_PUBLIC_BACKEND_URL=http://localhost:3002 # Keep (for database): @@ -182,7 +182,7 @@ Service runs on: `http://localhost:3001` cd chat/backend cp .env.example .env # Edit .env: -# - Add MANA_CORE_AUTH_URL=http://localhost:3001 +# - Add MANA_AUTH_URL=http://localhost:3001 # - Change PORT=3002 pnpm start:dev ``` @@ -195,7 +195,7 @@ Service runs on: `http://localhost:3002` cd chat/apps/web cp .env.example .env # Edit .env: -# - Add PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +# - Add PUBLIC_MANA_AUTH_URL=http://localhost:3001 # - Change PUBLIC_BACKEND_URL=http://localhost:3002 pnpm dev ``` @@ -208,7 +208,7 @@ App runs on: `http://localhost:5173` cd chat/apps/mobile cp .env.example .env # Edit .env: -# - Add EXPO_PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +# - Add EXPO_PUBLIC_MANA_AUTH_URL=http://localhost:3001 # - Change EXPO_PUBLIC_BACKEND_URL=http://localhost:3002 pnpm dev ``` @@ -326,10 +326,10 @@ CORS_ORIGINS=http://localhost:5173,http://localhost:8081 ### Issue: Backend can't validate tokens -**Solution:** Check MANA_CORE_AUTH_URL in backend .env +**Solution:** Check MANA_AUTH_URL in backend .env ```env -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 ``` --- @@ -387,7 +387,7 @@ MANA_CORE_AUTH_URL=http://localhost:3001 ## 📖 Documentation -- **Integration Guide:** `/chat/MANA_CORE_AUTH_INTEGRATION.md` +- **Integration Guide:** `/chat/MANA_AUTH_INTEGRATION.md` - **Mana Core Auth README:** `/mana-core-auth/README.md` - **Quick Start:** `/mana-core-auth/QUICKSTART.md` - **Master Plan:** `/.hive-mind/MASTER_PLAN_CENTRAL_AUTH_SYSTEM.md` diff --git a/apps/chat/MANA_CORE_AUTH_INTEGRATION.md b/apps/chat/MANA_CORE_AUTH_INTEGRATION.md index bd0001919..80a0fb030 100644 --- a/apps/chat/MANA_CORE_AUTH_INTEGRATION.md +++ b/apps/chat/MANA_CORE_AUTH_INTEGRATION.md @@ -57,7 +57,7 @@ The `@manacore/shared-auth` package has been updated to work with Mana Core Auth # SUPABASE_SERVICE_KEY=... # Add Mana Core Auth URL -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 ``` #### Web App `.env` @@ -68,7 +68,7 @@ MANA_CORE_AUTH_URL=http://localhost:3001 # PUBLIC_SUPABASE_ANON_KEY=... # Add -PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +PUBLIC_MANA_AUTH_URL=http://localhost:3001 ``` #### Mobile App `.env` @@ -79,7 +79,7 @@ PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 # EXPO_PUBLIC_SUPABASE_ANON_KEY=... # Add -EXPO_PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +EXPO_PUBLIC_MANA_AUTH_URL=http://localhost:3001 ``` ### Step 2: Update Backend (NestJS) @@ -115,7 +115,7 @@ export class JwtAuthGuard implements CanActivate { try { // Get public key from Mana Core Auth - const authUrl = this.configService.get('MANA_CORE_AUTH_URL'); + const authUrl = this.configService.get('MANA_AUTH_URL'); const response = await fetch(`${authUrl}/api/v1/auth/validate`, { method: 'POST', headers: { 'Content-Type': 'application/json' }, @@ -179,7 +179,7 @@ Edit `chat/apps/web/src/lib/stores/auth.svelte.ts`: ```typescript import { initializeWebAuth } from '@manacore/shared-auth'; -const MANA_AUTH_URL = import.meta.env.PUBLIC_MANA_CORE_AUTH_URL || 'http://localhost:3001'; +const MANA_AUTH_URL = import.meta.env.PUBLIC_MANA_AUTH_URL || 'http://localhost:3001'; // Initialize Mana Core Auth const { authService, tokenManager } = initializeWebAuth({ @@ -248,7 +248,7 @@ export const handle: Handle = async ({ event, resolve }) => { if (token) { try { // Validate token with Mana Core Auth - const authUrl = process.env.PUBLIC_MANA_CORE_AUTH_URL || 'http://localhost:3001'; + const authUrl = process.env.PUBLIC_MANA_AUTH_URL || 'http://localhost:3001'; const response = await fetch(`${authUrl}/api/v1/auth/validate`, { method: 'POST', headers: { 'Content-Type': 'application/json' }, @@ -293,7 +293,7 @@ import { } from '@manacore/shared-auth'; import { createSecureStoreAdapter } from '@manacore/shared-auth/native'; // You may need to create this -const MANA_AUTH_URL = process.env.EXPO_PUBLIC_MANA_CORE_AUTH_URL || 'http://localhost:3001'; +const MANA_AUTH_URL = process.env.EXPO_PUBLIC_MANA_AUTH_URL || 'http://localhost:3001'; // Initialize auth service const authService = createAuthService({ baseUrl: MANA_AUTH_URL }); diff --git a/apps/chat/TESTING_GUIDE.md b/apps/chat/TESTING_GUIDE.md index b791946e5..16c9a4024 100644 --- a/apps/chat/TESTING_GUIDE.md +++ b/apps/chat/TESTING_GUIDE.md @@ -95,7 +95,7 @@ AZURE_OPENAI_API_KEY=your-api-key AZURE_OPENAI_API_VERSION=2024-12-01-preview # Mana Core Auth (NEW) -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 # Supabase (for database, not auth) SUPABASE_URL=https://your-project.supabase.co @@ -116,7 +116,7 @@ Edit `chat/apps/web/.env`: ```env # Mana Core Auth (NEW) -PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +PUBLIC_MANA_AUTH_URL=http://localhost:3001 # Backend API (NEW PORT) PUBLIC_BACKEND_URL=http://localhost:3002 @@ -137,7 +137,7 @@ Edit `chat/apps/mobile/.env`: ```env # Mana Core Auth (NEW) -EXPO_PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +EXPO_PUBLIC_MANA_AUTH_URL=http://localhost:3001 # Backend API (NEW PORT) EXPO_PUBLIC_BACKEND_URL=http://localhost:3002 @@ -575,7 +575,7 @@ Edit `chat/apps/mobile/.env`: ```env # Replace localhost with your computer's IP -EXPO_PUBLIC_MANA_CORE_AUTH_URL=http://192.168.1.XXX:3001 +EXPO_PUBLIC_MANA_AUTH_URL=http://192.168.1.XXX:3001 EXPO_PUBLIC_BACKEND_URL=http://192.168.1.XXX:3002 ``` diff --git a/apps/chat/apps/landing/package.json b/apps/chat/apps/landing/package.json index 26c21809d..1c249068f 100644 --- a/apps/chat/apps/landing/package.json +++ b/apps/chat/apps/landing/package.json @@ -14,7 +14,7 @@ "dependencies": { "@astrojs/check": "^0.9.0", "@astrojs/sitemap": "^3.2.1", - "@manacore/shared-landing-ui": "workspace:*", + "@mana/shared-landing-ui": "workspace:*", "astro": "^5.16.0", "typescript": "^5.0.0" }, diff --git a/apps/chat/apps/landing/src/layouts/Layout.astro b/apps/chat/apps/landing/src/layouts/Layout.astro index 340cc6ffc..52f67db5a 100644 --- a/apps/chat/apps/landing/src/layouts/Layout.astro +++ b/apps/chat/apps/landing/src/layouts/Layout.astro @@ -1,6 +1,6 @@ --- import '../styles/global.css'; -import Analytics from '@manacore/shared-landing-ui/atoms/Analytics.astro'; +import Analytics from '@mana/shared-landing-ui/atoms/Analytics.astro'; interface Props { title: string; diff --git a/apps/chat/apps/landing/src/pages/cookies.astro b/apps/chat/apps/landing/src/pages/cookies.astro index 9252e5f57..0bd3b6a92 100644 --- a/apps/chat/apps/landing/src/pages/cookies.astro +++ b/apps/chat/apps/landing/src/pages/cookies.astro @@ -1,6 +1,6 @@ --- import Layout from '../layouts/Layout.astro'; -import LegalPageTemplate from '@manacore/shared-landing-ui/templates/LegalPageTemplate.astro'; +import LegalPageTemplate from '@mana/shared-landing-ui/templates/LegalPageTemplate.astro'; --- diff --git a/apps/chat/apps/landing/src/pages/imprint.astro b/apps/chat/apps/landing/src/pages/imprint.astro index 613b64185..ce985b512 100644 --- a/apps/chat/apps/landing/src/pages/imprint.astro +++ b/apps/chat/apps/landing/src/pages/imprint.astro @@ -1,6 +1,6 @@ --- import Layout from '../layouts/Layout.astro'; -import LegalPageTemplate from '@manacore/shared-landing-ui/templates/LegalPageTemplate.astro'; +import LegalPageTemplate from '@mana/shared-landing-ui/templates/LegalPageTemplate.astro'; --- diff --git a/apps/chat/apps/landing/src/pages/index.astro b/apps/chat/apps/landing/src/pages/index.astro index 8688f0a24..071c9635e 100644 --- a/apps/chat/apps/landing/src/pages/index.astro +++ b/apps/chat/apps/landing/src/pages/index.astro @@ -4,12 +4,12 @@ import Navigation from '../components/Navigation.astro'; import Footer from '../components/Footer.astro'; // Shared components -import HeroSection from '@manacore/shared-landing-ui/sections/HeroSection.astro'; -import FeatureSection from '@manacore/shared-landing-ui/sections/FeatureSection.astro'; -import StepsSection from '@manacore/shared-landing-ui/sections/StepsSection.astro'; -import FAQSection from '@manacore/shared-landing-ui/sections/FAQSection.astro'; -import CTASection from '@manacore/shared-landing-ui/sections/CTASection.astro'; -import PricingSection from '@manacore/shared-landing-ui/sections/PricingSection.astro'; +import HeroSection from '@mana/shared-landing-ui/sections/HeroSection.astro'; +import FeatureSection from '@mana/shared-landing-ui/sections/FeatureSection.astro'; +import StepsSection from '@mana/shared-landing-ui/sections/StepsSection.astro'; +import FAQSection from '@mana/shared-landing-ui/sections/FAQSection.astro'; +import CTASection from '@mana/shared-landing-ui/sections/CTASection.astro'; +import PricingSection from '@mana/shared-landing-ui/sections/PricingSection.astro'; // Feature data const features = [ diff --git a/apps/chat/apps/landing/src/pages/pricing.astro b/apps/chat/apps/landing/src/pages/pricing.astro index 50d9c75a4..bc9e83c46 100644 --- a/apps/chat/apps/landing/src/pages/pricing.astro +++ b/apps/chat/apps/landing/src/pages/pricing.astro @@ -2,7 +2,7 @@ import Layout from '../layouts/Layout.astro'; import Navigation from '../components/Navigation.astro'; import Footer from '../components/Footer.astro'; -import ManaPricingSection from '@manacore/shared-landing-ui/sections/ManaPricingSection.astro'; +import ManaPricingSection from '@mana/shared-landing-ui/sections/ManaPricingSection.astro'; --- diff --git a/apps/chat/apps/landing/src/pages/privacy.astro b/apps/chat/apps/landing/src/pages/privacy.astro index d666f0fb2..3f0dff5d8 100644 --- a/apps/chat/apps/landing/src/pages/privacy.astro +++ b/apps/chat/apps/landing/src/pages/privacy.astro @@ -1,6 +1,6 @@ --- import Layout from '../layouts/Layout.astro'; -import LegalPageTemplate from '@manacore/shared-landing-ui/templates/LegalPageTemplate.astro'; +import LegalPageTemplate from '@mana/shared-landing-ui/templates/LegalPageTemplate.astro'; --- diff --git a/apps/chat/apps/landing/src/pages/terms.astro b/apps/chat/apps/landing/src/pages/terms.astro index dd9d49e1a..794deebb4 100644 --- a/apps/chat/apps/landing/src/pages/terms.astro +++ b/apps/chat/apps/landing/src/pages/terms.astro @@ -1,6 +1,6 @@ --- import Layout from '../layouts/Layout.astro'; -import LegalPageTemplate from '@manacore/shared-landing-ui/templates/LegalPageTemplate.astro'; +import LegalPageTemplate from '@mana/shared-landing-ui/templates/LegalPageTemplate.astro'; --- diff --git a/apps/chat/apps/mobile/.env.example b/apps/chat/apps/mobile/.env.example index 2c8420893..1ea6a9ae3 100644 --- a/apps/chat/apps/mobile/.env.example +++ b/apps/chat/apps/mobile/.env.example @@ -1,5 +1,5 @@ # Mana Core Auth Configuration -EXPO_PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +EXPO_PUBLIC_MANA_AUTH_URL=http://localhost:3001 # Chat Backend API # The backend handles AI API calls securely - no API keys needed in the mobile app diff --git a/apps/chat/apps/mobile/app/auth/login.tsx b/apps/chat/apps/mobile/app/auth/login.tsx index 8987a749d..c58476bb4 100644 --- a/apps/chat/apps/mobile/app/auth/login.tsx +++ b/apps/chat/apps/mobile/app/auth/login.tsx @@ -53,7 +53,7 @@ export default function LoginScreen() { } }; - // Magic Link ist derzeit nicht verfügbar (mana-core-auth unterstützt dies nicht) + // Magic Link ist derzeit nicht verfügbar (mana-auth unterstützt dies nicht) const handleMagicLink = async () => { Alert.alert( 'Nicht verfügbar', diff --git a/apps/chat/apps/mobile/context/AuthProvider.tsx b/apps/chat/apps/mobile/context/AuthProvider.tsx index 2f5ad78f2..161a86842 100644 --- a/apps/chat/apps/mobile/context/AuthProvider.tsx +++ b/apps/chat/apps/mobile/context/AuthProvider.tsx @@ -9,10 +9,10 @@ import { setNetworkAdapter, createMemoryStorageAdapter, type UserData, -} from '@manacore/shared-auth'; +} from '@mana/shared-auth'; // Mana Core Auth URL from environment -const MANA_AUTH_URL = process.env.EXPO_PUBLIC_MANA_CORE_AUTH_URL || 'http://localhost:3001'; +const MANA_AUTH_URL = process.env.EXPO_PUBLIC_MANA_AUTH_URL || 'http://localhost:3001'; // Create SecureStore adapter for React Native const createSecureStoreAdapter = () => ({ diff --git a/apps/chat/apps/mobile/eslint.config.mjs b/apps/chat/apps/mobile/eslint.config.mjs index 0a8233f8d..b736d0db7 100644 --- a/apps/chat/apps/mobile/eslint.config.mjs +++ b/apps/chat/apps/mobile/eslint.config.mjs @@ -1,5 +1,5 @@ // @ts-check -import { baseConfig, typescriptConfig, reactConfig, prettierConfig } from '@manacore/eslint-config'; +import { baseConfig, typescriptConfig, reactConfig, prettierConfig } from '@mana/eslint-config'; export default [ { diff --git a/apps/chat/apps/mobile/services/api.ts b/apps/chat/apps/mobile/services/api.ts index 2260f1e38..75197fa21 100644 --- a/apps/chat/apps/mobile/services/api.ts +++ b/apps/chat/apps/mobile/services/api.ts @@ -6,8 +6,8 @@ import * as SecureStore from 'expo-secure-store'; const BACKEND_URL = process.env.EXPO_PUBLIC_BACKEND_URL || 'http://localhost:3001'; -// Token storage key (must match what @manacore/shared-auth uses) -const APP_TOKEN_KEY = '@manacore/app_token'; +// Token storage key (must match what @mana/shared-auth uses) +const APP_TOKEN_KEY = '@mana/app_token'; // ============================================================================ // Types diff --git a/apps/citycorners/CLAUDE.md b/apps/citycorners/CLAUDE.md index 2f3649c9a..4f0d01289 100644 --- a/apps/citycorners/CLAUDE.md +++ b/apps/citycorners/CLAUDE.md @@ -122,5 +122,5 @@ Three IndexedDB collections managed by `@manacore/local-store`: | Variable | Used by | Description | |----------|---------|-------------| -| `PUBLIC_MANA_CORE_AUTH_URL` | Web | Auth service URL (client) | +| `PUBLIC_MANA_AUTH_URL` | Web | Auth service URL (client) | | `PUBLIC_SYNC_SERVER_URL` | Web | mana-sync WebSocket URL | diff --git a/apps/contacts/CLAUDE.md b/apps/contacts/CLAUDE.md index 836edff69..22c90a065 100644 --- a/apps/contacts/CLAUDE.md +++ b/apps/contacts/CLAUDE.md @@ -178,7 +178,7 @@ pnpm build # Build for production NODE_ENV=development PORT=3015 DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/contacts -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 CORS_ORIGINS=http://localhost:5173,http://localhost:5184,http://localhost:8081 S3_ENDPOINT=http://localhost:9000 S3_REGION=us-east-1 @@ -197,14 +197,14 @@ GOOGLE_REDIRECT_URI=http://localhost:5184/data?tab=import&source=google ``` EXPO_PUBLIC_BACKEND_URL=http://localhost:3015 -EXPO_PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +EXPO_PUBLIC_MANA_AUTH_URL=http://localhost:3001 ``` #### Web (.env) ``` PUBLIC_BACKEND_URL=http://localhost:3015 -PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +PUBLIC_MANA_AUTH_URL=http://localhost:3001 ``` ## Shared Packages diff --git a/apps/contacts/apps/landing/package.json b/apps/contacts/apps/landing/package.json index 99f05f455..d6a5f8ce9 100644 --- a/apps/contacts/apps/landing/package.json +++ b/apps/contacts/apps/landing/package.json @@ -15,7 +15,7 @@ }, "dependencies": { "@astrojs/check": "^0.9.0", - "@manacore/shared-landing-ui": "workspace:*", + "@mana/shared-landing-ui": "workspace:*", "astro": "^5.16.0", "typescript": "^5.9.2" }, diff --git a/apps/contacts/apps/landing/src/layouts/Layout.astro b/apps/contacts/apps/landing/src/layouts/Layout.astro index 29b66e5c6..c5ecb9b97 100644 --- a/apps/contacts/apps/landing/src/layouts/Layout.astro +++ b/apps/contacts/apps/landing/src/layouts/Layout.astro @@ -1,6 +1,6 @@ --- import '../styles/global.css'; -import Analytics from '@manacore/shared-landing-ui/atoms/Analytics.astro'; +import Analytics from '@mana/shared-landing-ui/atoms/Analytics.astro'; interface Props { title?: string; diff --git a/apps/contacts/apps/landing/src/pages/index.astro b/apps/contacts/apps/landing/src/pages/index.astro index 4c28d0e91..9c2882a82 100644 --- a/apps/contacts/apps/landing/src/pages/index.astro +++ b/apps/contacts/apps/landing/src/pages/index.astro @@ -9,13 +9,13 @@ import Footer from '@components/Footer.astro'; let StepsSection: any = null; let PricingSection: any = null; try { - const shared = await import('@manacore/shared-landing-ui/sections/StepsSection.astro'); + const shared = await import('@mana/shared-landing-ui/sections/StepsSection.astro'); StepsSection = shared.default; } catch { // Shared component not available } try { - const shared = await import('@manacore/shared-landing-ui/sections/PricingSection.astro'); + const shared = await import('@mana/shared-landing-ui/sections/PricingSection.astro'); PricingSection = shared.default; } catch { // Shared component not available diff --git a/apps/context/CLAUDE.md b/apps/context/CLAUDE.md index 91510eb4d..b36976c14 100644 --- a/apps/context/CLAUDE.md +++ b/apps/context/CLAUDE.md @@ -188,7 +188,7 @@ pnpm setup:db:context # Create DB + push schema NODE_ENV=development PORT=3020 DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/context -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 AZURE_OPENAI_API_KEY=your-key AZURE_OPENAI_ENDPOINT=https://your-endpoint.openai.azure.com/ GOOGLE_API_KEY=your-key @@ -197,7 +197,7 @@ GOOGLE_API_KEY=your-key ### Web (.env) ```env PUBLIC_BACKEND_URL=http://localhost:3020 -PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +PUBLIC_MANA_AUTH_URL=http://localhost:3001 ``` ## Important Patterns diff --git a/apps/context/apps/mobile/app.json b/apps/context/apps/mobile/app.json index 4e7370623..40b3d05d0 100644 --- a/apps/context/apps/mobile/app.json +++ b/apps/context/apps/mobile/app.json @@ -34,7 +34,7 @@ "assetBundlePatterns": ["**/*"], "ios": { "supportsTablet": true, - "bundleIdentifier": "com.manacore.context", + "bundleIdentifier": "com.mana.context", "buildNumber": "1", "infoPlist": { "ITSAppUsesNonExemptEncryption": false @@ -45,7 +45,7 @@ "foregroundImage": "./assets/adaptive-icon.png", "backgroundColor": "#ffffff" }, - "package": "com.manacore.context", + "package": "com.mana.context", "versionCode": 1 }, "extra": { diff --git a/apps/context/apps/mobile/context/AuthProvider.tsx b/apps/context/apps/mobile/context/AuthProvider.tsx index c1bfa8c83..11d786d81 100644 --- a/apps/context/apps/mobile/context/AuthProvider.tsx +++ b/apps/context/apps/mobile/context/AuthProvider.tsx @@ -8,10 +8,10 @@ import { setDeviceAdapter, setNetworkAdapter, type UserData, -} from '@manacore/shared-auth'; +} from '@mana/shared-auth'; // Mana Core Auth URL from environment -const MANA_AUTH_URL = process.env.EXPO_PUBLIC_MANA_CORE_AUTH_URL || 'http://localhost:3001'; +const MANA_AUTH_URL = process.env.EXPO_PUBLIC_MANA_AUTH_URL || 'http://localhost:3001'; // Create SecureStore adapter for React Native const createSecureStoreAdapter = () => ({ diff --git a/apps/context/apps/mobile/package.json b/apps/context/apps/mobile/package.json index e7707d233..4c37a9ec9 100644 --- a/apps/context/apps/mobile/package.json +++ b/apps/context/apps/mobile/package.json @@ -19,7 +19,7 @@ }, "dependencies": { "@expo/vector-icons": "^14.0.0", - "@manacore/shared-auth": "workspace:*", + "@mana/shared-auth": "workspace:*", "@react-native-async-storage/async-storage": "^1.23.1", "@react-native-picker/picker": "^2.11.0", "@react-navigation/native": "^7.0.3", diff --git a/apps/context/apps/mobile/services/backendApi.ts b/apps/context/apps/mobile/services/backendApi.ts index bd19ffc79..a37f1ae7c 100644 --- a/apps/context/apps/mobile/services/backendApi.ts +++ b/apps/context/apps/mobile/services/backendApi.ts @@ -9,8 +9,8 @@ const BACKEND_URL = process.env.EXPO_PUBLIC_CONTEXT_BACKEND_URL || 'http://localhost:3020'; -// Token storage key (must match what @manacore/shared-auth uses) -const APP_TOKEN_KEY = '@manacore/app_token'; +// Token storage key (must match what @mana/shared-auth uses) +const APP_TOKEN_KEY = '@mana/app_token'; // ============================================================================ // Types (re-exported for consumers) diff --git a/apps/docs/astro.config.mjs b/apps/docs/astro.config.mjs index b52c46c2e..dd385183b 100644 --- a/apps/docs/astro.config.mjs +++ b/apps/docs/astro.config.mjs @@ -16,10 +16,10 @@ export default defineConfig({ replacesTitle: false, }, social: { - github: 'https://github.com/manacore/manacore-monorepo', + github: 'https://github.com/mana/mana-monorepo', }, editLink: { - baseUrl: 'https://github.com/manacore/manacore-monorepo/edit/main/apps/docs/', + baseUrl: 'https://github.com/mana/mana-monorepo/edit/main/apps/docs/', }, customCss: ['./src/styles/custom.css'], sidebar: [ diff --git a/apps/docs/package.json b/apps/docs/package.json index 75aa3e90d..fe938689e 100644 --- a/apps/docs/package.json +++ b/apps/docs/package.json @@ -1,5 +1,5 @@ { - "name": "@manacore/docs", + "name": "@mana/docs", "version": "1.0.0", "private": true, "type": "module", diff --git a/apps/docs/src/content/docs/architecture/authentication.mdx b/apps/docs/src/content/docs/architecture/authentication.mdx index fa391a1a1..406689b9c 100644 --- a/apps/docs/src/content/docs/architecture/authentication.mdx +++ b/apps/docs/src/content/docs/architecture/authentication.mdx @@ -64,7 +64,7 @@ import { JwtAuthModule } from '@manacore/shared-nestjs-auth'; @Module({ imports: [ JwtAuthModule.register({ - authServiceUrl: process.env.MANA_CORE_AUTH_URL, + authServiceUrl: process.env.MANA_AUTH_URL, }), ], }) @@ -91,15 +91,15 @@ Use `@mana-core/nestjs-integration` for full integration: ```typescript // app.module.ts -import { ManaCoreModule } from '@mana-core/nestjs-integration'; +import { ManaModule } from '@mana-core/nestjs-integration'; @Module({ imports: [ - ManaCoreModule.forRootAsync({ + ManaModule.forRootAsync({ imports: [ConfigModule], useFactory: (config: ConfigService) => ({ appId: config.get('APP_ID'), - serviceKey: config.get('MANA_CORE_SERVICE_KEY'), + serviceKey: config.get('MANA_SERVICE_KEY'), debug: config.get('NODE_ENV') === 'development', }), inject: [ConfigService], @@ -143,7 +143,7 @@ export class ApiController { import { createAuthService } from '@manacore/shared-auth'; export const auth = createAuthService({ - authUrl: import.meta.env.PUBLIC_MANA_CORE_AUTH_URL, + authUrl: import.meta.env.PUBLIC_MANA_AUTH_URL, }); // Usage in component @@ -160,7 +160,7 @@ if (data) { import { createAuthService } from '@manacore/shared-auth'; export const auth = createAuthService({ - authUrl: process.env.EXPO_PUBLIC_MANA_CORE_AUTH_URL, + authUrl: process.env.EXPO_PUBLIC_MANA_AUTH_URL, storage: AsyncStorage, // Expo AsyncStorage }); ``` @@ -190,7 +190,7 @@ export const auth = createAuthService({ ```env # Required -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 # For development bypass (optional) NODE_ENV=development @@ -198,7 +198,7 @@ DEV_BYPASS_AUTH=true DEV_USER_ID=test-user-uuid # For credit operations -MANA_CORE_SERVICE_KEY=your-service-key +MANA_SERVICE_KEY=your-service-key APP_ID=your-app-id ``` @@ -207,12 +207,12 @@ APP_ID=your-app-id ```env - PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 + PUBLIC_MANA_AUTH_URL=http://localhost:3001 ``` ```env - EXPO_PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 + EXPO_PUBLIC_MANA_AUTH_URL=http://localhost:3001 ``` diff --git a/apps/docs/src/content/docs/architecture/backend.mdx b/apps/docs/src/content/docs/architecture/backend.mdx index a00b58d54..32d147275 100644 --- a/apps/docs/src/content/docs/architecture/backend.mdx +++ b/apps/docs/src/content/docs/architecture/backend.mdx @@ -247,7 +247,7 @@ export default () => ({ url: process.env.DATABASE_URL, }, auth: { - url: process.env.MANA_CORE_AUTH_URL, + url: process.env.MANA_AUTH_URL, }, }); diff --git a/apps/docs/src/content/docs/deployment/mac-mini-server.mdx b/apps/docs/src/content/docs/deployment/mac-mini-server.mdx index 114924d9c..07f9c0bb4 100644 --- a/apps/docs/src/content/docs/deployment/mac-mini-server.mdx +++ b/apps/docs/src/content/docs/deployment/mac-mini-server.mdx @@ -162,7 +162,7 @@ services: dockerfile: apps/chat/apps/backend/Dockerfile environment: - DATABASE_URL=postgresql://manacore:${POSTGRES_PASSWORD}@postgres:5432/chat - - MANA_CORE_AUTH_URL=http://mana-auth:3001 + - MANA_AUTH_URL=http://mana-auth:3001 depends_on: - mana-auth - postgres diff --git a/apps/docs/src/content/docs/deployment/self-hosting.mdx b/apps/docs/src/content/docs/deployment/self-hosting.mdx index ae647cd0a..ce2697457 100644 --- a/apps/docs/src/content/docs/deployment/self-hosting.mdx +++ b/apps/docs/src/content/docs/deployment/self-hosting.mdx @@ -132,7 +132,7 @@ services: image: ghcr.io/manacore/chat-backend:latest environment: DATABASE_URL: postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres:5432/chat - MANA_CORE_AUTH_URL: http://mana-auth:3001 + MANA_AUTH_URL: http://mana-auth:3001 JWT_PUBLIC_KEY: ${JWT_PUBLIC_KEY} depends_on: - mana-auth diff --git a/apps/docs/src/content/docs/development/environment-variables.mdx b/apps/docs/src/content/docs/development/environment-variables.mdx index a9c22a53c..9b0626539 100644 --- a/apps/docs/src/content/docs/development/environment-variables.mdx +++ b/apps/docs/src/content/docs/development/environment-variables.mdx @@ -59,7 +59,7 @@ The generator reads `.env.development` and creates app-specific `.env` files wit | Variable | Description | Used By | |----------|-------------|---------| -| `MANA_CORE_AUTH_URL` | Auth service URL | All apps | +| `MANA_AUTH_URL` | Auth service URL | All apps | | `JWT_PRIVATE_KEY` | JWT signing key | mana-core-auth | | `JWT_PUBLIC_KEY` | JWT verification key | All backends | | `POSTGRES_USER` | Database user | Docker, backends | @@ -71,8 +71,8 @@ The generator reads `.env.development` and creates app-specific `.env` files wit | Variable | Description | Default | |----------|-------------|---------| -| `MANA_CORE_AUTH_PORT` | Service port | `3001` | -| `MANA_CORE_AUTH_DATABASE_URL` | PostgreSQL connection | - | +| `MANA_AUTH_PORT` | Service port | `3001` | +| `MANA_AUTH_DATABASE_URL` | PostgreSQL connection | - | | `JWT_ACCESS_TOKEN_EXPIRY` | Access token TTL | `15m` | | `JWT_REFRESH_TOKEN_EXPIRY` | Refresh token TTL | `7d` | | `JWT_ISSUER` | JWT issuer claim | `manacore` | diff --git a/apps/docs/src/content/docs/projects/chat.mdx b/apps/docs/src/content/docs/projects/chat.mdx index 574c48de2..3a94e232e 100644 --- a/apps/docs/src/content/docs/projects/chat.mdx +++ b/apps/docs/src/content/docs/projects/chat.mdx @@ -93,7 +93,7 @@ OLLAMA_TIMEOUT=120000 DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/chat # Auth -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 # Server PORT=3002 @@ -102,7 +102,7 @@ PORT=3002 ### Web ```env -PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +PUBLIC_MANA_AUTH_URL=http://localhost:3001 PUBLIC_BACKEND_URL=http://localhost:3002 ``` diff --git a/apps/docs/wrangler.toml b/apps/docs/wrangler.toml index 9b5c3ba02..a6aa63543 100644 --- a/apps/docs/wrangler.toml +++ b/apps/docs/wrangler.toml @@ -1,6 +1,6 @@ # Cloudflare Pages configuration for Manacore Docs # Deployed via GitHub Actions (Direct Upload) -name = "manacore-docs" +name = "mana-docs" compatibility_date = "2024-12-01" pages_build_output_dir = "dist" diff --git a/apps/inventar/packages/shared/package.json b/apps/inventar/packages/shared/package.json index 6cdc7dfaa..2f6186db7 100644 --- a/apps/inventar/packages/shared/package.json +++ b/apps/inventar/packages/shared/package.json @@ -14,7 +14,7 @@ "type-check": "tsc --noEmit" }, "dependencies": { - "@manacore/shared-types": "workspace:*" + "@mana/shared-types": "workspace:*" }, "devDependencies": { "typescript": "^5.9.3" diff --git a/apps/manacore/.gitignore b/apps/mana/.gitignore similarity index 100% rename from apps/manacore/.gitignore rename to apps/mana/.gitignore diff --git a/apps/manacore/CLAUDE.md b/apps/mana/CLAUDE.md similarity index 96% rename from apps/manacore/CLAUDE.md rename to apps/mana/CLAUDE.md index e7b4bbad6..c1481c240 100644 --- a/apps/manacore/CLAUDE.md +++ b/apps/mana/CLAUDE.md @@ -4,7 +4,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co ## Project Overview -ManaCore Apps is a monorepo containing multiple applications that share a unified authentication system powered by Supabase. The repository includes: +Mana Apps is a monorepo containing multiple applications that share a unified authentication system powered by Supabase. The repository includes: - **Web App** (`apps/web`): SvelteKit-based web application - **Mobile App** (`apps/mobile`): React Native (Expo) application for iOS, Android, and web @@ -14,7 +14,7 @@ ManaCore Apps is a monorepo containing multiple applications that share a unifie ### Multi-App Ecosystem -This is a multi-tenant system where a single authentication backend supports multiple branded applications (Memoro, Cards, Storyteller, ManaCore). Each app shares the same user database but can present different branding and features. +This is a multi-tenant system where a single authentication backend supports multiple branded applications (Memoro, Cards, Storyteller, Mana). Each app shares the same user database but can present different branding and features. **Key concept**: App configuration is centralized in `apps/web/src/lib/config/apps.ts` and defines branding, features, and routing for each application in the ecosystem. diff --git a/apps/manacore/README.md b/apps/mana/README.md similarity index 95% rename from apps/manacore/README.md rename to apps/mana/README.md index 0861750cd..1a44d45d8 100644 --- a/apps/manacore/README.md +++ b/apps/mana/README.md @@ -1,10 +1,10 @@ -# ManaCore Apps +# Mana Apps A unified application ecosystem built on a shared authentication system, supporting multiple branded applications across web and mobile platforms. ## Overview -ManaCore Apps is a monorepo containing web and mobile applications that provide organization management, team collaboration, and credit transfer capabilities. The system supports multiple branded applications (Memoro, Cards, Storyteller, ManaCore) through a flexible multi-tenant architecture. +Mana Apps is a monorepo containing web and mobile applications that provide organization management, team collaboration, and credit transfer capabilities. The system supports multiple branded applications (Memoro, Cards, Storyteller, Mana) through a flexible multi-tenant architecture. ### Applications @@ -179,7 +179,7 @@ Both apps require Supabase configuration. Create `.env` files based on `.env.exa PUBLIC_SUPABASE_URL=your_supabase_project_url PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key MIDDLEWARE_URL=https://mana-core-middleware-111768794939.europe-west3.run.app -PUBLIC_APP_NAME=ManaCore Web +PUBLIC_APP_NAME=Mana Web NODE_ENV=development ``` @@ -199,7 +199,7 @@ The system supports multiple branded applications sharing the same authenticatio - **Memoro** - Voice recordings and memory management - **Cards** - AI-powered flashcard learning - **Storyteller** - Creative writing with AI assistance -- **ManaCore** - Central account and organization management +- **Mana** - Central account and organization management App configurations are centralized in `apps/web/src/lib/config/apps.ts`, defining branding, features, and routing for each application. diff --git a/apps/manacore/apps/landing/.gitignore b/apps/mana/apps/landing/.gitignore similarity index 100% rename from apps/manacore/apps/landing/.gitignore rename to apps/mana/apps/landing/.gitignore diff --git a/apps/manacore/apps/landing/Plans/landing-page-concepts.md b/apps/mana/apps/landing/Plans/landing-page-concepts.md similarity index 100% rename from apps/manacore/apps/landing/Plans/landing-page-concepts.md rename to apps/mana/apps/landing/Plans/landing-page-concepts.md diff --git a/apps/manacore/apps/landing/astro.config.mjs b/apps/mana/apps/landing/astro.config.mjs similarity index 93% rename from apps/manacore/apps/landing/astro.config.mjs rename to apps/mana/apps/landing/astro.config.mjs index 99520d4bc..6e409715a 100644 --- a/apps/manacore/apps/landing/astro.config.mjs +++ b/apps/mana/apps/landing/astro.config.mjs @@ -4,7 +4,7 @@ import tailwind from '@astrojs/tailwind'; import icon from 'astro-icon'; export default defineConfig({ - site: 'https://manacore.ai', + site: 'https://mana.ai', integrations: [ react(), tailwind(), diff --git a/apps/manacore/apps/landing/netlify.toml b/apps/mana/apps/landing/netlify.toml similarity index 100% rename from apps/manacore/apps/landing/netlify.toml rename to apps/mana/apps/landing/netlify.toml diff --git a/apps/manacore/apps/landing/package.json b/apps/mana/apps/landing/package.json similarity index 88% rename from apps/manacore/apps/landing/package.json rename to apps/mana/apps/landing/package.json index 1707725f6..3a7019c0c 100644 --- a/apps/manacore/apps/landing/package.json +++ b/apps/mana/apps/landing/package.json @@ -1,5 +1,5 @@ { - "name": "@manacore/landing", + "name": "@mana/landing", "version": "0.2.0", "private": true, "scripts": { @@ -14,7 +14,7 @@ "@iconify-json/mdi": "^1.2.3", "@iconify-json/ph": "^1.2.2", "@iconify-json/tabler": "^1.2.19", - "@manacore/shared-landing-ui": "workspace:*", + "@mana/shared-landing-ui": "workspace:*", "astro": "^5.16.0", "astro-icon": "^1.1.5", "react": "^18.3.1", diff --git a/apps/manacore/apps/landing/public/README.md b/apps/mana/apps/landing/public/README.md similarity index 100% rename from apps/manacore/apps/landing/public/README.md rename to apps/mana/apps/landing/public/README.md diff --git a/apps/manacore/apps/landing/public/icons/README.md b/apps/mana/apps/landing/public/icons/README.md similarity index 100% rename from apps/manacore/apps/landing/public/icons/README.md rename to apps/mana/apps/landing/public/icons/README.md diff --git a/apps/manacore/apps/landing/public/icons/mana-icon.svg b/apps/mana/apps/landing/public/icons/mana-icon.svg similarity index 100% rename from apps/manacore/apps/landing/public/icons/mana-icon.svg rename to apps/mana/apps/landing/public/icons/mana-icon.svg diff --git a/apps/manacore/apps/landing/public/images/Mana_Blooming_Manacore_AI_Credits.jpg b/apps/mana/apps/landing/public/images/Mana_Blooming_Manacore_AI_Credits.jpg similarity index 100% rename from apps/manacore/apps/landing/public/images/Mana_Blooming_Manacore_AI_Credits.jpg rename to apps/mana/apps/landing/public/images/Mana_Blooming_Manacore_AI_Credits.jpg diff --git a/apps/manacore/apps/landing/public/images/Mana_Connection_Manacore_AI_Credits.jpg b/apps/mana/apps/landing/public/images/Mana_Connection_Manacore_AI_Credits.jpg similarity index 100% rename from apps/manacore/apps/landing/public/images/Mana_Connection_Manacore_AI_Credits.jpg rename to apps/mana/apps/landing/public/images/Mana_Connection_Manacore_AI_Credits.jpg diff --git a/apps/manacore/apps/landing/public/images/Mana_Drop_Manacore_AI_Credits.jpg b/apps/mana/apps/landing/public/images/Mana_Drop_Manacore_AI_Credits.jpg similarity index 100% rename from apps/manacore/apps/landing/public/images/Mana_Drop_Manacore_AI_Credits.jpg rename to apps/mana/apps/landing/public/images/Mana_Drop_Manacore_AI_Credits.jpg diff --git a/apps/manacore/apps/landing/public/images/Mana_Drops_Manacore_AI_Credits.jpg b/apps/mana/apps/landing/public/images/Mana_Drops_Manacore_AI_Credits.jpg similarity index 100% rename from apps/manacore/apps/landing/public/images/Mana_Drops_Manacore_AI_Credits.jpg rename to apps/mana/apps/landing/public/images/Mana_Drops_Manacore_AI_Credits.jpg diff --git a/apps/manacore/apps/landing/public/images/Mana_Lake_Manacore_AI_Credits.jpg b/apps/mana/apps/landing/public/images/Mana_Lake_Manacore_AI_Credits.jpg similarity index 100% rename from apps/manacore/apps/landing/public/images/Mana_Lake_Manacore_AI_Credits.jpg rename to apps/mana/apps/landing/public/images/Mana_Lake_Manacore_AI_Credits.jpg diff --git a/apps/manacore/apps/landing/public/images/Mana_Landscape_Manacore_AI_Credits_16x9.jpg b/apps/mana/apps/landing/public/images/Mana_Landscape_Manacore_AI_Credits_16x9.jpg similarity index 100% rename from apps/manacore/apps/landing/public/images/Mana_Landscape_Manacore_AI_Credits_16x9.jpg rename to apps/mana/apps/landing/public/images/Mana_Landscape_Manacore_AI_Credits_16x9.jpg diff --git a/apps/manacore/apps/landing/public/images/Mana_River_Flowers_Manacore_AI_Credits.jpg b/apps/mana/apps/landing/public/images/Mana_River_Flowers_Manacore_AI_Credits.jpg similarity index 100% rename from apps/manacore/apps/landing/public/images/Mana_River_Flowers_Manacore_AI_Credits.jpg rename to apps/mana/apps/landing/public/images/Mana_River_Flowers_Manacore_AI_Credits.jpg diff --git a/apps/manacore/apps/landing/public/images/Mana_River_Manacore_AI_Credits.jpg b/apps/mana/apps/landing/public/images/Mana_River_Manacore_AI_Credits.jpg similarity index 100% rename from apps/manacore/apps/landing/public/images/Mana_River_Manacore_AI_Credits.jpg rename to apps/mana/apps/landing/public/images/Mana_River_Manacore_AI_Credits.jpg diff --git a/apps/manacore/apps/landing/public/images/Mana_Sea_Manacore_AI_Credits.jpg b/apps/mana/apps/landing/public/images/Mana_Sea_Manacore_AI_Credits.jpg similarity index 100% rename from apps/manacore/apps/landing/public/images/Mana_Sea_Manacore_AI_Credits.jpg rename to apps/mana/apps/landing/public/images/Mana_Sea_Manacore_AI_Credits.jpg diff --git a/apps/manacore/apps/landing/public/images/Mana_Sea_Sun_Manacore_AI_Credits.jpg b/apps/mana/apps/landing/public/images/Mana_Sea_Sun_Manacore_AI_Credits.jpg similarity index 100% rename from apps/manacore/apps/landing/public/images/Mana_Sea_Sun_Manacore_AI_Credits.jpg rename to apps/mana/apps/landing/public/images/Mana_Sea_Sun_Manacore_AI_Credits.jpg diff --git a/apps/manacore/apps/landing/public/images/Mana_Wave_Manacore_AI_Credits.jpg b/apps/mana/apps/landing/public/images/Mana_Wave_Manacore_AI_Credits.jpg similarity index 100% rename from apps/manacore/apps/landing/public/images/Mana_Wave_Manacore_AI_Credits.jpg rename to apps/mana/apps/landing/public/images/Mana_Wave_Manacore_AI_Credits.jpg diff --git a/apps/manacore/apps/landing/public/images/README.md b/apps/mana/apps/landing/public/images/README.md similarity index 100% rename from apps/manacore/apps/landing/public/images/README.md rename to apps/mana/apps/landing/public/images/README.md diff --git a/apps/manacore/apps/landing/public/images/clients/HSLU-Hochschule-Luzern-Logo-Universitaet-Mana-Manacore-AI.png b/apps/mana/apps/landing/public/images/clients/HSLU-Hochschule-Luzern-Logo-Universitaet-Mana-Manacore-AI.png similarity index 100% rename from apps/manacore/apps/landing/public/images/clients/HSLU-Hochschule-Luzern-Logo-Universitaet-Mana-Manacore-AI.png rename to apps/mana/apps/landing/public/images/clients/HSLU-Hochschule-Luzern-Logo-Universitaet-Mana-Manacore-AI.png diff --git a/apps/manacore/apps/landing/public/images/clients/RWU-Hochschule-Ravensburg-Weingarten-Universitaet-Logo-Mana-Manacore-AI-1.png b/apps/mana/apps/landing/public/images/clients/RWU-Hochschule-Ravensburg-Weingarten-Universitaet-Logo-Mana-Manacore-AI-1.png similarity index 100% rename from apps/manacore/apps/landing/public/images/clients/RWU-Hochschule-Ravensburg-Weingarten-Universitaet-Logo-Mana-Manacore-AI-1.png rename to apps/mana/apps/landing/public/images/clients/RWU-Hochschule-Ravensburg-Weingarten-Universitaet-Logo-Mana-Manacore-AI-1.png diff --git a/apps/manacore/apps/landing/public/images/clients/RWU-Hochschule-Ravensburg-Weingarten-Universitaet-Logo-Mana-Manacore-AI.png b/apps/mana/apps/landing/public/images/clients/RWU-Hochschule-Ravensburg-Weingarten-Universitaet-Logo-Mana-Manacore-AI.png similarity index 100% rename from apps/manacore/apps/landing/public/images/clients/RWU-Hochschule-Ravensburg-Weingarten-Universitaet-Logo-Mana-Manacore-AI.png rename to apps/mana/apps/landing/public/images/clients/RWU-Hochschule-Ravensburg-Weingarten-Universitaet-Logo-Mana-Manacore-AI.png diff --git a/apps/manacore/apps/landing/public/images/clients/edisconet-Schweiz-Unternehmen-Zuerich-Logo-Mana-Manacore-AI.png b/apps/mana/apps/landing/public/images/clients/edisconet-Schweiz-Unternehmen-Zuerich-Logo-Mana-Manacore-AI.png similarity index 100% rename from apps/manacore/apps/landing/public/images/clients/edisconet-Schweiz-Unternehmen-Zuerich-Logo-Mana-Manacore-AI.png rename to apps/mana/apps/landing/public/images/clients/edisconet-Schweiz-Unternehmen-Zuerich-Logo-Mana-Manacore-AI.png diff --git a/apps/manacore/apps/landing/public/logos/Memoro-Logo-V1.png b/apps/mana/apps/landing/public/logos/Memoro-Logo-V1.png similarity index 100% rename from apps/manacore/apps/landing/public/logos/Memoro-Logo-V1.png rename to apps/mana/apps/landing/public/logos/Memoro-Logo-V1.png diff --git a/apps/manacore/apps/landing/public/logos/Märchenzauber-logo.png b/apps/mana/apps/landing/public/logos/Märchenzauber-logo.png similarity index 100% rename from apps/manacore/apps/landing/public/logos/Märchenzauber-logo.png rename to apps/mana/apps/landing/public/logos/Märchenzauber-logo.png diff --git a/apps/manacore/apps/landing/public/logos/README.md b/apps/mana/apps/landing/public/logos/README.md similarity index 100% rename from apps/manacore/apps/landing/public/logos/README.md rename to apps/mana/apps/landing/public/logos/README.md diff --git a/apps/manacore/apps/landing/src/components/content/HeroSection.astro b/apps/mana/apps/landing/src/components/content/HeroSection.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/content/HeroSection.astro rename to apps/mana/apps/landing/src/components/content/HeroSection.astro diff --git a/apps/manacore/apps/landing/src/components/content/ImageTextSection.astro b/apps/mana/apps/landing/src/components/content/ImageTextSection.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/content/ImageTextSection.astro rename to apps/mana/apps/landing/src/components/content/ImageTextSection.astro diff --git a/apps/manacore/apps/landing/src/components/content/Section.astro b/apps/mana/apps/landing/src/components/content/Section.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/content/Section.astro rename to apps/mana/apps/landing/src/components/content/Section.astro diff --git a/apps/manacore/apps/landing/src/components/feedback/Alert.astro b/apps/mana/apps/landing/src/components/feedback/Alert.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/feedback/Alert.astro rename to apps/mana/apps/landing/src/components/feedback/Alert.astro diff --git a/apps/manacore/apps/landing/src/components/layout/Container.astro b/apps/mana/apps/landing/src/components/layout/Container.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/layout/Container.astro rename to apps/mana/apps/landing/src/components/layout/Container.astro diff --git a/apps/manacore/apps/landing/src/components/layout/Flex.astro b/apps/mana/apps/landing/src/components/layout/Flex.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/layout/Flex.astro rename to apps/mana/apps/landing/src/components/layout/Flex.astro diff --git a/apps/manacore/apps/landing/src/components/layout/Grid.astro b/apps/mana/apps/landing/src/components/layout/Grid.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/layout/Grid.astro rename to apps/mana/apps/landing/src/components/layout/Grid.astro diff --git a/apps/manacore/apps/landing/src/components/navigation/Footer.astro b/apps/mana/apps/landing/src/components/navigation/Footer.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/navigation/Footer.astro rename to apps/mana/apps/landing/src/components/navigation/Footer.astro diff --git a/apps/manacore/apps/landing/src/components/navigation/MobileMenu.astro b/apps/mana/apps/landing/src/components/navigation/MobileMenu.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/navigation/MobileMenu.astro rename to apps/mana/apps/landing/src/components/navigation/MobileMenu.astro diff --git a/apps/manacore/apps/landing/src/components/navigation/Navbar.astro b/apps/mana/apps/landing/src/components/navigation/Navbar.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/navigation/Navbar.astro rename to apps/mana/apps/landing/src/components/navigation/Navbar.astro diff --git a/apps/manacore/apps/landing/src/components/navigation/Sidebar.astro b/apps/mana/apps/landing/src/components/navigation/Sidebar.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/navigation/Sidebar.astro rename to apps/mana/apps/landing/src/components/navigation/Sidebar.astro diff --git a/apps/manacore/apps/landing/src/components/pricing/PricingCard.astro b/apps/mana/apps/landing/src/components/pricing/PricingCard.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/pricing/PricingCard.astro rename to apps/mana/apps/landing/src/components/pricing/PricingCard.astro diff --git a/apps/manacore/apps/landing/src/components/pricing/PricingSection.astro b/apps/mana/apps/landing/src/components/pricing/PricingSection.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/pricing/PricingSection.astro rename to apps/mana/apps/landing/src/components/pricing/PricingSection.astro diff --git a/apps/manacore/apps/landing/src/components/sections/CostComparison.astro b/apps/mana/apps/landing/src/components/sections/CostComparison.astro similarity index 93% rename from apps/manacore/apps/landing/src/components/sections/CostComparison.astro rename to apps/mana/apps/landing/src/components/sections/CostComparison.astro index 6e37c2c53..5bf9fd066 100644 --- a/apps/manacore/apps/landing/src/components/sections/CostComparison.astro +++ b/apps/mana/apps/landing/src/components/sections/CostComparison.astro @@ -79,7 +79,7 @@ const { class: className } = Astro.props;
Mit Manacore
- 30€ + 30€ /Monat
@@ -135,13 +135,13 @@ const { class: className } = Astro.props; const teamSizeDisplay = document.getElementById('teamSizeDisplay'); const usageIntensitySelect = document.getElementById('usageIntensity') as HTMLSelectElement; const classicCostEl = document.getElementById('classicCost'); - const manacoreCostEl = document.getElementById('manacoreCost'); + const manaCostEl = document.getElementById('manaCost'); const savingsAmountEl = document.getElementById('savingsAmount'); const savingsPercentEl = document.getElementById('savingsPercent'); const classicPricePerUser = 19.99; - const manacorePlans = { + const manaPlans = { light: { name: 'Mana Quelle S', price: 4.99, users: 3 }, medium: { name: 'Mana Quelle M', price: 9.99, users: 5 }, heavy: { name: 'Mana Quelle L', price: 19.99, users: 10 }, @@ -150,24 +150,24 @@ const { class: className } = Astro.props; function calculateCosts() { const teamSize = parseInt(teamSizeInput.value); - const intensity = usageIntensitySelect.value as keyof typeof manacorePlans; + const intensity = usageIntensitySelect.value as keyof typeof manaPlans; // Classic license cost const classicCost = teamSize * classicPricePerUser; // Manacore cost calculation - const plan = manacorePlans[intensity]; + const plan = manaPlans[intensity]; const plansNeeded = Math.ceil(teamSize / plan.users); - const manacoreCost = plansNeeded * plan.price; + const manaCost = plansNeeded * plan.price; // Savings - const savings = classicCost - manacoreCost; + const savings = classicCost - manaCost; const savingsPercent = Math.round((savings / classicCost) * 100); // Update display if (teamSizeDisplay) teamSizeDisplay.textContent = teamSize.toString(); if (classicCostEl) classicCostEl.textContent = `${classicCost.toFixed(0)}€`; - if (manacoreCostEl) manacoreCostEl.textContent = `${manacoreCost.toFixed(0)}€`; + if (manaCostEl) manaCostEl.textContent = `${manaCost.toFixed(0)}€`; if (savingsAmountEl) savingsAmountEl.textContent = `${savings.toFixed(0)}€`; if (savingsPercentEl) savingsPercentEl.textContent = `${savingsPercent}%`; } diff --git a/apps/manacore/apps/landing/src/components/sections/EcosystemOverview.astro b/apps/mana/apps/landing/src/components/sections/EcosystemOverview.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/sections/EcosystemOverview.astro rename to apps/mana/apps/landing/src/components/sections/EcosystemOverview.astro diff --git a/apps/manacore/apps/landing/src/components/sections/ManaPrinciple.astro b/apps/mana/apps/landing/src/components/sections/ManaPrinciple.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/sections/ManaPrinciple.astro rename to apps/mana/apps/landing/src/components/sections/ManaPrinciple.astro diff --git a/apps/manacore/apps/landing/src/components/seo/AlternateLinks.astro b/apps/mana/apps/landing/src/components/seo/AlternateLinks.astro similarity index 91% rename from apps/manacore/apps/landing/src/components/seo/AlternateLinks.astro rename to apps/mana/apps/landing/src/components/seo/AlternateLinks.astro index b7bb1b421..e28aa82bf 100644 --- a/apps/manacore/apps/landing/src/components/seo/AlternateLinks.astro +++ b/apps/mana/apps/landing/src/components/seo/AlternateLinks.astro @@ -7,6 +7,6 @@ const alternateLinks = getAlternateLinks(currentRoute); { alternateLinks.map((link) => ( - + )) } diff --git a/apps/manacore/apps/landing/src/components/typography/Heading.astro b/apps/mana/apps/landing/src/components/typography/Heading.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/typography/Heading.astro rename to apps/mana/apps/landing/src/components/typography/Heading.astro diff --git a/apps/manacore/apps/landing/src/components/typography/Text.astro b/apps/mana/apps/landing/src/components/typography/Text.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/typography/Text.astro rename to apps/mana/apps/landing/src/components/typography/Text.astro diff --git a/apps/manacore/apps/landing/src/components/ui/AppCard.astro b/apps/mana/apps/landing/src/components/ui/AppCard.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/ui/AppCard.astro rename to apps/mana/apps/landing/src/components/ui/AppCard.astro diff --git a/apps/manacore/apps/landing/src/components/ui/Badge.astro b/apps/mana/apps/landing/src/components/ui/Badge.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/ui/Badge.astro rename to apps/mana/apps/landing/src/components/ui/Badge.astro diff --git a/apps/manacore/apps/landing/src/components/ui/Button.astro b/apps/mana/apps/landing/src/components/ui/Button.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/ui/Button.astro rename to apps/mana/apps/landing/src/components/ui/Button.astro diff --git a/apps/manacore/apps/landing/src/components/ui/Card.astro b/apps/mana/apps/landing/src/components/ui/Card.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/ui/Card.astro rename to apps/mana/apps/landing/src/components/ui/Card.astro diff --git a/apps/manacore/apps/landing/src/components/ui/Image.astro b/apps/mana/apps/landing/src/components/ui/Image.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/ui/Image.astro rename to apps/mana/apps/landing/src/components/ui/Image.astro diff --git a/apps/manacore/apps/landing/src/components/ui/Input.astro b/apps/mana/apps/landing/src/components/ui/Input.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/ui/Input.astro rename to apps/mana/apps/landing/src/components/ui/Input.astro diff --git a/apps/manacore/apps/landing/src/components/ui/LanguageSwitcher.astro b/apps/mana/apps/landing/src/components/ui/LanguageSwitcher.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/ui/LanguageSwitcher.astro rename to apps/mana/apps/landing/src/components/ui/LanguageSwitcher.astro diff --git a/apps/manacore/apps/landing/src/components/ui/ThemeToggle.astro b/apps/mana/apps/landing/src/components/ui/ThemeToggle.astro similarity index 100% rename from apps/manacore/apps/landing/src/components/ui/ThemeToggle.astro rename to apps/mana/apps/landing/src/components/ui/ThemeToggle.astro diff --git a/apps/manacore/apps/landing/src/content/apps/cards-de.md b/apps/mana/apps/landing/src/content/apps/cards-de.md similarity index 100% rename from apps/manacore/apps/landing/src/content/apps/cards-de.md rename to apps/mana/apps/landing/src/content/apps/cards-de.md diff --git a/apps/manacore/apps/landing/src/content/apps/memoro-de.md b/apps/mana/apps/landing/src/content/apps/memoro-de.md similarity index 100% rename from apps/manacore/apps/landing/src/content/apps/memoro-de.md rename to apps/mana/apps/landing/src/content/apps/memoro-de.md diff --git a/apps/manacore/apps/landing/src/content/apps/memoro-en.md b/apps/mana/apps/landing/src/content/apps/memoro-en.md similarity index 100% rename from apps/manacore/apps/landing/src/content/apps/memoro-en.md rename to apps/mana/apps/landing/src/content/apps/memoro-en.md diff --git a/apps/manacore/apps/landing/src/content/apps/moodlit-de.md b/apps/mana/apps/landing/src/content/apps/moodlit-de.md similarity index 100% rename from apps/manacore/apps/landing/src/content/apps/moodlit-de.md rename to apps/mana/apps/landing/src/content/apps/moodlit-de.md diff --git a/apps/manacore/apps/landing/src/content/apps/nutriphi-de.md b/apps/mana/apps/landing/src/content/apps/nutriphi-de.md similarity index 100% rename from apps/manacore/apps/landing/src/content/apps/nutriphi-de.md rename to apps/mana/apps/landing/src/content/apps/nutriphi-de.md diff --git a/apps/manacore/apps/landing/src/content/apps/orakel-de.md b/apps/mana/apps/landing/src/content/apps/orakel-de.md similarity index 100% rename from apps/manacore/apps/landing/src/content/apps/orakel-de.md rename to apps/mana/apps/landing/src/content/apps/orakel-de.md diff --git a/apps/manacore/apps/landing/src/content/apps/pictus-de.md b/apps/mana/apps/landing/src/content/apps/pictus-de.md similarity index 100% rename from apps/manacore/apps/landing/src/content/apps/pictus-de.md rename to apps/mana/apps/landing/src/content/apps/pictus-de.md diff --git a/apps/manacore/apps/landing/src/content/apps/traces-de.md b/apps/mana/apps/landing/src/content/apps/traces-de.md similarity index 100% rename from apps/manacore/apps/landing/src/content/apps/traces-de.md rename to apps/mana/apps/landing/src/content/apps/traces-de.md diff --git a/apps/manacore/apps/landing/src/content/apps/zitare-de.md b/apps/mana/apps/landing/src/content/apps/zitare-de.md similarity index 100% rename from apps/manacore/apps/landing/src/content/apps/zitare-de.md rename to apps/mana/apps/landing/src/content/apps/zitare-de.md diff --git a/apps/manacore/apps/landing/src/content/blueprints/001-mana-cluster-federation-architecture.md b/apps/mana/apps/landing/src/content/blueprints/001-mana-cluster-federation-architecture.md similarity index 100% rename from apps/manacore/apps/landing/src/content/blueprints/001-mana-cluster-federation-architecture.md rename to apps/mana/apps/landing/src/content/blueprints/001-mana-cluster-federation-architecture.md diff --git a/apps/manacore/apps/landing/src/content/blueprints/002-infrastructure-audit-improvements.md b/apps/mana/apps/landing/src/content/blueprints/002-infrastructure-audit-improvements.md similarity index 98% rename from apps/manacore/apps/landing/src/content/blueprints/002-infrastructure-audit-improvements.md rename to apps/mana/apps/landing/src/content/blueprints/002-infrastructure-audit-improvements.md index 7e4b751fc..005d39ec7 100644 --- a/apps/manacore/apps/landing/src/content/blueprints/002-infrastructure-audit-improvements.md +++ b/apps/mana/apps/landing/src/content/blueprints/002-infrastructure-audit-improvements.md @@ -25,7 +25,7 @@ decisionDate: 2026-01-31 ## Executive Summary -Dieses Dokument analysiert den aktuellen Zustand der ManaCore-Infrastruktur auf dem Mac Mini und identifiziert Verbesserungspotentiale vor der geplanten Migration zu einem selbstheilenden K8s-Cluster. Die Analyse umfasst **52 Docker-Container** plus **3 native macOS-Services**. +Dieses Dokument analysiert den aktuellen Zustand der Mana-Infrastruktur auf dem Mac Mini und identifiziert Verbesserungspotentiale vor der geplanten Migration zu einem selbstheilenden K8s-Cluster. Die Analyse umfasst **52 Docker-Container** plus **3 native macOS-Services**. ## Aktueller Infrastruktur-Zustand @@ -33,7 +33,7 @@ Dieses Dokument analysiert den aktuellen Zustand der ManaCore-Infrastruktur auf ``` ┌─────────────────────────────────────────────────────────────────────┐ -│ ManaCore Infrastructure │ +│ Mana Infrastructure │ │ (Mac Mini M4 Pro) │ ├─────────────────────────────────────────────────────────────────────┤ │ │ @@ -111,7 +111,7 @@ Dieses Dokument analysiert den aktuellen Zustand der ManaCore-Infrastruktur auf | App | Container | Port | Backend-Port | | ------------------ | -------------- | ---- | ------------ | -| ManaCore Dashboard | manacore-web | 5173 | - | +| Mana Dashboard | manacore-web | 5173 | - | | Chat | chat-web | 3000 | 3002 | | Presi | presi-web | 5178 | 3008 | | Matrix | matrix-web | 5180 | 8008 | diff --git a/apps/manacore/apps/landing/src/content/blueprints/003-payment-systems-stripe-vs-direct-debit.md b/apps/mana/apps/landing/src/content/blueprints/003-payment-systems-stripe-vs-direct-debit.md similarity index 99% rename from apps/manacore/apps/landing/src/content/blueprints/003-payment-systems-stripe-vs-direct-debit.md rename to apps/mana/apps/landing/src/content/blueprints/003-payment-systems-stripe-vs-direct-debit.md index 0b82549ba..b3e430317 100644 --- a/apps/manacore/apps/landing/src/content/blueprints/003-payment-systems-stripe-vs-direct-debit.md +++ b/apps/mana/apps/landing/src/content/blueprints/003-payment-systems-stripe-vs-direct-debit.md @@ -46,13 +46,13 @@ Als europäisches SaaS-Unternehmen stellt sich früher oder später die Frage: * ## Ausgangssituation -ManaCore verwendet aktuell eine umfangreiche **Stripe-Integration** für Monetarisierung: +Mana verwendet aktuell eine umfangreiche **Stripe-Integration** für Monetarisierung: ### Aktuelles Zwei-Säulen-Modell ``` ┌─────────────────────────────────────────────────────────────────┐ -│ ManaCore Monetarisierung │ +│ Mana Monetarisierung │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ Säule 1: Subscriptions Säule 2: Credits │ diff --git a/apps/manacore/apps/landing/src/content/branchen/ngos.md b/apps/mana/apps/landing/src/content/branchen/ngos.md similarity index 100% rename from apps/manacore/apps/landing/src/content/branchen/ngos.md rename to apps/mana/apps/landing/src/content/branchen/ngos.md diff --git a/apps/manacore/apps/landing/src/content/branchen/privat.md b/apps/mana/apps/landing/src/content/branchen/privat.md similarity index 100% rename from apps/manacore/apps/landing/src/content/branchen/privat.md rename to apps/mana/apps/landing/src/content/branchen/privat.md diff --git a/apps/manacore/apps/landing/src/content/branchen/selbststaendige.md b/apps/mana/apps/landing/src/content/branchen/selbststaendige.md similarity index 100% rename from apps/manacore/apps/landing/src/content/branchen/selbststaendige.md rename to apps/mana/apps/landing/src/content/branchen/selbststaendige.md diff --git a/apps/manacore/apps/landing/src/content/branchen/startups.md b/apps/mana/apps/landing/src/content/branchen/startups.md similarity index 100% rename from apps/manacore/apps/landing/src/content/branchen/startups.md rename to apps/mana/apps/landing/src/content/branchen/startups.md diff --git a/apps/manacore/apps/landing/src/content/branchen/studenten.md b/apps/mana/apps/landing/src/content/branchen/studenten.md similarity index 100% rename from apps/manacore/apps/landing/src/content/branchen/studenten.md rename to apps/mana/apps/landing/src/content/branchen/studenten.md diff --git a/apps/manacore/apps/landing/src/content/branchen/universitaeten.md b/apps/mana/apps/landing/src/content/branchen/universitaeten.md similarity index 100% rename from apps/manacore/apps/landing/src/content/branchen/universitaeten.md rename to apps/mana/apps/landing/src/content/branchen/universitaeten.md diff --git a/apps/manacore/apps/landing/src/content/branchen/unternehmen.md b/apps/mana/apps/landing/src/content/branchen/unternehmen.md similarity index 100% rename from apps/manacore/apps/landing/src/content/branchen/unternehmen.md rename to apps/mana/apps/landing/src/content/branchen/unternehmen.md diff --git a/apps/manacore/apps/landing/src/content/branchen/vereine.md b/apps/mana/apps/landing/src/content/branchen/vereine.md similarity index 100% rename from apps/manacore/apps/landing/src/content/branchen/vereine.md rename to apps/mana/apps/landing/src/content/branchen/vereine.md diff --git a/apps/manacore/apps/landing/src/content/clients/edisconet.md b/apps/mana/apps/landing/src/content/clients/edisconet.md similarity index 100% rename from apps/manacore/apps/landing/src/content/clients/edisconet.md rename to apps/mana/apps/landing/src/content/clients/edisconet.md diff --git a/apps/manacore/apps/landing/src/content/clients/hslu-hochschule-luzern.md b/apps/mana/apps/landing/src/content/clients/hslu-hochschule-luzern.md similarity index 100% rename from apps/manacore/apps/landing/src/content/clients/hslu-hochschule-luzern.md rename to apps/mana/apps/landing/src/content/clients/hslu-hochschule-luzern.md diff --git a/apps/manacore/apps/landing/src/content/clients/mindmed.md b/apps/mana/apps/landing/src/content/clients/mindmed.md similarity index 100% rename from apps/manacore/apps/landing/src/content/clients/mindmed.md rename to apps/mana/apps/landing/src/content/clients/mindmed.md diff --git a/apps/manacore/apps/landing/src/content/clients/rwu-ravensburg-weingarten.md b/apps/mana/apps/landing/src/content/clients/rwu-ravensburg-weingarten.md similarity index 100% rename from apps/manacore/apps/landing/src/content/clients/rwu-ravensburg-weingarten.md rename to apps/mana/apps/landing/src/content/clients/rwu-ravensburg-weingarten.md diff --git a/apps/manacore/apps/landing/src/content/clients/uni-heidelberg.md b/apps/mana/apps/landing/src/content/clients/uni-heidelberg.md similarity index 100% rename from apps/manacore/apps/landing/src/content/clients/uni-heidelberg.md rename to apps/mana/apps/landing/src/content/clients/uni-heidelberg.md diff --git a/apps/manacore/apps/landing/src/content/config.ts b/apps/mana/apps/landing/src/content/config.ts similarity index 93% rename from apps/manacore/apps/landing/src/content/config.ts rename to apps/mana/apps/landing/src/content/config.ts index a7f05503b..856af0a2e 100644 --- a/apps/manacore/apps/landing/src/content/config.ts +++ b/apps/mana/apps/landing/src/content/config.ts @@ -243,14 +243,14 @@ const manascoreCollection = defineCollection({ // Cross-app consistency (shared package usage) consistency: z .object({ - sharedAuth: z.boolean(), // Uses @manacore/shared-nestjs-auth or nestjs-integration - sharedUi: z.boolean(), // Uses @manacore/shared-ui components - sharedTheme: z.boolean(), // Uses @manacore/shared-theme - sharedBranding: z.boolean(), // Uses @manacore/shared-branding - sharedI18n: z.boolean(), // Uses @manacore/shared-i18n - sharedErrorTracking: z.boolean(), // Uses @manacore/shared-error-tracking - sharedStorage: z.boolean().optional(), // Uses @manacore/shared-storage (if applicable) - sharedLlm: z.boolean().optional(), // Uses @manacore/shared-llm (if applicable) + sharedAuth: z.boolean(), // Uses @mana/shared-nestjs-auth or nestjs-integration + sharedUi: z.boolean(), // Uses @mana/shared-ui components + sharedTheme: z.boolean(), // Uses @mana/shared-theme + sharedBranding: z.boolean(), // Uses @mana/shared-branding + sharedI18n: z.boolean(), // Uses @mana/shared-i18n + sharedErrorTracking: z.boolean(), // Uses @mana/shared-error-tracking + sharedStorage: z.boolean().optional(), // Uses @mana/shared-storage (if applicable) + sharedLlm: z.boolean().optional(), // Uses @mana/shared-llm (if applicable) }) .optional(), // Analytics maturity (Umami tracking depth) diff --git a/apps/manacore/apps/landing/src/content/context/overview-short.md b/apps/mana/apps/landing/src/content/context/overview-short.md similarity index 100% rename from apps/manacore/apps/landing/src/content/context/overview-short.md rename to apps/mana/apps/landing/src/content/context/overview-short.md diff --git a/apps/manacore/apps/landing/src/content/context/overview.md b/apps/mana/apps/landing/src/content/context/overview.md similarity index 100% rename from apps/manacore/apps/landing/src/content/context/overview.md rename to apps/mana/apps/landing/src/content/context/overview.md diff --git a/apps/manacore/apps/landing/src/content/context/questions.md b/apps/mana/apps/landing/src/content/context/questions.md similarity index 100% rename from apps/manacore/apps/landing/src/content/context/questions.md rename to apps/mana/apps/landing/src/content/context/questions.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-01-23-production-launch.md b/apps/mana/apps/landing/src/content/devlog/2026-01-23-production-launch.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-01-23-production-launch.md rename to apps/mana/apps/landing/src/content/devlog/2026-01-23-production-launch.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-01-24-guest-mode-improvements.md b/apps/mana/apps/landing/src/content/devlog/2026-01-24-guest-mode-improvements.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-01-24-guest-mode-improvements.md rename to apps/mana/apps/landing/src/content/devlog/2026-01-24-guest-mode-improvements.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-01-25-nutriphi-monitoring-infrastructure.md b/apps/mana/apps/landing/src/content/devlog/2026-01-25-nutriphi-monitoring-infrastructure.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-01-25-nutriphi-monitoring-infrastructure.md rename to apps/mana/apps/landing/src/content/devlog/2026-01-25-nutriphi-monitoring-infrastructure.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-01-26-monitoring-auth-ai.md b/apps/mana/apps/landing/src/content/devlog/2026-01-26-monitoring-auth-ai.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-01-26-monitoring-auth-ai.md rename to apps/mana/apps/landing/src/content/devlog/2026-01-26-monitoring-auth-ai.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-01-27-matrix-infrastructure-self-hosting.md b/apps/mana/apps/landing/src/content/devlog/2026-01-27-matrix-infrastructure-self-hosting.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-01-27-matrix-infrastructure-self-hosting.md rename to apps/mana/apps/landing/src/content/devlog/2026-01-27-matrix-infrastructure-self-hosting.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-01-28-massive-feature-sprint.md b/apps/mana/apps/landing/src/content/devlog/2026-01-28-massive-feature-sprint.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-01-28-massive-feature-sprint.md rename to apps/mana/apps/landing/src/content/devlog/2026-01-28-massive-feature-sprint.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-01-29-microservices-matrix-consolidation.md b/apps/mana/apps/landing/src/content/devlog/2026-01-29-microservices-matrix-consolidation.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-01-29-microservices-matrix-consolidation.md rename to apps/mana/apps/landing/src/content/devlog/2026-01-29-microservices-matrix-consolidation.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-01-30-matrix-bots-llm-playground.md b/apps/mana/apps/landing/src/content/devlog/2026-01-30-matrix-bots-llm-playground.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-01-30-matrix-bots-llm-playground.md rename to apps/mana/apps/landing/src/content/devlog/2026-01-30-matrix-bots-llm-playground.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-01-31-matrix-consolidation-voice-support.md b/apps/mana/apps/landing/src/content/devlog/2026-01-31-matrix-consolidation-voice-support.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-01-31-matrix-consolidation-voice-support.md rename to apps/mana/apps/landing/src/content/devlog/2026-01-31-matrix-consolidation-voice-support.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-02-01-ssd-migration-i18n-cicd.md b/apps/mana/apps/landing/src/content/devlog/2026-02-01-ssd-migration-i18n-cicd.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-02-01-ssd-migration-i18n-cicd.md rename to apps/mana/apps/landing/src/content/devlog/2026-02-01-ssd-migration-i18n-cicd.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-02-02-cross-domain-sso-mana-media.md b/apps/mana/apps/landing/src/content/devlog/2026-02-02-cross-domain-sso-mana-media.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-02-02-cross-domain-sso-mana-media.md rename to apps/mana/apps/landing/src/content/devlog/2026-02-02-cross-domain-sso-mana-media.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-02-11-photos-app-stt-tts-admin.md b/apps/mana/apps/landing/src/content/devlog/2026-02-11-photos-app-stt-tts-admin.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-02-11-photos-app-stt-tts-admin.md rename to apps/mana/apps/landing/src/content/devlog/2026-02-11-photos-app-stt-tts-admin.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-02-12-gdpr-matrix-mac-mini.md b/apps/mana/apps/landing/src/content/devlog/2026-02-12-gdpr-matrix-mac-mini.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-02-12-gdpr-matrix-mac-mini.md rename to apps/mana/apps/landing/src/content/devlog/2026-02-12-gdpr-matrix-mac-mini.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-02-13-gift-codes-stripe-zitare.md b/apps/mana/apps/landing/src/content/devlog/2026-02-13-gift-codes-stripe-zitare.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-02-13-gift-codes-stripe-zitare.md rename to apps/mana/apps/landing/src/content/devlog/2026-02-13-gift-codes-stripe-zitare.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-02-14-matrix-stt-bot-gift-codes-onboarding.md b/apps/mana/apps/landing/src/content/devlog/2026-02-14-matrix-stt-bot-gift-codes-onboarding.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-02-14-matrix-stt-bot-gift-codes-onboarding.md rename to apps/mana/apps/landing/src/content/devlog/2026-02-14-matrix-stt-bot-gift-codes-onboarding.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-02-15-onboarding-polish-calendar-views.md b/apps/mana/apps/landing/src/content/devlog/2026-02-15-onboarding-polish-calendar-views.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-02-15-onboarding-polish-calendar-views.md rename to apps/mana/apps/landing/src/content/devlog/2026-02-15-onboarding-polish-calendar-views.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-02-16-lightwrite-pwa-stripe-sepa.md b/apps/mana/apps/landing/src/content/devlog/2026-02-16-lightwrite-pwa-stripe-sepa.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-02-16-lightwrite-pwa-stripe-sepa.md rename to apps/mana/apps/landing/src/content/devlog/2026-02-16-lightwrite-pwa-stripe-sepa.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-02-17-spiral-db-planta-bot-mana-values.md b/apps/mana/apps/landing/src/content/devlog/2026-02-17-spiral-db-planta-bot-mana-values.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-02-17-spiral-db-planta-bot-mana-values.md rename to apps/mana/apps/landing/src/content/devlog/2026-02-17-spiral-db-planta-bot-mana-values.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-06-matrix-mobile-manalink.md b/apps/mana/apps/landing/src/content/devlog/2026-03-06-matrix-mobile-manalink.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-06-matrix-mobile-manalink.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-06-matrix-mobile-manalink.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-07-manalink-sdk55-fixes.md b/apps/mana/apps/landing/src/content/devlog/2026-03-07-manalink-sdk55-fixes.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-07-manalink-sdk55-fixes.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-07-manalink-sdk55-fixes.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-11-cd-pipeline-mac-mini-runner.md b/apps/mana/apps/landing/src/content/devlog/2026-03-11-cd-pipeline-mac-mini-runner.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-11-cd-pipeline-mac-mini-runner.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-11-cd-pipeline-mac-mini-runner.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-12-manalink-eas-build-fixes.md b/apps/mana/apps/landing/src/content/devlog/2026-03-12-manalink-eas-build-fixes.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-12-manalink-eas-build-fixes.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-12-manalink-eas-build-fixes.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-15-traces-app-calendar-hardening.md b/apps/mana/apps/landing/src/content/devlog/2026-03-15-traces-app-calendar-hardening.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-15-traces-app-calendar-hardening.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-15-traces-app-calendar-hardening.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-17-mukke-mobile-e2e-tests-pre-commit.md b/apps/mana/apps/landing/src/content/devlog/2026-03-17-mukke-mobile-e2e-tests-pre-commit.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-17-mukke-mobile-e2e-tests-pre-commit.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-17-mukke-mobile-e2e-tests-pre-commit.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-18-test-coverage-contacts-todo.md b/apps/mana/apps/landing/src/content/devlog/2026-03-18-test-coverage-contacts-todo.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-18-test-coverage-contacts-todo.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-18-test-coverage-contacts-todo.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-19-security-hardening-error-tracking.md b/apps/mana/apps/landing/src/content/devlog/2026-03-19-security-hardening-error-tracking.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-19-security-hardening-error-tracking.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-19-security-hardening-error-tracking.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-20-cross-app-sso-infrastructure-fixes.md b/apps/mana/apps/landing/src/content/devlog/2026-03-20-cross-app-sso-infrastructure-fixes.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-20-cross-app-sso-infrastructure-fixes.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-20-cross-app-sso-infrastructure-fixes.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-21-whopixels-refactor-storage-picture.md b/apps/mana/apps/landing/src/content/devlog/2026-03-21-whopixels-refactor-storage-picture.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-21-whopixels-refactor-storage-picture.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-21-whopixels-refactor-storage-picture.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-22-analytics-pwa-visualizer-error-tracking.md b/apps/mana/apps/landing/src/content/devlog/2026-03-22-analytics-pwa-visualizer-error-tracking.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-22-analytics-pwa-visualizer-error-tracking.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-22-analytics-pwa-visualizer-error-tracking.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-23-abend-context-menus-llm-onboarding.md b/apps/mana/apps/landing/src/content/devlog/2026-03-23-abend-context-menus-llm-onboarding.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-23-abend-context-menus-llm-onboarding.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-23-abend-context-menus-llm-onboarding.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-23-vormittag-manalink-prod-ready.md b/apps/mana/apps/landing/src/content/devlog/2026-03-23-vormittag-manalink-prod-ready.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-23-vormittag-manalink-prod-ready.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-23-vormittag-manalink-prod-ready.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-24-abend-pwa-todo-infra.md b/apps/mana/apps/landing/src/content/devlog/2026-03-24-abend-pwa-todo-infra.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-24-abend-pwa-todo-infra.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-24-abend-pwa-todo-infra.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-24-vormittag-credits-dashboard-infra.md b/apps/mana/apps/landing/src/content/devlog/2026-03-24-vormittag-credits-dashboard-infra.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-24-vormittag-credits-dashboard-infra.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-24-vormittag-credits-dashboard-infra.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-25-storage-auth-tags-analytics.md b/apps/mana/apps/landing/src/content/devlog/2026-03-25-storage-auth-tags-analytics.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-25-storage-auth-tags-analytics.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-25-storage-auth-tags-analytics.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-26-local-first-architektur-planung.md b/apps/mana/apps/landing/src/content/devlog/2026-03-26-local-first-architektur-planung.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-26-local-first-architektur-planung.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-26-local-first-architektur-planung.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-27-matrix-bot-go-consolidation.md b/apps/mana/apps/landing/src/content/devlog/2026-03-27-matrix-bot-go-consolidation.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-27-matrix-bot-go-consolidation.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-27-matrix-bot-go-consolidation.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-28-gpu-offload-colima-migration.md b/apps/mana/apps/landing/src/content/devlog/2026-03-28-gpu-offload-colima-migration.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-28-gpu-offload-colima-migration.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-28-gpu-offload-colima-migration.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-28-local-first-nestjs-elimination.md b/apps/mana/apps/landing/src/content/devlog/2026-03-28-local-first-nestjs-elimination.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-28-local-first-nestjs-elimination.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-28-local-first-nestjs-elimination.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-30-todo-ux-keyboard-navigation.md b/apps/mana/apps/landing/src/content/devlog/2026-03-30-todo-ux-keyboard-navigation.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-30-todo-ux-keyboard-navigation.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-30-todo-ux-keyboard-navigation.md diff --git a/apps/manacore/apps/landing/src/content/devlog/2026-03-31-memoro-statuspage-todo-infra.md b/apps/mana/apps/landing/src/content/devlog/2026-03-31-memoro-statuspage-todo-infra.md similarity index 100% rename from apps/manacore/apps/landing/src/content/devlog/2026-03-31-memoro-statuspage-todo-infra.md rename to apps/mana/apps/landing/src/content/devlog/2026-03-31-memoro-statuspage-todo-infra.md diff --git a/apps/manacore/apps/landing/src/content/legal/agb.md b/apps/mana/apps/landing/src/content/legal/agb.md similarity index 100% rename from apps/manacore/apps/landing/src/content/legal/agb.md rename to apps/mana/apps/landing/src/content/legal/agb.md diff --git a/apps/manacore/apps/landing/src/content/legal/datenschutz.md b/apps/mana/apps/landing/src/content/legal/datenschutz.md similarity index 99% rename from apps/manacore/apps/landing/src/content/legal/datenschutz.md rename to apps/mana/apps/landing/src/content/legal/datenschutz.md index 2eba5be81..cbcfc5487 100644 --- a/apps/manacore/apps/landing/src/content/legal/datenschutz.md +++ b/apps/mana/apps/landing/src/content/legal/datenschutz.md @@ -1,6 +1,6 @@ --- title: Datenschutzerklärung -description: Informationen zum Datenschutz und zur Verarbeitung personenbezogener Daten bei ManaCore +description: Informationen zum Datenschutz und zur Verarbeitung personenbezogener Daten bei Mana lastUpdated: 2026-02-13 order: 1 --- diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-calendar.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-calendar.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-calendar.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-calendar.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-cards.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-cards.md similarity index 98% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-cards.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-cards.md index bce47e342..3e411256e 100644 --- a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-cards.md +++ b/apps/mana/apps/landing/src/content/manascore/2026-03-19-cards.md @@ -51,7 +51,7 @@ Cards hat als einzige App ein **Cloud Run Deployment** (CI/CD via GitHub Actions - Nur 2 Module (minimal) - 4 Controller, aber keine DTOs -- ManaCoreModule Integration +- ManaModule Integration - **Lücke:** Keine lokale DB-Schemas, kein Rate Limiting ## Frontend (65/100) diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-chat.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-chat.md similarity index 97% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-chat.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-chat.md index 4728e94a4..b4ec81b55 100644 --- a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-chat.md +++ b/apps/mana/apps/landing/src/content/manascore/2026-03-19-chat.md @@ -51,7 +51,7 @@ Chat ist die **feature-reichste AI-App** im Monorepo mit 9 KI-Modellen (7 lokale - 9 Module: Chat, Conversation, Template, Space, Document, Model, Admin, Database, Health - 7 Controller mit CRUD -- ManaCoreModule Integration (Auth + Credits) +- ManaModule Integration (Auth + Credits) - MetricsModule für Monitoring - Health Checks konfiguriert - ThrottlerModule (100 req/60s) für Rate Limiting @@ -85,7 +85,7 @@ Chat ist die **feature-reichste AI-App** im Monorepo mit 9 KI-Modellen (7 lokale ## Security (82/100) -- Auth Guards auf allen Endpoints (ManaCoreModule) +- Auth Guards auf allen Endpoints (ManaModule) - ThrottlerModule Rate Limiting (100 req/60s) - @MaxLength(50000) auf Chat-Content - Input-Validierung via DTOs diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-clock.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-clock.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-clock.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-clock.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-contacts.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-contacts.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-contacts.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-contacts.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-context.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-context.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-context.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-context.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-manacore.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-manacore.md similarity index 90% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-manacore.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-manacore.md index deb4c0479..6229c2df8 100644 --- a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-manacore.md +++ b/apps/mana/apps/landing/src/content/manascore/2026-03-19-manacore.md @@ -1,5 +1,5 @@ --- -title: 'ManaCore: Production Readiness Audit' +title: 'Mana: Production Readiness Audit' description: 'Multi-App Ecosystem Dashboard mit 25 Web-Routes, 11 Dashboard-Widgets, 103 Tests, Error Boundary, Onboarding, 5 Sprachen, Mobile App' date: 2026-03-19 app: 'manacore' @@ -45,9 +45,9 @@ stats: ## Zusammenfassung -ManaCore ist das **Herzstück des Monorepos** - das Multi-App Ecosystem Dashboard mit Onboarding-Wizard, 11 konfigurierbaren Dashboard-Widgets, Credit-System und App-Switcher. Als **Aggregator-App** ohne eigenes Backend designt - nutzt mana-core-auth + API-Middleware zu allen Service-Backends. Starkes Frontend mit 5 Sprachen, deployed auf Mac Mini via Docker. +Mana ist das **Herzstück des Monorepos** - das Multi-App Ecosystem Dashboard mit Onboarding-Wizard, 11 konfigurierbaren Dashboard-Widgets, Credit-System und App-Switcher. Als **Aggregator-App** ohne eigenes Backend designt - nutzt mana-core-auth + API-Middleware zu allen Service-Backends. Starkes Frontend mit 5 Sprachen, deployed auf Mac Mini via Docker. -> **Hinweis:** ManaCore ist eine Aggregator-App. Backend- und Database-Scores bewerten die API-Integration und das Architektur-Pattern, nicht eigene Services. +> **Hinweis:** Mana ist eine Aggregator-App. Backend- und Database-Scores bewerten die API-Integration und das Architektur-Pattern, nicht eigene Services. ## Backend / API-Integration (55/100) diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-matrix.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-matrix.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-matrix.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-matrix.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-mukke.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-mukke.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-mukke.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-mukke.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-nutriphi.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-nutriphi.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-nutriphi.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-nutriphi.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-photos.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-photos.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-photos.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-photos.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-picture.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-picture.md similarity index 98% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-picture.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-picture.md index ccd25e6b3..29513f0de 100644 --- a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-picture.md +++ b/apps/mana/apps/landing/src/content/manascore/2026-03-19-picture.md @@ -84,7 +84,7 @@ Picture ist die **AI-Bildgenerations-App** mit Replicate Integration, Boards, Ex ## Security (80/100) -- Auth Guards auf allen Endpoints (ManaCoreModule) +- Auth Guards auf allen Endpoints (ManaModule) - ThrottlerModule Rate Limiting (100 req/60s) - Webhook-Secret Validierung für Replicate Callbacks - Input-Validierung via DTOs (@Min/@Max auf numerischen Werten) diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-planta.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-planta.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-planta.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-planta.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-presi.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-presi.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-presi.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-presi.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-questions.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-questions.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-questions.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-questions.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-skilltree.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-skilltree.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-skilltree.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-skilltree.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-storage.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-storage.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-storage.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-storage.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-todo.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-todo.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-todo.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-todo.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-traces.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-traces.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-traces.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-traces.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-19-zitare.md b/apps/mana/apps/landing/src/content/manascore/2026-03-19-zitare.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-19-zitare.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-19-zitare.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-27-inventar.md b/apps/mana/apps/landing/src/content/manascore/2026-03-27-inventar.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-27-inventar.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-27-inventar.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-28-architecture-update.md b/apps/mana/apps/landing/src/content/manascore/2026-03-28-architecture-update.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-28-architecture-update.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-28-architecture-update.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-30-calc.md b/apps/mana/apps/landing/src/content/manascore/2026-03-30-calc.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-30-calc.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-30-calc.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-30-citycorners.md b/apps/mana/apps/landing/src/content/manascore/2026-03-30-citycorners.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-30-citycorners.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-30-citycorners.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-30-manavoxel.md b/apps/mana/apps/landing/src/content/manascore/2026-03-30-manavoxel.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-30-manavoxel.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-30-manavoxel.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-30-news.md b/apps/mana/apps/landing/src/content/manascore/2026-03-30-news.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-30-news.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-30-news.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-30-playground.md b/apps/mana/apps/landing/src/content/manascore/2026-03-30-playground.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-30-playground.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-30-playground.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-30-times.md b/apps/mana/apps/landing/src/content/manascore/2026-03-30-times.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-30-times.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-30-times.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-30-uload.md b/apps/mana/apps/landing/src/content/manascore/2026-03-30-uload.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-30-uload.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-30-uload.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-03-30-wisekeep.md b/apps/mana/apps/landing/src/content/manascore/2026-03-30-wisekeep.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-03-30-wisekeep.md rename to apps/mana/apps/landing/src/content/manascore/2026-03-30-wisekeep.md diff --git a/apps/manacore/apps/landing/src/content/manascore/2026-04-01-memoro.md b/apps/mana/apps/landing/src/content/manascore/2026-04-01-memoro.md similarity index 100% rename from apps/manacore/apps/landing/src/content/manascore/2026-04-01-memoro.md rename to apps/mana/apps/landing/src/content/manascore/2026-04-01-memoro.md diff --git a/apps/manacore/apps/landing/src/content/manascore/about.md b/apps/mana/apps/landing/src/content/manascore/about.md similarity index 98% rename from apps/manacore/apps/landing/src/content/manascore/about.md rename to apps/mana/apps/landing/src/content/manascore/about.md index efb1d7613..3096571f7 100644 --- a/apps/manacore/apps/landing/src/content/manascore/about.md +++ b/apps/mana/apps/landing/src/content/manascore/about.md @@ -1,6 +1,6 @@ --- title: 'Was ist der ManaScore?' -description: 'Der ManaScore ist das interne Qualitätsbewertungssystem für alle ManaCore Apps. Er bewertet jede App in 8 Kategorien auf einer Skala von 0-100.' +description: 'Der ManaScore ist das interne Qualitätsbewertungssystem für alle Mana Apps. Er bewertet jede App in 8 Kategorien auf einer Skala von 0-100.' date: 2026-03-24 app: 'manacore' author: 'Till Schneider' @@ -29,7 +29,7 @@ stats: ## Was ist der ManaScore? -Der **ManaScore** ist das interne Qualitätsbewertungssystem für alle Apps im ManaCore-Ecosystem. Er gibt einen schnellen Überblick über den Reifegrad jeder App und identifiziert Bereiche, die vor einem Production-Deployment verbessert werden müssen. +Der **ManaScore** ist das interne Qualitätsbewertungssystem für alle Apps im Mana-Ecosystem. Er gibt einen schnellen Überblick über den Reifegrad jeder App und identifiziert Bereiche, die vor einem Production-Deployment verbessert werden müssen. Der ManaScore ist **kein Lighthouse-Score** und **kein Performance-Benchmark**. Er bewertet die **ganzheitliche Production-Readiness** einer App — von der Code-Qualität über Security bis hin zur User Experience. @@ -313,6 +313,6 @@ Jede Metrik ist ein Prozentwert (0-100%): - **Pragmatisch, nicht perfektionistisch** — Ein Score von 85+ bedeutet "production-ready", nicht "perfekt" - **Gewichtet nach Impact** — Security und Testing wiegen schwerer als Documentation -- **Relativ zum Ecosystem** — Scores werden im Kontext des ManaCore-Monorepos vergeben +- **Relativ zum Ecosystem** — Scores werden im Kontext des Mana-Monorepos vergeben - **Kein Benchmarking gegen externe Apps** — Der ManaScore vergleicht Apps nur untereinander - **Action-orientiert** — Jeder Report enthält konkrete Empfehlungen, nicht nur Bewertungen diff --git a/apps/manacore/apps/landing/src/content/mission/de/unser-team.md b/apps/mana/apps/landing/src/content/mission/de/unser-team.md similarity index 100% rename from apps/manacore/apps/landing/src/content/mission/de/unser-team.md rename to apps/mana/apps/landing/src/content/mission/de/unser-team.md diff --git a/apps/manacore/apps/landing/src/content/mission/de/unsere-vision.md b/apps/mana/apps/landing/src/content/mission/de/unsere-vision.md similarity index 100% rename from apps/manacore/apps/landing/src/content/mission/de/unsere-vision.md rename to apps/mana/apps/landing/src/content/mission/de/unsere-vision.md diff --git a/apps/manacore/apps/landing/src/content/mission/de/unsere-werte.md b/apps/mana/apps/landing/src/content/mission/de/unsere-werte.md similarity index 100% rename from apps/manacore/apps/landing/src/content/mission/de/unsere-werte.md rename to apps/mana/apps/landing/src/content/mission/de/unsere-werte.md diff --git a/apps/manacore/apps/landing/src/content/mission/en/our-vision.md b/apps/mana/apps/landing/src/content/mission/en/our-vision.md similarity index 100% rename from apps/manacore/apps/landing/src/content/mission/en/our-vision.md rename to apps/mana/apps/landing/src/content/mission/en/our-vision.md diff --git a/apps/manacore/apps/landing/src/content/privacy/dsgvo-konformitaet.md b/apps/mana/apps/landing/src/content/privacy/dsgvo-konformitaet.md similarity index 100% rename from apps/manacore/apps/landing/src/content/privacy/dsgvo-konformitaet.md rename to apps/mana/apps/landing/src/content/privacy/dsgvo-konformitaet.md diff --git a/apps/manacore/apps/landing/src/content/privacy/ki-modelle-umgang.md b/apps/mana/apps/landing/src/content/privacy/ki-modelle-umgang.md similarity index 100% rename from apps/manacore/apps/landing/src/content/privacy/ki-modelle-umgang.md rename to apps/mana/apps/landing/src/content/privacy/ki-modelle-umgang.md diff --git a/apps/manacore/apps/landing/src/data/ecosystem-health.json b/apps/mana/apps/landing/src/data/ecosystem-health.json similarity index 98% rename from apps/manacore/apps/landing/src/data/ecosystem-health.json rename to apps/mana/apps/landing/src/data/ecosystem-health.json index bcce6a0e7..928238691 100644 --- a/apps/manacore/apps/landing/src/data/ecosystem-health.json +++ b/apps/mana/apps/landing/src/data/ecosystem-health.json @@ -89,7 +89,7 @@ "phosphor": 12, "inlineSvg": 1 }, - "manacore": { + "mana": { "phosphor": 34, "inlineSvg": 25 }, @@ -320,7 +320,7 @@ "contacts", "context", "inventar", - "manacore", + "mana", "cards", "manavoxel", "matrix", @@ -405,7 +405,7 @@ "todos": { "totalCount": 33, "perApp": { - "manacore": 13, + "mana": 13, "memoro": 11, "contacts": 5, "todo": 2, @@ -462,7 +462,7 @@ "adoption": 97, "activeApps": 29, "perApp": { - "manacore": 166, + "mana": 166, "todo": 135, "calendar": 125, "contacts": 95, @@ -505,7 +505,7 @@ "authGuard": { "adoption": 83, "appsWithAuthGuard": 25, - "missing": ["manacore", "manavoxel", "matrix", "memoro", "playground"] + "missing": ["mana", "manavoxel", "matrix", "memoro", "playground"] }, "docker": { "adoption": 80, @@ -522,7 +522,7 @@ "contacts", "context", "inventar", - "manacore", + "mana", "cards", "manavoxel", "matrix", diff --git a/apps/manacore/apps/landing/src/data/pricing.js b/apps/mana/apps/landing/src/data/pricing.js similarity index 100% rename from apps/manacore/apps/landing/src/data/pricing.js rename to apps/mana/apps/landing/src/data/pricing.js diff --git a/apps/manacore/apps/landing/src/env.d.ts b/apps/mana/apps/landing/src/env.d.ts similarity index 100% rename from apps/manacore/apps/landing/src/env.d.ts rename to apps/mana/apps/landing/src/env.d.ts diff --git a/apps/manacore/apps/landing/src/layouts/Layout.astro b/apps/mana/apps/landing/src/layouts/Layout.astro similarity index 97% rename from apps/manacore/apps/landing/src/layouts/Layout.astro rename to apps/mana/apps/landing/src/layouts/Layout.astro index ad47b6edc..e67952fe8 100644 --- a/apps/manacore/apps/landing/src/layouts/Layout.astro +++ b/apps/mana/apps/landing/src/layouts/Layout.astro @@ -1,7 +1,7 @@ --- import AlternateLinks from '../components/seo/AlternateLinks.astro'; import Sidebar from '../components/navigation/Sidebar.astro'; -import Analytics from '@manacore/shared-landing-ui/atoms/Analytics.astro'; +import Analytics from '@mana/shared-landing-ui/atoms/Analytics.astro'; import { getLangFromUrl } from '../lib/i18n/config'; export interface Props { @@ -49,14 +49,14 @@ const lang = getLangFromUrl(Astro.url); - + - + @@ -151,7 +151,7 @@ const lang = getLangFromUrl(Astro.url); --grid-cols: 12; /* Default: Desktop 12 Spalten */ /* === Shared Landing UI CSS Variables === */ - /* Primary colors - ManaCore Blue */ + /* Primary colors - Mana Blue */ --color-primary: #3b82f6; --color-primary-hover: #2563eb; --color-primary-glow: rgba(59, 130, 246, 0.3); diff --git a/apps/manacore/apps/landing/src/lib/i18n/config.ts b/apps/mana/apps/landing/src/lib/i18n/config.ts similarity index 100% rename from apps/manacore/apps/landing/src/lib/i18n/config.ts rename to apps/mana/apps/landing/src/lib/i18n/config.ts diff --git a/apps/manacore/apps/landing/src/lib/i18n/utils.ts b/apps/mana/apps/landing/src/lib/i18n/utils.ts similarity index 100% rename from apps/manacore/apps/landing/src/lib/i18n/utils.ts rename to apps/mana/apps/landing/src/lib/i18n/utils.ts diff --git a/apps/manacore/apps/landing/src/pages/apps/[slug].astro b/apps/mana/apps/landing/src/pages/apps/[slug].astro similarity index 100% rename from apps/manacore/apps/landing/src/pages/apps/[slug].astro rename to apps/mana/apps/landing/src/pages/apps/[slug].astro diff --git a/apps/manacore/apps/landing/src/pages/apps/index.astro b/apps/mana/apps/landing/src/pages/apps/index.astro similarity index 100% rename from apps/manacore/apps/landing/src/pages/apps/index.astro rename to apps/mana/apps/landing/src/pages/apps/index.astro diff --git a/apps/manacore/apps/landing/src/pages/blueprints/[slug].astro b/apps/mana/apps/landing/src/pages/blueprints/[slug].astro similarity index 99% rename from apps/manacore/apps/landing/src/pages/blueprints/[slug].astro rename to apps/mana/apps/landing/src/pages/blueprints/[slug].astro index eb8f431f7..a7dd4389c 100644 --- a/apps/manacore/apps/landing/src/pages/blueprints/[slug].astro +++ b/apps/mana/apps/landing/src/pages/blueprints/[slug].astro @@ -121,7 +121,7 @@ const formatDate = (date: Date) => { ---
{ }; --- - +
diff --git a/apps/manacore/apps/landing/src/pages/clients/[slug].astro b/apps/mana/apps/landing/src/pages/clients/[slug].astro similarity index 100% rename from apps/manacore/apps/landing/src/pages/clients/[slug].astro rename to apps/mana/apps/landing/src/pages/clients/[slug].astro diff --git a/apps/manacore/apps/landing/src/pages/clients/index.astro b/apps/mana/apps/landing/src/pages/clients/index.astro similarity index 100% rename from apps/manacore/apps/landing/src/pages/clients/index.astro rename to apps/mana/apps/landing/src/pages/clients/index.astro diff --git a/apps/manacore/apps/landing/src/pages/context/[slug].astro b/apps/mana/apps/landing/src/pages/context/[slug].astro similarity index 100% rename from apps/manacore/apps/landing/src/pages/context/[slug].astro rename to apps/mana/apps/landing/src/pages/context/[slug].astro diff --git a/apps/manacore/apps/landing/src/pages/context/index.astro b/apps/mana/apps/landing/src/pages/context/index.astro similarity index 100% rename from apps/manacore/apps/landing/src/pages/context/index.astro rename to apps/mana/apps/landing/src/pages/context/index.astro diff --git a/apps/manacore/apps/landing/src/pages/de/shared-demo.astro b/apps/mana/apps/landing/src/pages/de/shared-demo.astro similarity index 74% rename from apps/manacore/apps/landing/src/pages/de/shared-demo.astro rename to apps/mana/apps/landing/src/pages/de/shared-demo.astro index 1737ef108..2f1923616 100644 --- a/apps/manacore/apps/landing/src/pages/de/shared-demo.astro +++ b/apps/mana/apps/landing/src/pages/de/shared-demo.astro @@ -1,19 +1,19 @@ --- /** - * Demo page showcasing shared landing UI components in ManaCore + * Demo page showcasing shared landing UI components in Mana */ import Layout from '../../layouts/Layout.astro'; // Import shared components -import Button from '@manacore/shared-landing-ui/atoms/Button.astro'; -import Card from '@manacore/shared-landing-ui/atoms/Card.astro'; -import Badge from '@manacore/shared-landing-ui/atoms/Badge.astro'; -import Container from '@manacore/shared-landing-ui/atoms/Container.astro'; -import HeroSection from '@manacore/shared-landing-ui/sections/HeroSection.astro'; -import FeatureSection from '@manacore/shared-landing-ui/sections/FeatureSection.astro'; -import FAQSection from '@manacore/shared-landing-ui/sections/FAQSection.astro'; -import PricingSection from '@manacore/shared-landing-ui/sections/PricingSection.astro'; -import CTASection from '@manacore/shared-landing-ui/sections/CTASection.astro'; +import Button from '@mana/shared-landing-ui/atoms/Button.astro'; +import Card from '@mana/shared-landing-ui/atoms/Card.astro'; +import Badge from '@mana/shared-landing-ui/atoms/Badge.astro'; +import Container from '@mana/shared-landing-ui/atoms/Container.astro'; +import HeroSection from '@mana/shared-landing-ui/sections/HeroSection.astro'; +import FeatureSection from '@mana/shared-landing-ui/sections/FeatureSection.astro'; +import FAQSection from '@mana/shared-landing-ui/sections/FAQSection.astro'; +import PricingSection from '@mana/shared-landing-ui/sections/PricingSection.astro'; +import CTASection from '@mana/shared-landing-ui/sections/CTASection.astro'; const features = [ { @@ -40,18 +40,18 @@ const features = [ const faqs = [ { - question: 'Was ist ManaCore?', + question: 'Was ist Mana?', answer: - 'ManaCore ist eine KI-gestützte Plattform zur Messung und Verbesserung der Team-Performance.', + 'Mana ist eine KI-gestützte Plattform zur Messung und Verbesserung der Team-Performance.', }, { question: 'Welche Apps sind enthalten?', answer: - 'ManaCore umfasst Memoro (Sprachaufnahmen), Cards (Teammanagement) und Märchenzauber (Kindergeschichten).', + 'Mana umfasst Memoro (Sprachaufnahmen), Cards (Teammanagement) und Märchenzauber (Kindergeschichten).', }, { question: 'Gibt es eine kostenlose Testversion?', - answer: 'Ja, du kannst ManaCore 14 Tage kostenlos testen - keine Kreditkarte erforderlich.', + answer: 'Ja, du kannst Mana 14 Tage kostenlos testen - keine Kreditkarte erforderlich.', }, ]; @@ -86,10 +86,10 @@ const pricingPlans = [ ]; --- - + { }; --- - +
diff --git a/apps/manacore/apps/landing/src/pages/devlog/activity.astro b/apps/mana/apps/landing/src/pages/devlog/activity.astro similarity index 99% rename from apps/manacore/apps/landing/src/pages/devlog/activity.astro rename to apps/mana/apps/landing/src/pages/devlog/activity.astro index 096325a61..9a7f25cdb 100644 --- a/apps/manacore/apps/landing/src/pages/devlog/activity.astro +++ b/apps/mana/apps/landing/src/pages/devlog/activity.astro @@ -241,7 +241,7 @@ const formatShortDate = (date: Date) => { const avgCommitsPerDay = totalDays > 0 ? Math.round(totalCommits / totalDays) : 0; --- - +
@@ -281,7 +281,7 @@ const avgCommitsPerDay = totalDays > 0 ? Math.round(totalCommits / totalDays) : Entwicklungsaktivität - Transparente Einblicke in die Entwicklung des ManaCore Ökosystems. Jeder Commit zählt. + Transparente Einblicke in die Entwicklung des Mana Ökosystems. Jeder Commit zählt.
diff --git a/apps/manacore/apps/landing/src/pages/devlog/index.astro b/apps/mana/apps/landing/src/pages/devlog/index.astro similarity index 97% rename from apps/manacore/apps/landing/src/pages/devlog/index.astro rename to apps/mana/apps/landing/src/pages/devlog/index.astro index 8e40967a8..fdee4c7c7 100644 --- a/apps/manacore/apps/landing/src/pages/devlog/index.astro +++ b/apps/mana/apps/landing/src/pages/devlog/index.astro @@ -58,7 +58,7 @@ const formatDate = (date: Date) => { }; --- - +
@@ -83,7 +83,7 @@ const formatDate = (date: Date) => {
diff --git a/apps/manacore/apps/landing/src/pages/manascore/index.astro b/apps/mana/apps/landing/src/pages/manascore/index.astro similarity index 98% rename from apps/manacore/apps/landing/src/pages/manascore/index.astro rename to apps/mana/apps/landing/src/pages/manascore/index.astro index 24e60a81a..2efac3b5a 100644 --- a/apps/manacore/apps/landing/src/pages/manascore/index.astro +++ b/apps/mana/apps/landing/src/pages/manascore/index.astro @@ -41,15 +41,15 @@ const statuses = [...new Set(sortedAudits.map((a) => a.data.status))]; ---
@@ -460,7 +460,7 @@ const statuses = [...new Set(sortedAudits.map((a) => a.data.status))];
diff --git a/apps/manacore/apps/landing/src/pages/mission/[slug].astro b/apps/mana/apps/landing/src/pages/mission/[slug].astro similarity index 100% rename from apps/manacore/apps/landing/src/pages/mission/[slug].astro rename to apps/mana/apps/landing/src/pages/mission/[slug].astro diff --git a/apps/manacore/apps/landing/src/pages/mission/index.astro b/apps/mana/apps/landing/src/pages/mission/index.astro similarity index 100% rename from apps/manacore/apps/landing/src/pages/mission/index.astro rename to apps/mana/apps/landing/src/pages/mission/index.astro diff --git a/apps/manacore/apps/landing/src/pages/pricing.astro b/apps/mana/apps/landing/src/pages/pricing.astro similarity index 100% rename from apps/manacore/apps/landing/src/pages/pricing.astro rename to apps/mana/apps/landing/src/pages/pricing.astro diff --git a/apps/manacore/apps/landing/src/pages/privacy/[slug].astro b/apps/mana/apps/landing/src/pages/privacy/[slug].astro similarity index 100% rename from apps/manacore/apps/landing/src/pages/privacy/[slug].astro rename to apps/mana/apps/landing/src/pages/privacy/[slug].astro diff --git a/apps/manacore/apps/landing/src/pages/privacy/index.astro b/apps/mana/apps/landing/src/pages/privacy/index.astro similarity index 100% rename from apps/manacore/apps/landing/src/pages/privacy/index.astro rename to apps/mana/apps/landing/src/pages/privacy/index.astro diff --git a/apps/manacore/apps/landing/src/pages/release-plan.astro b/apps/mana/apps/landing/src/pages/release-plan.astro similarity index 100% rename from apps/manacore/apps/landing/src/pages/release-plan.astro rename to apps/mana/apps/landing/src/pages/release-plan.astro diff --git a/apps/manacore/apps/landing/src/styles/global.css b/apps/mana/apps/landing/src/styles/global.css similarity index 100% rename from apps/manacore/apps/landing/src/styles/global.css rename to apps/mana/apps/landing/src/styles/global.css diff --git a/apps/manacore/apps/landing/tailwind.config.mjs b/apps/mana/apps/landing/tailwind.config.mjs similarity index 100% rename from apps/manacore/apps/landing/tailwind.config.mjs rename to apps/mana/apps/landing/tailwind.config.mjs diff --git a/apps/manacore/apps/landing/tsconfig.json b/apps/mana/apps/landing/tsconfig.json similarity index 100% rename from apps/manacore/apps/landing/tsconfig.json rename to apps/mana/apps/landing/tsconfig.json diff --git a/apps/manacore/apps/landing/wrangler.toml b/apps/mana/apps/landing/wrangler.toml similarity index 58% rename from apps/manacore/apps/landing/wrangler.toml rename to apps/mana/apps/landing/wrangler.toml index 2ca7e5070..b8539e470 100644 --- a/apps/manacore/apps/landing/wrangler.toml +++ b/apps/mana/apps/landing/wrangler.toml @@ -1,6 +1,6 @@ -# Cloudflare Pages configuration for ManaCore Landing +# Cloudflare Pages configuration for Mana Landing # Deployed via GitHub Actions (Direct Upload) -name = "manacore-landing" +name = "mana-landing" compatibility_date = "2024-12-01" pages_build_output_dir = "dist" diff --git a/apps/manacore/apps/mobile/.env.example b/apps/mana/apps/mobile/.env.example similarity index 100% rename from apps/manacore/apps/mobile/.env.example rename to apps/mana/apps/mobile/.env.example diff --git a/apps/manacore/apps/mobile/.gitignore b/apps/mana/apps/mobile/.gitignore similarity index 100% rename from apps/manacore/apps/mobile/.gitignore rename to apps/mana/apps/mobile/.gitignore diff --git a/apps/manacore/apps/mobile/app-env.d.ts b/apps/mana/apps/mobile/app-env.d.ts similarity index 100% rename from apps/manacore/apps/mobile/app-env.d.ts rename to apps/mana/apps/mobile/app-env.d.ts diff --git a/apps/manacore/apps/mobile/app.json b/apps/mana/apps/mobile/app.json similarity index 86% rename from apps/manacore/apps/mobile/app.json rename to apps/mana/apps/mobile/app.json index 729842763..d5bf84616 100644 --- a/apps/manacore/apps/mobile/app.json +++ b/apps/mana/apps/mobile/app.json @@ -1,9 +1,9 @@ { "expo": { - "name": "manacore", - "slug": "manacore", + "name": "mana", + "slug": "mana", "version": "1.0.0", - "scheme": "manacore", + "scheme": "mana", "web": { "bundler": "metro", "output": "static", @@ -33,7 +33,7 @@ "assetBundlePatterns": ["**/*"], "ios": { "supportsTablet": true, - "bundleIdentifier": "com.tilljs.manacore", + "bundleIdentifier": "com.tilljs.mana", "infoPlist": { "ITSAppUsesNonExemptEncryption": false } @@ -43,7 +43,7 @@ "foregroundImage": "./assets/adaptive-icon.png", "backgroundColor": "#ffffff" }, - "package": "com.tilljs.manacore" + "package": "com.tilljs.mana" }, "extra": { "router": { diff --git a/apps/manacore/apps/mobile/app/(drawer)/(tabs)/_layout.tsx b/apps/mana/apps/mobile/app/(drawer)/(tabs)/_layout.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/(drawer)/(tabs)/_layout.tsx rename to apps/mana/apps/mobile/app/(drawer)/(tabs)/_layout.tsx diff --git a/apps/manacore/apps/mobile/app/(drawer)/(tabs)/index.tsx b/apps/mana/apps/mobile/app/(drawer)/(tabs)/index.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/(drawer)/(tabs)/index.tsx rename to apps/mana/apps/mobile/app/(drawer)/(tabs)/index.tsx diff --git a/apps/manacore/apps/mobile/app/(drawer)/(tabs)/two.tsx b/apps/mana/apps/mobile/app/(drawer)/(tabs)/two.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/(drawer)/(tabs)/two.tsx rename to apps/mana/apps/mobile/app/(drawer)/(tabs)/two.tsx diff --git a/apps/manacore/apps/mobile/app/(drawer)/_layout.tsx b/apps/mana/apps/mobile/app/(drawer)/_layout.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/(drawer)/_layout.tsx rename to apps/mana/apps/mobile/app/(drawer)/_layout.tsx diff --git a/apps/manacore/apps/mobile/app/(drawer)/apps.tsx b/apps/mana/apps/mobile/app/(drawer)/apps.tsx similarity index 96% rename from apps/manacore/apps/mobile/app/(drawer)/apps.tsx rename to apps/mana/apps/mobile/app/(drawer)/apps.tsx index 4e6b263d2..7bf664726 100644 --- a/apps/manacore/apps/mobile/app/(drawer)/apps.tsx +++ b/apps/mana/apps/mobile/app/(drawer)/apps.tsx @@ -7,8 +7,8 @@ import { Container } from '~/components/Container'; import { useTheme } from '../../utils/themeContext'; // TODO: App-Liste (Satellites) war zuvor in Supabase gespeichert. -// Bis diese Daten über mana-core-auth oder einen eigenen Endpunkt verfügbar sind, -// verwenden wir eine statische Liste der bekannten ManaCore-Apps. +// Bis diese Daten über mana-auth oder einen eigenen Endpunkt verfügbar sind, +// verwenden wir eine statische Liste der bekannten Mana-Apps. interface AppInfo { id: string; diff --git a/apps/manacore/apps/mobile/app/(drawer)/get-mana.tsx b/apps/mana/apps/mobile/app/(drawer)/get-mana.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/(drawer)/get-mana.tsx rename to apps/mana/apps/mobile/app/(drawer)/get-mana.tsx diff --git a/apps/manacore/apps/mobile/app/(drawer)/index.tsx b/apps/mana/apps/mobile/app/(drawer)/index.tsx similarity index 98% rename from apps/manacore/apps/mobile/app/(drawer)/index.tsx rename to apps/mana/apps/mobile/app/(drawer)/index.tsx index 8fa810171..45fb33528 100644 --- a/apps/manacore/apps/mobile/app/(drawer)/index.tsx +++ b/apps/mana/apps/mobile/app/(drawer)/index.tsx @@ -40,7 +40,7 @@ const ActionButton = ({ const FeatureList = ({ isDarkMode }: { isDarkMode: boolean }) => ( - Mit ManaCore können Sie: + Mit Mana können Sie: {FEATURES.map((feature, index) => ( @@ -70,7 +70,7 @@ export default function Home() { @@ -87,7 +87,7 @@ export default function Home() { - Willkommen bei ManaCore + Willkommen bei Mana Teilen Sie Ihre Energie mit anderen und verwalten Sie Ihre Mana-Kredite. diff --git a/apps/manacore/apps/mobile/app/(drawer)/organizations/[id].tsx b/apps/mana/apps/mobile/app/(drawer)/organizations/[id].tsx similarity index 100% rename from apps/manacore/apps/mobile/app/(drawer)/organizations/[id].tsx rename to apps/mana/apps/mobile/app/(drawer)/organizations/[id].tsx diff --git a/apps/manacore/apps/mobile/app/(drawer)/organizations/index.tsx b/apps/mana/apps/mobile/app/(drawer)/organizations/index.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/(drawer)/organizations/index.tsx rename to apps/mana/apps/mobile/app/(drawer)/organizations/index.tsx diff --git a/apps/manacore/apps/mobile/app/(drawer)/send-mana.tsx b/apps/mana/apps/mobile/app/(drawer)/send-mana.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/(drawer)/send-mana.tsx rename to apps/mana/apps/mobile/app/(drawer)/send-mana.tsx diff --git a/apps/manacore/apps/mobile/app/(drawer)/settings.tsx b/apps/mana/apps/mobile/app/(drawer)/settings.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/(drawer)/settings.tsx rename to apps/mana/apps/mobile/app/(drawer)/settings.tsx diff --git a/apps/manacore/apps/mobile/app/(drawer)/teams/[id].tsx b/apps/mana/apps/mobile/app/(drawer)/teams/[id].tsx similarity index 96% rename from apps/manacore/apps/mobile/app/(drawer)/teams/[id].tsx rename to apps/mana/apps/mobile/app/(drawer)/teams/[id].tsx index b4a319a49..f45d63194 100644 --- a/apps/manacore/apps/mobile/app/(drawer)/teams/[id].tsx +++ b/apps/mana/apps/mobile/app/(drawer)/teams/[id].tsx @@ -7,7 +7,7 @@ import { Container } from '~/components/Container'; import TeamMembers from '../../../components/TeamMembers'; import { useTheme } from '../../../utils/themeContext'; -// TODO: Team-Details sind in mana-core-auth noch nicht implementiert. +// TODO: Team-Details sind in mana-auth noch nicht implementiert. // Diese Seite zeigt vorerst die vereinfachte TeamMembers-Komponente an. export default function TeamDetails() { diff --git a/apps/manacore/apps/mobile/app/(drawer)/teams/index.tsx b/apps/mana/apps/mobile/app/(drawer)/teams/index.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/(drawer)/teams/index.tsx rename to apps/mana/apps/mobile/app/(drawer)/teams/index.tsx diff --git a/apps/manacore/apps/mobile/app/+html.tsx b/apps/mana/apps/mobile/app/+html.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/+html.tsx rename to apps/mana/apps/mobile/app/+html.tsx diff --git a/apps/manacore/apps/mobile/app/+not-found.tsx b/apps/mana/apps/mobile/app/+not-found.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/+not-found.tsx rename to apps/mana/apps/mobile/app/+not-found.tsx diff --git a/apps/manacore/apps/mobile/app/_layout.tsx b/apps/mana/apps/mobile/app/_layout.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/_layout.tsx rename to apps/mana/apps/mobile/app/_layout.tsx diff --git a/apps/manacore/apps/mobile/app/auth/_layout.tsx b/apps/mana/apps/mobile/app/auth/_layout.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/auth/_layout.tsx rename to apps/mana/apps/mobile/app/auth/_layout.tsx diff --git a/apps/manacore/apps/mobile/app/auth/reset-password.tsx b/apps/mana/apps/mobile/app/auth/reset-password.tsx similarity index 98% rename from apps/manacore/apps/mobile/app/auth/reset-password.tsx rename to apps/mana/apps/mobile/app/auth/reset-password.tsx index 937f74b53..1b625fc65 100644 --- a/apps/manacore/apps/mobile/app/auth/reset-password.tsx +++ b/apps/mana/apps/mobile/app/auth/reset-password.tsx @@ -109,7 +109,7 @@ export default function ResetPasswordScreen() { setLoading(true); try { - const apiUrl = process.env.EXPO_PUBLIC_MANA_CORE_AUTH_URL || 'http://localhost:3001'; + const apiUrl = process.env.EXPO_PUBLIC_MANA_AUTH_URL || 'http://localhost:3001'; const endpoint = `${apiUrl}/api/v1/auth/reset-password`; console.log('Calling update password endpoint:', endpoint); diff --git a/apps/manacore/apps/mobile/app/login.tsx b/apps/mana/apps/mobile/app/login.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/login.tsx rename to apps/mana/apps/mobile/app/login.tsx diff --git a/apps/manacore/apps/mobile/app/modal.tsx b/apps/mana/apps/mobile/app/modal.tsx similarity index 100% rename from apps/manacore/apps/mobile/app/modal.tsx rename to apps/mana/apps/mobile/app/modal.tsx diff --git a/apps/manacore/apps/mobile/assets/adaptive-icon.png b/apps/mana/apps/mobile/assets/adaptive-icon.png similarity index 100% rename from apps/manacore/apps/mobile/assets/adaptive-icon.png rename to apps/mana/apps/mobile/assets/adaptive-icon.png diff --git a/apps/manacore/apps/mobile/assets/favicon.png b/apps/mana/apps/mobile/assets/favicon.png similarity index 100% rename from apps/manacore/apps/mobile/assets/favicon.png rename to apps/mana/apps/mobile/assets/favicon.png diff --git a/apps/manacore/apps/mobile/assets/icon.png b/apps/mana/apps/mobile/assets/icon.png similarity index 100% rename from apps/manacore/apps/mobile/assets/icon.png rename to apps/mana/apps/mobile/assets/icon.png diff --git a/apps/manacore/apps/mobile/assets/splash.png b/apps/mana/apps/mobile/assets/splash.png similarity index 100% rename from apps/manacore/apps/mobile/assets/splash.png rename to apps/mana/apps/mobile/assets/splash.png diff --git a/apps/manacore/apps/mobile/babel.config.js b/apps/mana/apps/mobile/babel.config.js similarity index 100% rename from apps/manacore/apps/mobile/babel.config.js rename to apps/mana/apps/mobile/babel.config.js diff --git a/apps/manacore/apps/mobile/cesconfig.json b/apps/mana/apps/mobile/cesconfig.json similarity index 95% rename from apps/manacore/apps/mobile/cesconfig.json rename to apps/mana/apps/mobile/cesconfig.json index 144d8e3e7..51ada7d07 100644 --- a/apps/manacore/apps/mobile/cesconfig.json +++ b/apps/mana/apps/mobile/cesconfig.json @@ -1,6 +1,6 @@ { "cesVersion": "2.14.1", - "projectName": "manacore", + "projectName": "mana", "packages": [ { "name": "expo-router", diff --git a/apps/manacore/apps/mobile/components/Account.tsx b/apps/mana/apps/mobile/components/Account.tsx similarity index 100% rename from apps/manacore/apps/mobile/components/Account.tsx rename to apps/mana/apps/mobile/components/Account.tsx diff --git a/apps/manacore/apps/mobile/components/Auth.tsx b/apps/mana/apps/mobile/components/Auth.tsx similarity index 98% rename from apps/manacore/apps/mobile/components/Auth.tsx rename to apps/mana/apps/mobile/components/Auth.tsx index 76da4dc1d..f99d6da45 100644 --- a/apps/manacore/apps/mobile/components/Auth.tsx +++ b/apps/mana/apps/mobile/components/Auth.tsx @@ -88,7 +88,7 @@ export default function Auth() { - ManaCore + Mana @@ -223,7 +223,7 @@ export default function Auth() { - © {new Date().getFullYear()} ManaCore. Alle Rechte vorbehalten. + © {new Date().getFullYear()} Mana. Alle Rechte vorbehalten. diff --git a/apps/manacore/apps/mobile/components/Button.tsx b/apps/mana/apps/mobile/components/Button.tsx similarity index 100% rename from apps/manacore/apps/mobile/components/Button.tsx rename to apps/mana/apps/mobile/components/Button.tsx diff --git a/apps/manacore/apps/mobile/components/Container.tsx b/apps/mana/apps/mobile/components/Container.tsx similarity index 100% rename from apps/manacore/apps/mobile/components/Container.tsx rename to apps/mana/apps/mobile/components/Container.tsx diff --git a/apps/manacore/apps/mobile/components/CreateOrganization.tsx b/apps/mana/apps/mobile/components/CreateOrganization.tsx similarity index 100% rename from apps/manacore/apps/mobile/components/CreateOrganization.tsx rename to apps/mana/apps/mobile/components/CreateOrganization.tsx diff --git a/apps/manacore/apps/mobile/components/CreateTeam.tsx b/apps/mana/apps/mobile/components/CreateTeam.tsx similarity index 95% rename from apps/manacore/apps/mobile/components/CreateTeam.tsx rename to apps/mana/apps/mobile/components/CreateTeam.tsx index 81fd2e2dd..c88dfdc07 100644 --- a/apps/manacore/apps/mobile/components/CreateTeam.tsx +++ b/apps/mana/apps/mobile/components/CreateTeam.tsx @@ -4,7 +4,7 @@ import { FontAwesome5 } from '@expo/vector-icons'; import { useAuth } from '../context/AuthProvider'; import { useTheme } from '../utils/themeContext'; -// TODO: Team-Erstellung ist in mana-core-auth noch nicht implementiert. +// TODO: Team-Erstellung ist in mana-auth noch nicht implementiert. // Diese Komponente zeigt vorerst einen Hinweis an. interface CreateTeamProps { diff --git a/apps/manacore/apps/mobile/components/DashboardStats.tsx b/apps/mana/apps/mobile/components/DashboardStats.tsx similarity index 100% rename from apps/manacore/apps/mobile/components/DashboardStats.tsx rename to apps/mana/apps/mobile/components/DashboardStats.tsx diff --git a/apps/manacore/apps/mobile/components/EditScreenInfo.tsx b/apps/mana/apps/mobile/components/EditScreenInfo.tsx similarity index 100% rename from apps/manacore/apps/mobile/components/EditScreenInfo.tsx rename to apps/mana/apps/mobile/components/EditScreenInfo.tsx diff --git a/apps/manacore/apps/mobile/components/HeaderButton.tsx b/apps/mana/apps/mobile/components/HeaderButton.tsx similarity index 100% rename from apps/manacore/apps/mobile/components/HeaderButton.tsx rename to apps/mana/apps/mobile/components/HeaderButton.tsx diff --git a/apps/manacore/apps/mobile/components/OrganizationList.tsx b/apps/mana/apps/mobile/components/OrganizationList.tsx similarity index 100% rename from apps/manacore/apps/mobile/components/OrganizationList.tsx rename to apps/mana/apps/mobile/components/OrganizationList.tsx diff --git a/apps/manacore/apps/mobile/components/ScreenContent.tsx b/apps/mana/apps/mobile/components/ScreenContent.tsx similarity index 100% rename from apps/manacore/apps/mobile/components/ScreenContent.tsx rename to apps/mana/apps/mobile/components/ScreenContent.tsx diff --git a/apps/manacore/apps/mobile/components/SendMana.tsx b/apps/mana/apps/mobile/components/SendMana.tsx similarity index 96% rename from apps/manacore/apps/mobile/components/SendMana.tsx rename to apps/mana/apps/mobile/components/SendMana.tsx index 0e1266363..d7a8604c9 100644 --- a/apps/manacore/apps/mobile/components/SendMana.tsx +++ b/apps/mana/apps/mobile/components/SendMana.tsx @@ -4,7 +4,7 @@ import { useAuth } from '../context/AuthProvider'; import { api } from '../services/api'; import { useTheme } from '../utils/themeContext'; -// TODO: Mana-Übertragung zwischen Benutzern ist in mana-core-auth noch nicht implementiert. +// TODO: Mana-Übertragung zwischen Benutzern ist in mana-auth noch nicht implementiert. // Diese Komponente zeigt vorerst nur den aktuellen Kontostand an. export default function SendMana() { diff --git a/apps/manacore/apps/mobile/components/TabBarIcon.tsx b/apps/mana/apps/mobile/components/TabBarIcon.tsx similarity index 100% rename from apps/manacore/apps/mobile/components/TabBarIcon.tsx rename to apps/mana/apps/mobile/components/TabBarIcon.tsx diff --git a/apps/manacore/apps/mobile/components/TeamList.tsx b/apps/mana/apps/mobile/components/TeamList.tsx similarity index 91% rename from apps/manacore/apps/mobile/components/TeamList.tsx rename to apps/mana/apps/mobile/components/TeamList.tsx index e68a95eb0..325e8cc7d 100644 --- a/apps/manacore/apps/mobile/components/TeamList.tsx +++ b/apps/mana/apps/mobile/components/TeamList.tsx @@ -4,7 +4,7 @@ import { FontAwesome5 } from '@expo/vector-icons'; import { useAuth } from '../context/AuthProvider'; import { useTheme } from '../utils/themeContext'; -// TODO: Teams mit Credit-Zuweisung sind in mana-core-auth noch nicht implementiert. +// TODO: Teams mit Credit-Zuweisung sind in mana-auth noch nicht implementiert. // Diese Komponente zeigt vorerst einen Hinweis an. interface TeamListProps { @@ -13,7 +13,7 @@ interface TeamListProps { // Stub for external callers that used refreshTeamList export function refreshTeamList(_userId: string, callback?: () => void) { - // No-op: Teams are not yet available via mana-core-auth + // No-op: Teams are not yet available via mana-auth if (callback) callback(); } diff --git a/apps/manacore/apps/mobile/components/TeamMembers.tsx b/apps/mana/apps/mobile/components/TeamMembers.tsx similarity index 97% rename from apps/manacore/apps/mobile/components/TeamMembers.tsx rename to apps/mana/apps/mobile/components/TeamMembers.tsx index bad7a154c..e7e1d69dd 100644 --- a/apps/manacore/apps/mobile/components/TeamMembers.tsx +++ b/apps/mana/apps/mobile/components/TeamMembers.tsx @@ -4,7 +4,7 @@ import { FontAwesome5 } from '@expo/vector-icons'; import { useAuth } from '../context/AuthProvider'; import { useTheme } from '../utils/themeContext'; -// TODO: Team-Mitgliederverwaltung mit Credit-Zuweisung ist in mana-core-auth noch nicht implementiert. +// TODO: Team-Mitgliederverwaltung mit Credit-Zuweisung ist in mana-auth noch nicht implementiert. // Diese Komponente zeigt vorerst einen Hinweis an. interface TeamMembersProps { diff --git a/apps/manacore/apps/mobile/context/AuthProvider.tsx b/apps/mana/apps/mobile/context/AuthProvider.tsx similarity index 97% rename from apps/manacore/apps/mobile/context/AuthProvider.tsx rename to apps/mana/apps/mobile/context/AuthProvider.tsx index c8d48cb6f..9e90a09d7 100644 --- a/apps/manacore/apps/mobile/context/AuthProvider.tsx +++ b/apps/mana/apps/mobile/context/AuthProvider.tsx @@ -9,10 +9,10 @@ import { setNetworkAdapter, createMemoryStorageAdapter, type UserData, -} from '@manacore/shared-auth'; +} from '@mana/shared-auth'; // Mana Core Auth URL from environment -const MANA_AUTH_URL = process.env.EXPO_PUBLIC_MANA_CORE_AUTH_URL || 'http://localhost:3001'; +const MANA_AUTH_URL = process.env.EXPO_PUBLIC_MANA_AUTH_URL || 'http://localhost:3001'; // Create SecureStore adapter for React Native const createSecureStoreAdapter = () => ({ diff --git a/apps/manacore/apps/mobile/eas.json b/apps/mana/apps/mobile/eas.json similarity index 100% rename from apps/manacore/apps/mobile/eas.json rename to apps/mana/apps/mobile/eas.json diff --git a/apps/manacore/apps/mobile/eslint.config.mjs b/apps/mana/apps/mobile/eslint.config.mjs similarity index 89% rename from apps/manacore/apps/mobile/eslint.config.mjs rename to apps/mana/apps/mobile/eslint.config.mjs index 791c25c12..e244d213a 100644 --- a/apps/manacore/apps/mobile/eslint.config.mjs +++ b/apps/mana/apps/mobile/eslint.config.mjs @@ -1,5 +1,5 @@ // @ts-check -import { baseConfig, typescriptConfig, reactConfig, prettierConfig } from '@manacore/eslint-config'; +import { baseConfig, typescriptConfig, reactConfig, prettierConfig } from '@mana/eslint-config'; export default [ { diff --git a/apps/manacore/apps/mobile/global.css b/apps/mana/apps/mobile/global.css similarity index 100% rename from apps/manacore/apps/mobile/global.css rename to apps/mana/apps/mobile/global.css diff --git a/apps/manacore/apps/mobile/metro.config.js b/apps/mana/apps/mobile/metro.config.js similarity index 100% rename from apps/manacore/apps/mobile/metro.config.js rename to apps/mana/apps/mobile/metro.config.js diff --git a/apps/manacore/apps/mobile/nativewind-env.d.ts b/apps/mana/apps/mobile/nativewind-env.d.ts similarity index 100% rename from apps/manacore/apps/mobile/nativewind-env.d.ts rename to apps/mana/apps/mobile/nativewind-env.d.ts diff --git a/apps/manacore/apps/mobile/netlify.toml b/apps/mana/apps/mobile/netlify.toml similarity index 100% rename from apps/manacore/apps/mobile/netlify.toml rename to apps/mana/apps/mobile/netlify.toml diff --git a/apps/manacore/apps/mobile/package.json b/apps/mana/apps/mobile/package.json similarity index 96% rename from apps/manacore/apps/mobile/package.json rename to apps/mana/apps/mobile/package.json index 0c456fe14..5743322a0 100644 --- a/apps/manacore/apps/mobile/package.json +++ b/apps/mana/apps/mobile/package.json @@ -1,5 +1,5 @@ { - "name": "@manacore/mobile", + "name": "@mana/mobile", "version": "0.2.0", "main": "expo-router/entry", "scripts": { @@ -21,7 +21,7 @@ "@react-navigation/bottom-tabs": "^7.0.5", "@react-navigation/drawer": "^7.0.0", "@react-navigation/native": "^7.0.3", - "@manacore/shared-auth": "workspace:*", + "@mana/shared-auth": "workspace:*", "expo": "~55.0.5", "expo-secure-store": "~55.0.8", "expo-constants": "~55.0.7", diff --git a/apps/manacore/apps/mobile/prettier.config.js b/apps/mana/apps/mobile/prettier.config.js similarity index 100% rename from apps/manacore/apps/mobile/prettier.config.js rename to apps/mana/apps/mobile/prettier.config.js diff --git a/apps/manacore/apps/mobile/services/api.ts b/apps/mana/apps/mobile/services/api.ts similarity index 94% rename from apps/manacore/apps/mobile/services/api.ts rename to apps/mana/apps/mobile/services/api.ts index 3743772fe..2e57716c0 100644 --- a/apps/manacore/apps/mobile/services/api.ts +++ b/apps/mana/apps/mobile/services/api.ts @@ -1,15 +1,15 @@ import * as SecureStore from 'expo-secure-store'; -const BASE_URL = process.env.EXPO_PUBLIC_MANA_CORE_AUTH_URL || 'http://localhost:3001'; +const BASE_URL = process.env.EXPO_PUBLIC_MANA_AUTH_URL || 'http://localhost:3001'; /** - * API client for mana-core-auth service. + * API client for mana-auth service. * Wraps fetch calls and automatically attaches JWT from SecureStore. */ -class ManaCoreApi { +class ManaApi { private async getToken(): Promise { try { - const raw = await SecureStore.getItemAsync('@manacore/app_token'); + const raw = await SecureStore.getItemAsync('@mana/app_token'); if (!raw) return null; // The token might be stored as a JSON string try { @@ -206,4 +206,4 @@ class ManaCoreApi { } // Export a singleton instance -export const api = new ManaCoreApi(); +export const api = new ManaApi(); diff --git a/apps/manacore/apps/mobile/supabase/migrations/20250315_find_user_by_email.sql b/apps/mana/apps/mobile/supabase/migrations/20250315_find_user_by_email.sql similarity index 100% rename from apps/manacore/apps/mobile/supabase/migrations/20250315_find_user_by_email.sql rename to apps/mana/apps/mobile/supabase/migrations/20250315_find_user_by_email.sql diff --git a/apps/manacore/apps/mobile/tailwind.config.js b/apps/mana/apps/mobile/tailwind.config.js similarity index 100% rename from apps/manacore/apps/mobile/tailwind.config.js rename to apps/mana/apps/mobile/tailwind.config.js diff --git a/apps/manacore/apps/mobile/tsconfig.json b/apps/mana/apps/mobile/tsconfig.json similarity index 100% rename from apps/manacore/apps/mobile/tsconfig.json rename to apps/mana/apps/mobile/tsconfig.json diff --git a/apps/manacore/apps/mobile/utils/themeContext.tsx b/apps/mana/apps/mobile/utils/themeContext.tsx similarity index 100% rename from apps/manacore/apps/mobile/utils/themeContext.tsx rename to apps/mana/apps/mobile/utils/themeContext.tsx diff --git a/apps/manacore/apps/web/.env.example b/apps/mana/apps/web/.env.example similarity index 100% rename from apps/manacore/apps/web/.env.example rename to apps/mana/apps/web/.env.example diff --git a/apps/manacore/apps/web/.gitignore b/apps/mana/apps/web/.gitignore similarity index 100% rename from apps/manacore/apps/web/.gitignore rename to apps/mana/apps/web/.gitignore diff --git a/apps/manacore/apps/web/Dockerfile b/apps/mana/apps/web/Dockerfile similarity index 80% rename from apps/manacore/apps/web/Dockerfile rename to apps/mana/apps/web/Dockerfile index e2459d89b..49986afdb 100644 --- a/apps/manacore/apps/web/Dockerfile +++ b/apps/mana/apps/web/Dockerfile @@ -10,7 +10,7 @@ ENV PUBLIC_MANA_CORE_AUTH_URL=$PUBLIC_MANA_CORE_AUTH_URL ENV MIDDLEWARE_URL=$MIDDLEWARE_URL ENV PUBLIC_SYNC_SERVER_URL=$PUBLIC_SYNC_SERVER_URL -COPY apps/manacore/apps/web ./apps/manacore/apps/web +COPY apps/mana/apps/web ./apps/mana/apps/web COPY apps/calc/packages/shared ./apps/calc/packages/shared COPY apps/zitare/packages/content ./apps/zitare/packages/content COPY packages/shared-uload ./packages/shared-uload @@ -23,16 +23,16 @@ RUN --mount=type=cache,id=pnpm,target=/root/.local/share/pnpm/store \ WORKDIR /app/apps/zitare/packages/content RUN pnpm build -WORKDIR /app/apps/manacore/apps/web +WORKDIR /app/apps/mana/apps/web RUN pnpm exec svelte-kit sync RUN NODE_OPTIONS="--max-old-space-size=4096" pnpm build FROM node:20-alpine AS production -WORKDIR /app/apps/manacore/apps/web +WORKDIR /app/apps/mana/apps/web COPY --from=builder /app/node_modules/.pnpm /app/node_modules/.pnpm -COPY --from=builder /app/apps/manacore/apps/web/node_modules ./node_modules -COPY --from=builder /app/apps/manacore/apps/web/build ./build -COPY --from=builder /app/apps/manacore/apps/web/package.json ./ +COPY --from=builder /app/apps/mana/apps/web/node_modules ./node_modules +COPY --from=builder /app/apps/mana/apps/web/build ./build +COPY --from=builder /app/apps/mana/apps/web/package.json ./ EXPOSE 5000 ENV NODE_ENV=production PORT=5000 HOST=0.0.0.0 diff --git a/apps/manacore/apps/web/MIDDLEWARE_SECURITY.md b/apps/mana/apps/web/MIDDLEWARE_SECURITY.md similarity index 100% rename from apps/manacore/apps/web/MIDDLEWARE_SECURITY.md rename to apps/mana/apps/web/MIDDLEWARE_SECURITY.md diff --git a/apps/manacore/apps/web/README.md b/apps/mana/apps/web/README.md similarity index 97% rename from apps/manacore/apps/web/README.md rename to apps/mana/apps/web/README.md index e6d217060..c424b3442 100644 --- a/apps/manacore/apps/web/README.md +++ b/apps/mana/apps/web/README.md @@ -1,6 +1,6 @@ -# ManaCore Web +# Mana Web -Modern SvelteKit web application for ManaCore credit/mana management system. +Modern SvelteKit web application for Mana credit/mana management system. ## Features diff --git a/apps/manacore/apps/web/SETUP.md b/apps/mana/apps/web/SETUP.md similarity index 99% rename from apps/manacore/apps/web/SETUP.md rename to apps/mana/apps/web/SETUP.md index 099a5a0ff..d61ffee67 100644 --- a/apps/manacore/apps/web/SETUP.md +++ b/apps/mana/apps/web/SETUP.md @@ -1,4 +1,4 @@ -# ManaCore Web - Setup Guide +# Mana Web - Setup Guide ## 🎉 Project Created Successfully! diff --git a/apps/manacore/apps/web/WELCOME_ROUTE_SETUP.md b/apps/mana/apps/web/WELCOME_ROUTE_SETUP.md similarity index 99% rename from apps/manacore/apps/web/WELCOME_ROUTE_SETUP.md rename to apps/mana/apps/web/WELCOME_ROUTE_SETUP.md index 3cad55e19..da22151b6 100644 --- a/apps/manacore/apps/web/WELCOME_ROUTE_SETUP.md +++ b/apps/mana/apps/web/WELCOME_ROUTE_SETUP.md @@ -1,4 +1,4 @@ -# Welcome Route Setup - ManaCore Web +# Welcome Route Setup - Mana Web ## ✅ Files Created diff --git a/apps/manacore/apps/web/eslint.config.js b/apps/mana/apps/web/eslint.config.js similarity index 88% rename from apps/manacore/apps/web/eslint.config.js rename to apps/mana/apps/web/eslint.config.js index f0e51b62e..7e1591471 100644 --- a/apps/manacore/apps/web/eslint.config.js +++ b/apps/mana/apps/web/eslint.config.js @@ -4,7 +4,7 @@ import { typescriptConfig, svelteConfig, prettierConfig, -} from '@manacore/eslint-config'; +} from '@mana/eslint-config'; export default [ { diff --git a/apps/manacore/apps/web/src/app.css b/apps/mana/apps/web/src/app.css similarity index 100% rename from apps/manacore/apps/web/src/app.css rename to apps/mana/apps/web/src/app.css diff --git a/apps/manacore/apps/web/src/app.d.ts b/apps/mana/apps/web/src/app.d.ts similarity index 65% rename from apps/manacore/apps/web/src/app.d.ts rename to apps/mana/apps/web/src/app.d.ts index d9d6fc6b5..46d33b216 100644 --- a/apps/manacore/apps/web/src/app.d.ts +++ b/apps/mana/apps/web/src/app.d.ts @@ -2,10 +2,10 @@ declare const __BUILD_HASH__: string; declare const __BUILD_TIME__: string; /** - * App type declarations for ManaCore web app + * App type declarations for Mana web app * - * Authentication is handled entirely by Mana Core Auth (@manacore/shared-auth). - * No Supabase is needed - all data comes from mana-core-auth APIs. + * Authentication is handled entirely by Mana Core Auth (@mana/shared-auth). + * No Supabase is needed - all data comes from mana-auth APIs. */ declare global { namespace App { diff --git a/apps/manacore/apps/web/src/app.html b/apps/mana/apps/web/src/app.html similarity index 100% rename from apps/manacore/apps/web/src/app.html rename to apps/mana/apps/web/src/app.html diff --git a/apps/manacore/apps/web/src/hooks.client.ts b/apps/mana/apps/web/src/hooks.client.ts similarity index 58% rename from apps/manacore/apps/web/src/hooks.client.ts rename to apps/mana/apps/web/src/hooks.client.ts index d0759b0e0..3d4673b8e 100644 --- a/apps/manacore/apps/web/src/hooks.client.ts +++ b/apps/mana/apps/web/src/hooks.client.ts @@ -1,9 +1,9 @@ -import { initErrorTracking, handleSvelteError } from '@manacore/shared-error-tracking/browser'; -import { trackWebVitals } from '@manacore/shared-utils/web-vitals'; +import { initErrorTracking, handleSvelteError } from '@mana/shared-error-tracking/browser'; +import { trackWebVitals } from '@mana/shared-utils/web-vitals'; import type { HandleClientError } from '@sveltejs/kit'; initErrorTracking({ - serviceName: 'manacore-web', + serviceName: 'mana-web', dsn: (window as any).__PUBLIC_GLITCHTIP_DSN__, environment: import.meta.env.MODE, }); diff --git a/apps/manacore/apps/web/src/hooks.server.ts b/apps/mana/apps/web/src/hooks.server.ts similarity index 91% rename from apps/manacore/apps/web/src/hooks.server.ts rename to apps/mana/apps/web/src/hooks.server.ts index e43291723..a207012bf 100644 --- a/apps/manacore/apps/web/src/hooks.server.ts +++ b/apps/mana/apps/web/src/hooks.server.ts @@ -1,9 +1,9 @@ import type { Handle } from '@sveltejs/kit'; -import { injectUmamiAnalytics } from '@manacore/shared-utils/analytics-server'; -import { setSecurityHeaders } from '@manacore/shared-utils/security-headers'; +import { injectUmamiAnalytics } from '@mana/shared-utils/analytics-server'; +import { setSecurityHeaders } from '@mana/shared-utils/security-headers'; /** - * Server hooks for ManaCore web app + * Server hooks for Mana web app * * Injects runtime environment variables into the HTML for client-side access. * This is necessary because SvelteKit's $env/static/public bakes values at build time, @@ -11,8 +11,8 @@ import { setSecurityHeaders } from '@manacore/shared-utils/security-headers'; */ // Auth URL -const PUBLIC_MANA_CORE_AUTH_URL_CLIENT = - process.env.PUBLIC_MANA_CORE_AUTH_URL_CLIENT || process.env.PUBLIC_MANA_CORE_AUTH_URL || ''; +const PUBLIC_MANA_AUTH_URL_CLIENT = + process.env.PUBLIC_MANA_AUTH_URL_CLIENT || process.env.PUBLIC_MANA_AUTH_URL || ''; // Backend URLs for dashboard widgets const PUBLIC_TODO_API_URL_CLIENT = @@ -91,7 +91,7 @@ export const handle: Handle = async ({ event, resolve }) => { const response = await resolve(event, { transformPageChunk: ({ html }) => { const envScript = ` + +{#if showBanner} +
+
+ + + +
+ {$_('pwa.offline', { default: 'Offline — Änderungen werden lokal gespeichert' })} + +
+{/if} + +{#if showSyncBadge} +
+ + + {networkStore.pendingCount} + {$_('pwa.pendingChanges', { default: 'Änderungen warten auf Sync' })} + +
+{/if} + +{#if showSyncing} +
+ + {$_('pwa.syncing', { default: 'Synchronisiere...' })} +
+{/if} + + diff --git a/apps/mana/apps/web/src/lib/components/PwaUpdatePrompt.svelte b/apps/mana/apps/web/src/lib/components/PwaUpdatePrompt.svelte new file mode 100644 index 000000000..76ef92e13 --- /dev/null +++ b/apps/mana/apps/web/src/lib/components/PwaUpdatePrompt.svelte @@ -0,0 +1,183 @@ + + +{#if showPrompt} + +{/if} + + diff --git a/apps/manacore/apps/web/src/lib/components/SessionWarning.svelte b/apps/mana/apps/web/src/lib/components/SessionWarning.svelte similarity index 100% rename from apps/manacore/apps/web/src/lib/components/SessionWarning.svelte rename to apps/mana/apps/web/src/lib/components/SessionWarning.svelte diff --git a/apps/manacore/apps/web/src/lib/components/SuggestionToast.svelte b/apps/mana/apps/web/src/lib/components/SuggestionToast.svelte similarity index 100% rename from apps/manacore/apps/web/src/lib/components/SuggestionToast.svelte rename to apps/mana/apps/web/src/lib/components/SuggestionToast.svelte diff --git a/apps/manacore/apps/web/src/lib/components/admin/ProjectDataCard.svelte b/apps/mana/apps/web/src/lib/components/admin/ProjectDataCard.svelte similarity index 100% rename from apps/manacore/apps/web/src/lib/components/admin/ProjectDataCard.svelte rename to apps/mana/apps/web/src/lib/components/admin/ProjectDataCard.svelte diff --git a/apps/manacore/apps/web/src/lib/components/admin/QuickLinks.svelte b/apps/mana/apps/web/src/lib/components/admin/QuickLinks.svelte similarity index 97% rename from apps/manacore/apps/web/src/lib/components/admin/QuickLinks.svelte rename to apps/mana/apps/web/src/lib/components/admin/QuickLinks.svelte index 0b710bcf1..0c4ac5626 100644 --- a/apps/manacore/apps/web/src/lib/components/admin/QuickLinks.svelte +++ b/apps/mana/apps/web/src/lib/components/admin/QuickLinks.svelte @@ -1,5 +1,5 @@ diff --git a/apps/manacore/apps/web/src/lib/components/onboarding/steps/CreditsStep.svelte b/apps/mana/apps/web/src/lib/components/onboarding/steps/CreditsStep.svelte similarity index 99% rename from apps/manacore/apps/web/src/lib/components/onboarding/steps/CreditsStep.svelte rename to apps/mana/apps/web/src/lib/components/onboarding/steps/CreditsStep.svelte index 15706d51c..2cd429376 100644 --- a/apps/manacore/apps/web/src/lib/components/onboarding/steps/CreditsStep.svelte +++ b/apps/mana/apps/web/src/lib/components/onboarding/steps/CreditsStep.svelte @@ -1,5 +1,5 @@ diff --git a/apps/manacore/apps/web/src/lib/components/onboarding/steps/ProfileStep.svelte b/apps/mana/apps/web/src/lib/components/onboarding/steps/ProfileStep.svelte similarity index 98% rename from apps/manacore/apps/web/src/lib/components/onboarding/steps/ProfileStep.svelte rename to apps/mana/apps/web/src/lib/components/onboarding/steps/ProfileStep.svelte index 7d04d112e..9dced5896 100644 --- a/apps/manacore/apps/web/src/lib/components/onboarding/steps/ProfileStep.svelte +++ b/apps/mana/apps/web/src/lib/components/onboarding/steps/ProfileStep.svelte @@ -2,7 +2,7 @@ import { _ } from 'svelte-i18n'; import { authStore } from '$lib/stores/auth.svelte'; import { profileService } from '$lib/api/profile'; - import { Camera, Check } from '@manacore/shared-icons'; + import { Camera, Check } from '@mana/shared-icons'; let { nameValue = $bindable('') }: { nameValue?: string } = $props(); diff --git a/apps/manacore/apps/web/src/lib/components/onboarding/steps/WelcomeStep.svelte b/apps/mana/apps/web/src/lib/components/onboarding/steps/WelcomeStep.svelte similarity index 94% rename from apps/manacore/apps/web/src/lib/components/onboarding/steps/WelcomeStep.svelte rename to apps/mana/apps/web/src/lib/components/onboarding/steps/WelcomeStep.svelte index 99722e812..019eeefa2 100644 --- a/apps/manacore/apps/web/src/lib/components/onboarding/steps/WelcomeStep.svelte +++ b/apps/mana/apps/web/src/lib/components/onboarding/steps/WelcomeStep.svelte @@ -1,7 +1,7 @@
@@ -14,7 +14,7 @@
-

Willkommen bei ManaCore!

+

Willkommen bei Mana!

Dein zentrales Dashboard für alle Mana-Apps. Verwalte deine Aufgaben, Termine, Kontakte und mehr - alles an einem Ort. diff --git a/apps/manacore/apps/web/src/lib/components/page-carousel/PageCarousel.svelte b/apps/mana/apps/web/src/lib/components/page-carousel/PageCarousel.svelte similarity index 99% rename from apps/manacore/apps/web/src/lib/components/page-carousel/PageCarousel.svelte rename to apps/mana/apps/web/src/lib/components/page-carousel/PageCarousel.svelte index f4c0775ae..d773e9078 100644 --- a/apps/manacore/apps/web/src/lib/components/page-carousel/PageCarousel.svelte +++ b/apps/mana/apps/web/src/lib/components/page-carousel/PageCarousel.svelte @@ -4,7 +4,7 @@ --> - Home - ManaCore + Home - Mana diff --git a/apps/manacore/apps/web/src/routes/(app)/admin/+layout.svelte b/apps/mana/apps/web/src/routes/(app)/admin/+layout.svelte similarity index 98% rename from apps/manacore/apps/web/src/routes/(app)/admin/+layout.svelte rename to apps/mana/apps/web/src/routes/(app)/admin/+layout.svelte index 232d13ef0..bafc311be 100644 --- a/apps/manacore/apps/web/src/routes/(app)/admin/+layout.svelte +++ b/apps/mana/apps/web/src/routes/(app)/admin/+layout.svelte @@ -3,7 +3,7 @@ import { goto } from '$app/navigation'; import type { Snippet } from 'svelte'; import { authStore } from '$lib/stores/auth.svelte'; - import { ShieldCheck } from '@manacore/shared-icons'; + import { ShieldCheck } from '@mana/shared-icons'; let { children }: { children: Snippet } = $props(); diff --git a/apps/manacore/apps/web/src/routes/(app)/admin/+page.svelte b/apps/mana/apps/web/src/routes/(app)/admin/+page.svelte similarity index 100% rename from apps/manacore/apps/web/src/routes/(app)/admin/+page.svelte rename to apps/mana/apps/web/src/routes/(app)/admin/+page.svelte diff --git a/apps/manacore/apps/web/src/routes/(app)/admin/system/+page.svelte b/apps/mana/apps/web/src/routes/(app)/admin/system/+page.svelte similarity index 97% rename from apps/manacore/apps/web/src/routes/(app)/admin/system/+page.svelte rename to apps/mana/apps/web/src/routes/(app)/admin/system/+page.svelte index 594b85542..38e7ec675 100644 --- a/apps/manacore/apps/web/src/routes/(app)/admin/system/+page.svelte +++ b/apps/mana/apps/web/src/routes/(app)/admin/system/+page.svelte @@ -1,6 +1,6 @@

- +
diff --git a/apps/manacore/apps/web/src/lib/modules/calendar/types.ts b/apps/manacore/apps/web/src/lib/modules/calendar/types.ts deleted file mode 100644 index c545143da..000000000 --- a/apps/manacore/apps/web/src/lib/modules/calendar/types.ts +++ /dev/null @@ -1,108 +0,0 @@ -/** - * Calendar module types for the unified ManaCore app. - * - * Time fields (startDate, endDate, allDay, recurrenceRule) live on TimeBlock. - * LocalEvent only stores calendar-domain data + a timeBlockId reference. - */ - -import type { BaseRecord } from '@manacore/local-store'; -import type { TimeBlock, TimeBlockType } from '$lib/data/time-blocks/types'; - -export interface LocalCalendar extends BaseRecord { - name: string; - color: string; - isDefault: boolean; - isVisible: boolean; - timezone: string; -} - -export interface LocalEvent extends BaseRecord { - calendarId: string; - timeBlockId: string; - title: string; - description?: string | null; - location?: string | null; - color?: string | null; - reminders?: unknown | null; - tagIds?: string[]; -} - -export type CalendarViewType = 'week' | 'month' | 'agenda'; - -/** - * CalendarEvent — the UI-facing type used by all calendar components. - * Combines LocalEvent domain data with TimeBlock time data. - */ -export interface CalendarEvent { - id: string; - calendarId: string; - timeBlockId: string; - title: string; - description: string | null; - location: string | null; - startTime: string; - endTime: string; - isAllDay: boolean; - timezone: string | null; - recurrenceRule: string | null; - parentEventId: string | null; - color: string | null; - tagIds: string[]; - createdAt: string; - updatedAt: string; - // TimeBlock metadata (for universal calendar view) - blockType: TimeBlockType; - sourceModule: string; - sourceId: string; - icon: string | null; - isLive: boolean; - projectId: string | null; - linkedBlockId: string | null; -} - -export interface Calendar { - id: string; - name: string; - color: string; - isDefault: boolean; - isVisible: boolean; - timezone: string; - createdAt: string; - updatedAt: string; -} - -/** - * Construct a CalendarEvent from a TimeBlock. - * For native calendar events, also merges LocalEvent domain data. - * For cross-module blocks (tasks, habits, time entries), uses TimeBlock display fields. - */ -export function timeBlockToCalendarEvent( - block: TimeBlock, - eventData?: LocalEvent | null -): CalendarEvent { - return { - id: eventData?.id ?? block.sourceId, - calendarId: eventData?.calendarId ?? '__external__', - timeBlockId: block.id, - title: eventData?.title ?? block.title, - description: eventData?.description ?? block.description ?? null, - location: eventData?.location ?? null, - startTime: block.startDate, - endTime: block.endDate ?? block.startDate, - isAllDay: block.allDay, - timezone: block.timezone, - recurrenceRule: block.recurrenceRule, - parentEventId: null, - color: eventData?.color ?? block.color, - tagIds: eventData?.tagIds ?? [], - createdAt: block.createdAt, - updatedAt: block.updatedAt, - blockType: block.type, - sourceModule: block.sourceModule, - sourceId: block.sourceId, - icon: block.icon, - isLive: block.isLive, - projectId: block.projectId, - linkedBlockId: block.linkedBlockId, - }; -} diff --git a/apps/manacore/apps/web/src/lib/modules/todo/types.ts b/apps/manacore/apps/web/src/lib/modules/todo/types.ts deleted file mode 100644 index 3977e5549..000000000 --- a/apps/manacore/apps/web/src/lib/modules/todo/types.ts +++ /dev/null @@ -1,124 +0,0 @@ -/** - * Todo module types for the unified app. - */ - -import type { BaseRecord } from '@manacore/local-store'; -import type { Tag } from '@manacore/shared-tags'; - -/** @deprecated Use Tag from @manacore/shared-tags. Kept for backward compatibility. */ -export type LocalLabel = Tag; - -// ─── Local Types (IndexedDB) ────────────────────────────── - -export interface Subtask { - id: string; - title: string; - isCompleted: boolean; - completedAt?: string | null; - order: number; -} - -export type TaskPriority = 'low' | 'medium' | 'high' | 'urgent'; -export type TaskStatus = 'pending' | 'in_progress' | 'completed' | 'cancelled'; - -export interface LocalTask extends BaseRecord { - title: string; - description?: string; - userId?: string; - projectId?: string | null; - priority: TaskPriority; - isCompleted: boolean; - completedAt?: string | null; - dueDate?: string | null; - scheduledBlockId?: string | null; // TimeBlock ID when task is scheduled on calendar - estimatedDuration?: number | null; - order: number; - recurrenceRule?: string | null; - subtasks?: Subtask[] | null; - metadata?: Record; -} - -export interface LocalTaskTag extends BaseRecord { - taskId: string; - tagId: string; -} - -export interface LocalReminder extends BaseRecord { - taskId: string; - userId?: string; - minutesBefore: number; - type: 'push' | 'email' | 'both'; - status: 'pending' | 'sent' | 'failed'; -} - -// ─── Board Views ──────────────────────────────────────────── - -export interface TaskMatcher { - type: 'status' | 'priority' | 'tag' | 'dueDate' | 'custom'; - value?: string | null; - taskIds?: string[]; -} - -export interface DropAction { - setCompleted?: boolean; - setPriority?: TaskPriority; -} - -export interface ViewColumn { - id: string; - name: string; - color: string; - match: TaskMatcher; - onDrop?: DropAction; -} - -export interface ViewFilter { - tagIds?: string[]; - priorities?: string[]; -} - -export interface LocalBoardView extends BaseRecord { - name: string; - icon: string; - groupBy: 'status' | 'priority' | 'dueDate' | 'tag' | 'custom'; - columns: ViewColumn[]; - filter?: ViewFilter; - layout: 'kanban' | 'grid' | 'fokus'; - order: number; -} - -export interface LocalTodoProject extends BaseRecord { - name: string; - color?: string | null; - icon?: string | null; - order: number; - isArchived?: boolean; - isDefault?: boolean; -} - -// ─── Shared Task Type ────────────────────────────────────── - -export interface Task { - id: string; - projectId?: string | null; - userId: string; - title: string; - description?: string | null; - dueDate?: string | null; - scheduledBlockId?: string | null; - estimatedDuration?: number | null; - priority: TaskPriority; - status: TaskStatus; - isCompleted: boolean; - completedAt?: string | null; - order: number; - recurrenceRule?: string | null; - subtasks?: Subtask[] | null; - metadata?: Record | null; - createdAt: string; - updatedAt: string; -} - -export type ViewType = 'inbox' | 'today' | 'upcoming' | 'label' | 'completed' | 'search'; -export type SortBy = 'dueDate' | 'priority' | 'title' | 'createdAt' | 'order'; -export type SortOrder = 'asc' | 'desc'; diff --git a/apps/manacore/apps/web/src/lib/stores/navigation.ts b/apps/manacore/apps/web/src/lib/stores/navigation.ts deleted file mode 100644 index e922e7ce5..000000000 --- a/apps/manacore/apps/web/src/lib/stores/navigation.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { createSimpleNavigationStores } from '@manacore/shared-stores'; - -export const { isNavCollapsed } = createSimpleNavigationStores(); diff --git a/apps/manacore/apps/web/src/lib/stores/network.svelte.ts b/apps/manacore/apps/web/src/lib/stores/network.svelte.ts index e67b9b593..5ed4f191d 100644 --- a/apps/manacore/apps/web/src/lib/stores/network.svelte.ts +++ b/apps/manacore/apps/web/src/lib/stores/network.svelte.ts @@ -11,10 +11,11 @@ let isOnline = $state(typeof navigator !== 'undefined' ? navigator.onLine : true let syncStatus = $state('idle'); let pendingCount = $state(0); -let cleanups: (() => void)[] = []; +let cleanup: (() => void) | null = null; function initialize() { if (typeof window === 'undefined') return; + if (cleanup) return; // Guard against double-init const handleOnline = () => (isOnline = true); const handleOffline = () => (isOnline = false); @@ -22,15 +23,15 @@ function initialize() { window.addEventListener('online', handleOnline); window.addEventListener('offline', handleOffline); - cleanups.push(() => { + cleanup = () => { window.removeEventListener('online', handleOnline); window.removeEventListener('offline', handleOffline); - }); + }; } function destroy() { - for (const fn of cleanups) fn(); - cleanups = []; + cleanup?.(); + cleanup = null; } function setSyncStatus(status: SyncStatus) { diff --git a/apps/manacore/apps/web/src/routes/(app)/calendar/+layout.svelte b/apps/manacore/apps/web/src/routes/(app)/calendar/+layout.svelte deleted file mode 100644 index 45f6d63f3..000000000 --- a/apps/manacore/apps/web/src/routes/(app)/calendar/+layout.svelte +++ /dev/null @@ -1,22 +0,0 @@ - - -{@render children()} diff --git a/apps/manacore/apps/web/src/routes/(app)/feedback/+page.svelte b/apps/manacore/apps/web/src/routes/(app)/feedback/+page.svelte deleted file mode 100644 index 733fc5944..000000000 --- a/apps/manacore/apps/web/src/routes/(app)/feedback/+page.svelte +++ /dev/null @@ -1,7 +0,0 @@ - - - diff --git a/apps/manavoxel/apps/web/package.json b/apps/manavoxel/apps/web/package.json index cff1b9d29..e99f721c3 100644 --- a/apps/manavoxel/apps/web/package.json +++ b/apps/manavoxel/apps/web/package.json @@ -17,8 +17,8 @@ "test:watch": "vitest" }, "devDependencies": { - "@manacore/shared-pwa": "workspace:*", - "@manacore/shared-vite-config": "workspace:*", + "@mana/shared-pwa": "workspace:*", + "@mana/shared-vite-config": "workspace:*", "@sveltejs/adapter-node": "^5.0.0", "@sveltejs/kit": "^2.47.1", "@sveltejs/vite-plugin-svelte": "^5.0.0", @@ -36,19 +36,19 @@ "vitest": "^4.1.0" }, "dependencies": { - "@manacore/local-store": "workspace:*", - "@manacore/shared-auth": "workspace:*", - "@manacore/shared-auth-ui": "workspace:*", - "@manacore/shared-error-tracking": "workspace:*", - "@manacore/shared-i18n": "workspace:*", - "@manacore/shared-icons": "workspace:*", - "@manacore/shared-stores": "workspace:*", - "@manacore/shared-tailwind": "workspace:*", - "@manacore/shared-theme": "workspace:*", - "@manacore/shared-theme-ui": "workspace:*", - "@manacore/shared-types": "workspace:*", - "@manacore/shared-ui": "workspace:*", - "@manacore/shared-utils": "workspace:*", + "@mana/local-store": "workspace:*", + "@mana/shared-auth": "workspace:*", + "@mana/shared-auth-ui": "workspace:*", + "@mana/shared-error-tracking": "workspace:*", + "@mana/shared-i18n": "workspace:*", + "@mana/shared-icons": "workspace:*", + "@mana/shared-stores": "workspace:*", + "@mana/shared-tailwind": "workspace:*", + "@mana/shared-theme": "workspace:*", + "@mana/shared-theme-ui": "workspace:*", + "@mana/shared-types": "workspace:*", + "@mana/shared-ui": "workspace:*", + "@mana/shared-utils": "workspace:*", "@manavoxel/shared": "workspace:*", "pixi.js": "^8.17.1", "svelte-i18n": "^4.0.1" diff --git a/apps/manavoxel/apps/web/src/lib/data/local-store.ts b/apps/manavoxel/apps/web/src/lib/data/local-store.ts index 7db8903c3..1391666e1 100644 --- a/apps/manavoxel/apps/web/src/lib/data/local-store.ts +++ b/apps/manavoxel/apps/web/src/lib/data/local-store.ts @@ -6,7 +6,7 @@ * Syncs to server via mana-sync when authenticated. */ -import { createLocalStore, type BaseRecord } from '@manacore/local-store'; +import { createLocalStore, type BaseRecord } from '@mana/local-store'; import { generateGuestWorld } from './guest-seed'; // ─── Types ────────────────────────────────────────────────── diff --git a/apps/manavoxel/apps/web/vite.config.ts b/apps/manavoxel/apps/web/vite.config.ts index ac81b0718..62ebba6f1 100644 --- a/apps/manavoxel/apps/web/vite.config.ts +++ b/apps/manavoxel/apps/web/vite.config.ts @@ -3,8 +3,8 @@ import { sveltekit } from '@sveltejs/kit/vite'; import tailwindcss from '@tailwindcss/vite'; import { defineConfig } from 'vite'; import { SvelteKitPWA } from '@vite-pwa/sveltekit'; -import { createPWAConfig } from '@manacore/shared-pwa'; -import { MANACORE_SHARED_PACKAGES, getBuildDefines } from '@manacore/shared-vite-config'; +import { createPWAConfig } from '@mana/shared-pwa'; +import { MANACORE_SHARED_PACKAGES, getBuildDefines } from '@mana/shared-vite-config'; export default defineConfig({ plugins: [ diff --git a/apps/matrix/apps/web/package.json b/apps/matrix/apps/web/package.json index 3b88bfe73..429ab155c 100644 --- a/apps/matrix/apps/web/package.json +++ b/apps/matrix/apps/web/package.json @@ -17,7 +17,7 @@ "test:watch": "vitest" }, "devDependencies": { - "@manacore/shared-pwa": "workspace:*", + "@mana/shared-pwa": "workspace:*", "@sveltejs/adapter-node": "^5.2.12", "@sveltejs/kit": "^2.47.1", "@sveltejs/vite-plugin-svelte": "^5.0.3", @@ -38,18 +38,18 @@ "workbox-window": "^7.4.0" }, "dependencies": { - "@manacore/shared-auth": "workspace:*", - "@manacore/shared-branding": "workspace:*", - "@manacore/shared-error-tracking": "workspace:*", - "@manacore/feedback": "workspace:*", - "@manacore/help": "workspace:*", - "@manacore/shared-i18n": "workspace:*", - "@manacore/shared-icons": "workspace:*", - "@manacore/shared-tailwind": "workspace:*", - "@manacore/shared-theme": "workspace:*", - "@manacore/shared-stores": "workspace:*", - "@manacore/shared-tags": "workspace:*", - "@manacore/shared-ui": "workspace:*", + "@mana/shared-auth": "workspace:*", + "@mana/shared-branding": "workspace:*", + "@mana/shared-error-tracking": "workspace:*", + "@mana/feedback": "workspace:*", + "@mana/help": "workspace:*", + "@mana/shared-i18n": "workspace:*", + "@mana/shared-icons": "workspace:*", + "@mana/shared-tailwind": "workspace:*", + "@mana/shared-theme": "workspace:*", + "@mana/shared-stores": "workspace:*", + "@mana/shared-tags": "workspace:*", + "@mana/shared-ui": "workspace:*", "@matrix-org/matrix-sdk-crypto-wasm": "^13.0.0", "buffer": "^6.0.3", "date-fns": "^4.1.0", diff --git a/apps/matrix/apps/web/src/hooks.client.ts b/apps/matrix/apps/web/src/hooks.client.ts index c95f9f0cd..a7b632d03 100644 --- a/apps/matrix/apps/web/src/hooks.client.ts +++ b/apps/matrix/apps/web/src/hooks.client.ts @@ -1,4 +1,4 @@ -import { initErrorTracking, handleSvelteError } from '@manacore/shared-error-tracking/browser'; +import { initErrorTracking, handleSvelteError } from '@mana/shared-error-tracking/browser'; import type { HandleClientError } from '@sveltejs/kit'; initErrorTracking({ diff --git a/apps/matrix/apps/web/src/lib/components/bots/BotCard.svelte b/apps/matrix/apps/web/src/lib/components/bots/BotCard.svelte index f44448058..5f9fcee30 100644 --- a/apps/matrix/apps/web/src/lib/components/bots/BotCard.svelte +++ b/apps/matrix/apps/web/src/lib/components/bots/BotCard.svelte @@ -24,7 +24,7 @@ MagnifyingGlass, Cards, PresentationChart, - } from '@manacore/shared-icons'; + } from '@mana/shared-icons'; import { slide } from 'svelte/transition'; import { _ as t } from 'svelte-i18n'; import type { Component } from 'svelte'; diff --git a/apps/matrix/apps/web/src/lib/components/call/CallView.svelte b/apps/matrix/apps/web/src/lib/components/call/CallView.svelte index c1247ea10..b4c4ad4ac 100644 --- a/apps/matrix/apps/web/src/lib/components/call/CallView.svelte +++ b/apps/matrix/apps/web/src/lib/components/call/CallView.svelte @@ -8,7 +8,7 @@ VideoCameraSlash, Screencast, User, - } from '@manacore/shared-icons'; + } from '@mana/shared-icons'; import { onDestroy } from 'svelte'; interface Props { diff --git a/apps/matrix/apps/web/src/lib/components/call/IncomingCallDialog.svelte b/apps/matrix/apps/web/src/lib/components/call/IncomingCallDialog.svelte index ac21425c4..069a5e99f 100644 --- a/apps/matrix/apps/web/src/lib/components/call/IncomingCallDialog.svelte +++ b/apps/matrix/apps/web/src/lib/components/call/IncomingCallDialog.svelte @@ -1,6 +1,6 @@ diff --git a/apps/matrix/apps/web/src/routes/+layout.svelte b/apps/matrix/apps/web/src/routes/+layout.svelte index 193863074..c4ec76918 100644 --- a/apps/matrix/apps/web/src/routes/+layout.svelte +++ b/apps/matrix/apps/web/src/routes/+layout.svelte @@ -5,7 +5,7 @@ import type { Snippet } from 'svelte'; import { isLoading as i18nLoading, _ as t } from 'svelte-i18n'; import { theme } from '$lib/stores/theme'; - import { ToastContainer, setupGlobalErrorHandler } from '@manacore/shared-ui'; + import { ToastContainer, setupGlobalErrorHandler } from '@mana/shared-ui'; interface Props { children: Snippet; diff --git a/apps/matrix/apps/web/src/routes/+page.svelte b/apps/matrix/apps/web/src/routes/+page.svelte index ace712eb4..ac828c7d4 100644 --- a/apps/matrix/apps/web/src/routes/+page.svelte +++ b/apps/matrix/apps/web/src/routes/+page.svelte @@ -3,7 +3,7 @@ import { onMount } from 'svelte'; import { browser } from '$app/environment'; import { matrixStore } from '$lib/matrix'; - import { CircleNotch } from '@manacore/shared-icons'; + import { CircleNotch } from '@mana/shared-icons'; let checking = $state(true); diff --git a/apps/matrix/apps/web/src/routes/offline/+page.svelte b/apps/matrix/apps/web/src/routes/offline/+page.svelte index 6001f0198..f10f1803f 100644 --- a/apps/matrix/apps/web/src/routes/offline/+page.svelte +++ b/apps/matrix/apps/web/src/routes/offline/+page.svelte @@ -1,5 +1,5 @@ diff --git a/apps/memoro/apps/mobile/.env.example b/apps/memoro/apps/mobile/.env.example index 2ee55d50d..2737f7734 100644 --- a/apps/memoro/apps/mobile/.env.example +++ b/apps/memoro/apps/mobile/.env.example @@ -20,7 +20,7 @@ # Umami (Web) # EXPO_PUBLIC_UMAMI_WEBSITE_ID=fb5fc77a-ed24-4369-b9f5-7d8a01bc9fa4 -# EXPO_PUBLIC_UMAMI_SCRIPT_URL=https://umami.manacore.ai/script.js +# EXPO_PUBLIC_UMAMI_SCRIPT_URL=https://umami.mana.ai/script.js # Example configurations: diff --git a/apps/memoro/apps/mobile/features/analytics/services/umamiService.ts b/apps/memoro/apps/mobile/features/analytics/services/umamiService.ts index 9d2b2c539..38c9a3845 100644 --- a/apps/memoro/apps/mobile/features/analytics/services/umamiService.ts +++ b/apps/memoro/apps/mobile/features/analytics/services/umamiService.ts @@ -15,7 +15,7 @@ class UmamiAnalyticsService implements AnalyticsService { private websiteId = process.env.EXPO_PUBLIC_UMAMI_WEBSITE_ID || 'fb5fc77a-ed24-4369-b9f5-7d8a01bc9fa4'; private scriptUrl = - process.env.EXPO_PUBLIC_UMAMI_SCRIPT_URL || 'https://umami.manacore.ai/script.js'; + process.env.EXPO_PUBLIC_UMAMI_SCRIPT_URL || 'https://umami.mana.ai/script.js'; async initialize() { if (this.initialized) return; diff --git a/apps/memoro/apps/server/openapi.yaml b/apps/memoro/apps/server/openapi.yaml index acfe02e58..93737a2e8 100644 --- a/apps/memoro/apps/server/openapi.yaml +++ b/apps/memoro/apps/server/openapi.yaml @@ -4,7 +4,7 @@ info: description: AI-powered voice memo management — memo processing, spaces, credits, meetings, settings. version: 1.0.0 contact: - name: ManaCore + name: Mana url: https://mana.how servers: diff --git a/apps/memoro/apps/server/package.json b/apps/memoro/apps/server/package.json index 977be068a..780abac5c 100644 --- a/apps/memoro/apps/server/package.json +++ b/apps/memoro/apps/server/package.json @@ -8,7 +8,7 @@ "build": "bun build src/index.ts --outdir dist --target bun" }, "dependencies": { - "@manacore/shared-hono": "workspace:*", + "@mana/shared-hono": "workspace:*", "@supabase/supabase-js": "^2.49.5", "hono": "^4.7.0", "uuid": "^11.0.0", diff --git a/apps/memoro/apps/server/src/index.ts b/apps/memoro/apps/server/src/index.ts index 455e6e74e..1db677ada 100644 --- a/apps/memoro/apps/server/src/index.ts +++ b/apps/memoro/apps/server/src/index.ts @@ -13,7 +13,7 @@ import { errorHandler, notFoundHandler, rateLimitMiddleware, -} from '@manacore/shared-hono'; +} from '@mana/shared-hono'; import { memoRoutes } from './routes/memos'; import { spaceRoutes } from './routes/spaces'; diff --git a/apps/memoro/apps/server/src/lib/credits.test.ts b/apps/memoro/apps/server/src/lib/credits.test.ts index 14d837486..675219b41 100644 --- a/apps/memoro/apps/server/src/lib/credits.test.ts +++ b/apps/memoro/apps/server/src/lib/credits.test.ts @@ -4,7 +4,7 @@ import { describe, it, expect, vi } from 'vitest'; -vi.mock('@manacore/shared-hono', () => ({ +vi.mock('@mana/shared-hono', () => ({ validateCredits: vi.fn(), consumeCredits: vi.fn(), })); diff --git a/apps/memoro/apps/server/src/lib/credits.ts b/apps/memoro/apps/server/src/lib/credits.ts index 0c20abd1d..a38755c46 100644 --- a/apps/memoro/apps/server/src/lib/credits.ts +++ b/apps/memoro/apps/server/src/lib/credits.ts @@ -2,7 +2,7 @@ * Credit cost constants and helper for Memoro server. */ -export { validateCredits, consumeCredits } from '@manacore/shared-hono'; +export { validateCredits, consumeCredits } from '@mana/shared-hono'; export const COSTS = { TRANSCRIPTION_PER_MINUTE: 2, diff --git a/apps/memoro/apps/server/src/lib/notify.ts b/apps/memoro/apps/server/src/lib/notify.ts index 18c37b105..8776c0661 100644 --- a/apps/memoro/apps/server/src/lib/notify.ts +++ b/apps/memoro/apps/server/src/lib/notify.ts @@ -3,13 +3,13 @@ * Sends emails via mana-notify service. */ -import { NotifyClient } from '@manacore/notify-client'; +import { NotifyClient } from '@mana/notify-client'; let client: NotifyClient | null = null; function getClient(): NotifyClient | null { const serviceUrl = process.env.MANA_NOTIFY_URL; - const serviceKey = process.env.MANA_CORE_SERVICE_KEY; + const serviceKey = process.env.MANA_SERVICE_KEY; if (!serviceUrl || !serviceKey) return null; diff --git a/apps/memoro/apps/server/src/routes/cleanup.test.ts b/apps/memoro/apps/server/src/routes/cleanup.test.ts index 3edc4ed33..cbf16f9da 100644 --- a/apps/memoro/apps/server/src/routes/cleanup.test.ts +++ b/apps/memoro/apps/server/src/routes/cleanup.test.ts @@ -7,7 +7,7 @@ import { app } from '../index'; // ── Mocks ──────────────────────────────────────────────────────────────────── -vi.mock('@manacore/shared-hono', () => ({ +vi.mock('@mana/shared-hono', () => ({ authMiddleware: () => async (c: any, next: any) => { c.set('userId', 'test-user-id'); await next(); diff --git a/apps/memoro/apps/server/src/routes/credits.test.ts b/apps/memoro/apps/server/src/routes/credits.test.ts index 5cc8200b9..5b57c1e57 100644 --- a/apps/memoro/apps/server/src/routes/credits.test.ts +++ b/apps/memoro/apps/server/src/routes/credits.test.ts @@ -7,7 +7,7 @@ import { app } from '../index'; // ── Mocks ──────────────────────────────────────────────────────────────────── -vi.mock('@manacore/shared-hono', () => ({ +vi.mock('@mana/shared-hono', () => ({ authMiddleware: () => async (c: any, next: any) => { c.set('userId', 'test-user-id'); await next(); diff --git a/apps/memoro/apps/server/src/routes/credits.ts b/apps/memoro/apps/server/src/routes/credits.ts index f674073f9..04822f06f 100644 --- a/apps/memoro/apps/server/src/routes/credits.ts +++ b/apps/memoro/apps/server/src/routes/credits.ts @@ -3,9 +3,9 @@ */ import { Hono } from 'hono'; -import type { AuthVariables } from '@manacore/shared-hono'; +import type { AuthVariables } from '@mana/shared-hono'; import { validateCredits, consumeCredits, COSTS } from '../lib/credits'; -import { getBalance } from '@manacore/shared-hono'; +import { getBalance } from '@mana/shared-hono'; import { validateBody } from '../lib/validate'; import { checkCreditsBody, consumeCreditsBody } from '../schemas'; diff --git a/apps/memoro/apps/server/src/routes/health.test.ts b/apps/memoro/apps/server/src/routes/health.test.ts index 71b625ac6..44a56270c 100644 --- a/apps/memoro/apps/server/src/routes/health.test.ts +++ b/apps/memoro/apps/server/src/routes/health.test.ts @@ -5,7 +5,7 @@ import { describe, it, expect, vi } from 'vitest'; import { app } from '../index'; -vi.mock('@manacore/shared-hono', () => ({ +vi.mock('@mana/shared-hono', () => ({ authMiddleware: () => async (c: any, next: any) => { c.set('userId', 'test-user-id'); await next(); diff --git a/apps/memoro/apps/server/src/routes/internal.test.ts b/apps/memoro/apps/server/src/routes/internal.test.ts index 4ca3a1146..516c5c539 100644 --- a/apps/memoro/apps/server/src/routes/internal.test.ts +++ b/apps/memoro/apps/server/src/routes/internal.test.ts @@ -7,7 +7,7 @@ import { app } from '../index'; // ── Mocks ──────────────────────────────────────────────────────────────────── -vi.mock('@manacore/shared-hono', () => ({ +vi.mock('@mana/shared-hono', () => ({ authMiddleware: () => async (c: any, next: any) => { c.set('userId', 'test-user-id'); await next(); diff --git a/apps/memoro/apps/server/src/routes/invites.ts b/apps/memoro/apps/server/src/routes/invites.ts index ad221522a..05695f2c8 100644 --- a/apps/memoro/apps/server/src/routes/invites.ts +++ b/apps/memoro/apps/server/src/routes/invites.ts @@ -3,7 +3,7 @@ */ import { Hono } from 'hono'; -import type { AuthVariables } from '@manacore/shared-hono'; +import type { AuthVariables } from '@mana/shared-hono'; import { acceptInvite, declineInvite, getPendingInvites } from '../services/space'; import { validateBody } from '../lib/validate'; import { inviteActionBody } from '../schemas'; diff --git a/apps/memoro/apps/server/src/routes/meetings.test.ts b/apps/memoro/apps/server/src/routes/meetings.test.ts index 3055263e5..4fd370de5 100644 --- a/apps/memoro/apps/server/src/routes/meetings.test.ts +++ b/apps/memoro/apps/server/src/routes/meetings.test.ts @@ -7,7 +7,7 @@ import { app } from '../index'; // ── Mocks ──────────────────────────────────────────────────────────────────── -vi.mock('@manacore/shared-hono', () => ({ +vi.mock('@mana/shared-hono', () => ({ authMiddleware: () => async (c: any, next: any) => { c.set('userId', 'test-user-id'); await next(); @@ -115,7 +115,7 @@ describe('POST /api/v1/meetings/bots', () => { }); it('returns 402 on insufficient credits', async () => { - const { validateCredits } = await import('@manacore/shared-hono'); + const { validateCredits } = await import('@mana/shared-hono'); vi.mocked(validateCredits).mockResolvedValueOnce({ hasCredits: false, availableCredits: 3, diff --git a/apps/memoro/apps/server/src/routes/meetings.ts b/apps/memoro/apps/server/src/routes/meetings.ts index d510bb76f..2361e619b 100644 --- a/apps/memoro/apps/server/src/routes/meetings.ts +++ b/apps/memoro/apps/server/src/routes/meetings.ts @@ -4,7 +4,7 @@ */ import { Hono } from 'hono'; -import type { AuthVariables } from '@manacore/shared-hono'; +import type { AuthVariables } from '@mana/shared-hono'; import { validateCredits, COSTS } from '../lib/credits'; import { validateBody, validateQuery } from '../lib/validate'; import { createBotBody, recordingToMemoBody, paginationQuery } from '../schemas'; diff --git a/apps/memoro/apps/server/src/routes/memos.test.ts b/apps/memoro/apps/server/src/routes/memos.test.ts index 3b33877cd..113079c4f 100644 --- a/apps/memoro/apps/server/src/routes/memos.test.ts +++ b/apps/memoro/apps/server/src/routes/memos.test.ts @@ -7,7 +7,7 @@ import { app } from '../index'; // ── Mocks ──────────────────────────────────────────────────────────────────── -vi.mock('@manacore/shared-hono', () => ({ +vi.mock('@mana/shared-hono', () => ({ authMiddleware: () => async (c: any, next: any) => { c.set('userId', 'test-user-id'); await next(); @@ -157,7 +157,7 @@ describe('POST /api/v1/memos/:id/append', () => { }); it('returns 402 if insufficient credits', async () => { - const { validateCredits } = await import('@manacore/shared-hono'); + const { validateCredits } = await import('@mana/shared-hono'); vi.mocked(validateCredits).mockResolvedValueOnce({ hasCredits: false, availableCredits: 0, @@ -263,7 +263,7 @@ describe('POST /api/v1/memos/combine', () => { }); it('returns 402 on insufficient credits', async () => { - const { validateCredits } = await import('@manacore/shared-hono'); + const { validateCredits } = await import('@mana/shared-hono'); vi.mocked(validateCredits).mockResolvedValueOnce({ hasCredits: false, availableCredits: 0, @@ -316,7 +316,7 @@ describe('POST /api/v1/memos/:id/question', () => { }); it('returns 402 on insufficient credits', async () => { - const { validateCredits } = await import('@manacore/shared-hono'); + const { validateCredits } = await import('@mana/shared-hono'); vi.mocked(validateCredits).mockResolvedValueOnce({ hasCredits: false, availableCredits: 0, diff --git a/apps/memoro/apps/server/src/routes/memos.ts b/apps/memoro/apps/server/src/routes/memos.ts index c86eeca63..78caf1699 100644 --- a/apps/memoro/apps/server/src/routes/memos.ts +++ b/apps/memoro/apps/server/src/routes/memos.ts @@ -3,7 +3,7 @@ */ import { Hono } from 'hono'; -import type { AuthVariables } from '@manacore/shared-hono'; +import type { AuthVariables } from '@mana/shared-hono'; import { v4 as uuidv4 } from 'uuid'; import { createMemoFromUploadedFile, diff --git a/apps/memoro/apps/server/src/routes/settings.test.ts b/apps/memoro/apps/server/src/routes/settings.test.ts index 47d146315..9dc9f6f1b 100644 --- a/apps/memoro/apps/server/src/routes/settings.test.ts +++ b/apps/memoro/apps/server/src/routes/settings.test.ts @@ -7,7 +7,7 @@ import { app } from '../index'; // ── Mocks ──────────────────────────────────────────────────────────────────── -vi.mock('@manacore/shared-hono', () => ({ +vi.mock('@mana/shared-hono', () => ({ authMiddleware: () => async (c: any, next: any) => { c.set('userId', 'test-user-id'); await next(); diff --git a/apps/memoro/apps/server/src/routes/settings.ts b/apps/memoro/apps/server/src/routes/settings.ts index b7b4cfc5e..96f4cf05b 100644 --- a/apps/memoro/apps/server/src/routes/settings.ts +++ b/apps/memoro/apps/server/src/routes/settings.ts @@ -5,7 +5,7 @@ */ import { Hono } from 'hono'; -import type { AuthVariables } from '@manacore/shared-hono'; +import type { AuthVariables } from '@mana/shared-hono'; import { createServiceClient } from '../lib/supabase'; import { validateBody } from '../lib/validate'; import { updateMemoroSettingsBody, updateDataUsageBody, updateProfileBody } from '../schemas'; diff --git a/apps/memoro/apps/server/src/routes/spaces.test.ts b/apps/memoro/apps/server/src/routes/spaces.test.ts index 01d328360..8114cc3ee 100644 --- a/apps/memoro/apps/server/src/routes/spaces.test.ts +++ b/apps/memoro/apps/server/src/routes/spaces.test.ts @@ -7,7 +7,7 @@ import { app } from '../index'; // ── Mocks ──────────────────────────────────────────────────────────────────── -vi.mock('@manacore/shared-hono', () => ({ +vi.mock('@mana/shared-hono', () => ({ authMiddleware: () => async (c: any, next: any) => { c.set('userId', 'test-user-id'); await next(); diff --git a/apps/memoro/apps/server/src/routes/spaces.ts b/apps/memoro/apps/server/src/routes/spaces.ts index ec2340b56..7b3113b37 100644 --- a/apps/memoro/apps/server/src/routes/spaces.ts +++ b/apps/memoro/apps/server/src/routes/spaces.ts @@ -3,7 +3,7 @@ */ import { Hono } from 'hono'; -import type { AuthVariables } from '@manacore/shared-hono'; +import type { AuthVariables } from '@mana/shared-hono'; import { createServiceClient } from '../lib/supabase'; import { validateBody, validateQuery } from '../lib/validate'; import { createSpaceBody, linkMemoBody, inviteBody, paginationQuery } from '../schemas'; diff --git a/apps/memoro/apps/server/src/services/cleanup.ts b/apps/memoro/apps/server/src/services/cleanup.ts index 996f08ba2..498636b4f 100644 --- a/apps/memoro/apps/server/src/services/cleanup.ts +++ b/apps/memoro/apps/server/src/services/cleanup.ts @@ -9,8 +9,8 @@ import { createServiceClient } from '../lib/supabase'; const RETENTION_DAYS = 30; const BATCH_SIZE = 100; const BUCKET = 'user-uploads'; -const MANA_CREDITS_URL = () => process.env.MANA_CREDITS_URL ?? process.env.MANA_CORE_AUTH_URL ?? 'http://localhost:3061'; -const MANA_CORE_SERVICE_KEY = () => process.env.MANA_CORE_SERVICE_KEY ?? ''; +const MANA_CREDITS_URL = () => process.env.MANA_CREDITS_URL ?? process.env.MANA_AUTH_URL ?? 'http://localhost:3061'; +const MANA_SERVICE_KEY = () => process.env.MANA_SERVICE_KEY ?? ''; interface CleanupResult { deleted: number; @@ -141,9 +141,9 @@ async function updateMemoAudioDeleted( } async function fetchOptedInUserIds(): Promise { - const serviceKey = MANA_CORE_SERVICE_KEY(); + const serviceKey = MANA_SERVICE_KEY(); if (!serviceKey) { - console.warn('[cleanup] MANA_CORE_SERVICE_KEY not set, cannot fetch opted-in users'); + console.warn('[cleanup] MANA_SERVICE_KEY not set, cannot fetch opted-in users'); return []; } diff --git a/apps/moodlit/apps/landing/package.json b/apps/moodlit/apps/landing/package.json index 64f5c4124..f40812fec 100644 --- a/apps/moodlit/apps/landing/package.json +++ b/apps/moodlit/apps/landing/package.json @@ -16,7 +16,7 @@ }, "dependencies": { "@astrojs/check": "^0.9.0", - "@manacore/shared-landing-ui": "workspace:*", + "@mana/shared-landing-ui": "workspace:*", "astro": "^5.16.0", "typescript": "^5.9.2" }, diff --git a/apps/moodlit/package.json b/apps/moodlit/package.json index a036d9bd8..9cdfe4bb5 100644 --- a/apps/moodlit/package.json +++ b/apps/moodlit/package.json @@ -1,5 +1,5 @@ { - "name": "@manacore/moodlit", + "name": "@mana/moodlit", "version": "0.0.1", "private": true, "scripts": { diff --git a/apps/mukke/CLAUDE.md b/apps/mukke/CLAUDE.md index fac60dfe7..e9cc22c72 100644 --- a/apps/mukke/CLAUDE.md +++ b/apps/mukke/CLAUDE.md @@ -160,7 +160,7 @@ Playback uses HTML5 Audio (browser-native codec support). Upload accepts any `au ### Backend (.env) ``` DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/mukke -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 S3_ENDPOINT=http://localhost:9000 S3_REGION=us-east-1 S3_ACCESS_KEY=minioadmin @@ -170,7 +170,7 @@ S3_BUCKET=mukke-storage ### Web (.env) ``` -PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +PUBLIC_MANA_AUTH_URL=http://localhost:3001 PUBLIC_BACKEND_URL=http://localhost:3010 ``` diff --git a/apps/mukke/apps/landing/package.json b/apps/mukke/apps/landing/package.json index 2760a15af..a08121e62 100644 --- a/apps/mukke/apps/landing/package.json +++ b/apps/mukke/apps/landing/package.json @@ -13,7 +13,7 @@ "dependencies": { "@astrojs/check": "^0.9.4", "@astrojs/sitemap": "^3.3.0", - "@manacore/shared-landing-ui": "workspace:*", + "@mana/shared-landing-ui": "workspace:*", "astro": "^5.1.1", "typescript": "^5.7.2" } diff --git a/apps/mukke/apps/landing/src/layouts/Layout.astro b/apps/mukke/apps/landing/src/layouts/Layout.astro index 93b5ea176..6232f8b7c 100644 --- a/apps/mukke/apps/landing/src/layouts/Layout.astro +++ b/apps/mukke/apps/landing/src/layouts/Layout.astro @@ -1,5 +1,5 @@ --- -import Analytics from '@manacore/shared-landing-ui/atoms/Analytics.astro'; +import Analytics from '@mana/shared-landing-ui/atoms/Analytics.astro'; interface Props { title: string; diff --git a/apps/mukke/apps/landing/src/pages/index.astro b/apps/mukke/apps/landing/src/pages/index.astro index 0a4e0485a..c5f37a37a 100644 --- a/apps/mukke/apps/landing/src/pages/index.astro +++ b/apps/mukke/apps/landing/src/pages/index.astro @@ -205,7 +205,7 @@ import Layout from '../layouts/Layout.astro';
-

© {new Date().getFullYear()} Mukke. Part of the ManaCore ecosystem.

+

© {new Date().getFullYear()} Mukke. Part of the Mana ecosystem.

diff --git a/apps/news/apps/landing/astro.config.mjs b/apps/news/apps/landing/astro.config.mjs index 12b0bed34..d64b06951 100644 --- a/apps/news/apps/landing/astro.config.mjs +++ b/apps/news/apps/landing/astro.config.mjs @@ -3,6 +3,6 @@ import tailwind from '@astrojs/tailwind'; import sitemap from '@astrojs/sitemap'; export default defineConfig({ - site: 'https://news.manacore.app', + site: 'https://news.mana.app', integrations: [tailwind(), sitemap()], }); diff --git a/apps/news/apps/landing/package.json b/apps/news/apps/landing/package.json index 0e0e196cf..33936878a 100644 --- a/apps/news/apps/landing/package.json +++ b/apps/news/apps/landing/package.json @@ -14,7 +14,7 @@ "dependencies": { "@astrojs/check": "^0.9.0", "@astrojs/sitemap": "^3.2.1", - "@manacore/shared-landing-ui": "workspace:*", + "@mana/shared-landing-ui": "workspace:*", "astro": "^5.16.0", "typescript": "^5.0.0" }, diff --git a/apps/news/apps/landing/src/pages/index.astro b/apps/news/apps/landing/src/pages/index.astro index 9335c0d00..0fc7b6a5a 100644 --- a/apps/news/apps/landing/src/pages/index.astro +++ b/apps/news/apps/landing/src/pages/index.astro @@ -4,12 +4,12 @@ import Navigation from '../components/Navigation.astro'; import Footer from '../components/Footer.astro'; // Shared components -import HeroSection from '@manacore/shared-landing-ui/sections/HeroSection.astro'; -import FeatureSection from '@manacore/shared-landing-ui/sections/FeatureSection.astro'; -import StepsSection from '@manacore/shared-landing-ui/sections/StepsSection.astro'; -import FAQSection from '@manacore/shared-landing-ui/sections/FAQSection.astro'; -import CTASection from '@manacore/shared-landing-ui/sections/CTASection.astro'; -import PricingSection from '@manacore/shared-landing-ui/sections/PricingSection.astro'; +import HeroSection from '@mana/shared-landing-ui/sections/HeroSection.astro'; +import FeatureSection from '@mana/shared-landing-ui/sections/FeatureSection.astro'; +import StepsSection from '@mana/shared-landing-ui/sections/StepsSection.astro'; +import FAQSection from '@mana/shared-landing-ui/sections/FAQSection.astro'; +import CTASection from '@mana/shared-landing-ui/sections/CTASection.astro'; +import PricingSection from '@mana/shared-landing-ui/sections/PricingSection.astro'; // Feature data const features = [ diff --git a/apps/news/package.json b/apps/news/package.json index cf620371c..9ecc86c4c 100644 --- a/apps/news/package.json +++ b/apps/news/package.json @@ -1,5 +1,5 @@ { - "name": "@manacore/news", + "name": "@mana/news", "version": "0.0.1", "private": true, "scripts": { diff --git a/apps/nutriphi/CLAUDE.md b/apps/nutriphi/CLAUDE.md index cbf60cdc4..703d7862f 100644 --- a/apps/nutriphi/CLAUDE.md +++ b/apps/nutriphi/CLAUDE.md @@ -238,7 +238,7 @@ pnpm build # Build for production NODE_ENV=development PORT=3023 DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/nutriphi -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 CORS_ORIGINS=http://localhost:5180,http://localhost:4323 # Gemini AI (uses gemini-2.5-flash model) @@ -251,7 +251,7 @@ GEMINI_API_KEY=your-gemini-api-key ```env PUBLIC_BACKEND_URL=http://localhost:3023 -PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +PUBLIC_MANA_AUTH_URL=http://localhost:3001 ``` ## Shared Package (@nutriphi/shared) diff --git a/apps/nutriphi/apps/landing/package.json b/apps/nutriphi/apps/landing/package.json index e37e518c4..34ce786ed 100644 --- a/apps/nutriphi/apps/landing/package.json +++ b/apps/nutriphi/apps/landing/package.json @@ -15,7 +15,7 @@ }, "dependencies": { "@astrojs/check": "^0.9.0", - "@manacore/shared-landing-ui": "workspace:*", + "@mana/shared-landing-ui": "workspace:*", "astro": "^5.16.0", "typescript": "^5.9.2" }, diff --git a/apps/nutriphi/apps/landing/src/layouts/Layout.astro b/apps/nutriphi/apps/landing/src/layouts/Layout.astro index fef222960..b4c8e481d 100644 --- a/apps/nutriphi/apps/landing/src/layouts/Layout.astro +++ b/apps/nutriphi/apps/landing/src/layouts/Layout.astro @@ -1,5 +1,5 @@ --- -import Analytics from '@manacore/shared-landing-ui/atoms/Analytics.astro'; +import Analytics from '@mana/shared-landing-ui/atoms/Analytics.astro'; interface Props { title: string; diff --git a/apps/nutriphi/apps/landing/src/pages/index.astro b/apps/nutriphi/apps/landing/src/pages/index.astro index ea5968804..a84ee081d 100644 --- a/apps/nutriphi/apps/landing/src/pages/index.astro +++ b/apps/nutriphi/apps/landing/src/pages/index.astro @@ -76,12 +76,12 @@ const faqs = [ { question: 'Wie funktioniert das Credit-System?', answer: - 'Jede Foto-Analyse kostet 5 Credits, Text-Analysen 2 Credits. Du erhältst täglich kostenlose Credits, oder du nutzt ManaCore Premium für unbegrenzte Analysen.', + 'Jede Foto-Analyse kostet 5 Credits, Text-Analysen 2 Credits. Du erhältst täglich kostenlose Credits, oder du nutzt Mana Premium für unbegrenzte Analysen.', }, { question: 'Gibt es eine kostenlose Version?', answer: - 'Ja! Du kannst NutriPhi kostenlos nutzen mit täglich 3 Foto-Analysen. Für mehr Analysen und Premium-Features gibt es ManaCore Credits.', + 'Ja! Du kannst NutriPhi kostenlos nutzen mit täglich 3 Foto-Analysen. Für mehr Analysen und Premium-Features gibt es Mana Credits.', }, ]; --- @@ -257,7 +257,7 @@ const faqs = [
N
- NutriPhi by ManaCore + NutriPhi by Mana
Datenschutz diff --git a/apps/photos/CLAUDE.md b/apps/photos/CLAUDE.md index 7e8b67b80..1a4c3ea40 100644 --- a/apps/photos/CLAUDE.md +++ b/apps/photos/CLAUDE.md @@ -2,7 +2,7 @@ ## Overview -**Photos** is a unified photo gallery application for the ManaCore ecosystem. It aggregates photos from all apps (Picture, Chat, Contacts, NutriPhi, etc.) via the mana-media service, providing a central place to view, organize, and manage photos. +**Photos** is a unified photo gallery application for the Mana ecosystem. It aggregates photos from all apps (Picture, Chat, Contacts, NutriPhi, etc.) via the mana-media service, providing a central place to view, organize, and manage photos. | App | Dev Port | Prod Port | Prod URL | |-----|----------|-----------|----------| @@ -174,7 +174,7 @@ pnpm db:studio # Open Drizzle Studio NODE_ENV=development PORT=3019 DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/photos -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 MANA_MEDIA_URL=http://localhost:3015 CORS_ORIGINS=http://localhost:5173,http://localhost:5189,http://localhost:8081 ``` @@ -183,7 +183,7 @@ CORS_ORIGINS=http://localhost:5173,http://localhost:5189,http://localhost:8081 ```env PUBLIC_BACKEND_URL=http://localhost:3019 -PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +PUBLIC_MANA_AUTH_URL=http://localhost:3001 PUBLIC_MANA_MEDIA_URL=http://localhost:3015 ``` diff --git a/apps/photos/package.json b/apps/photos/package.json index 4cda3070b..80b0df380 100644 --- a/apps/photos/package.json +++ b/apps/photos/package.json @@ -2,7 +2,7 @@ "name": "photos", "version": "0.2.0", "private": true, - "description": "Photos App - Unified Photo Gallery for ManaCore Ecosystem", + "description": "Photos App - Unified Photo Gallery for Mana Ecosystem", "scripts": { "dev": "pnpm run --filter=@photos/* --parallel dev", "dev:backend": "pnpm --filter @photos/backend dev", diff --git a/apps/picture/CLAUDE.md b/apps/picture/CLAUDE.md index b0a05fdb9..bbf4688da 100644 --- a/apps/picture/CLAUDE.md +++ b/apps/picture/CLAUDE.md @@ -51,8 +51,8 @@ pnpm --filter @picture/mobile dev # Mobile only | `REPLICATE_API_TOKEN` | Replicate API key | Yes | | `DATABASE_URL` | PostgreSQL connection | Yes | | `S3_ENDPOINT` | MinIO/S3 endpoint | Yes | -| `MANA_CORE_AUTH_URL` | Auth service URL | Yes | -| `MANA_CORE_SERVICE_KEY` | Service key for credits | Staging only | +| `MANA_AUTH_URL` | Auth service URL | Yes | +| `MANA_SERVICE_KEY` | Service key for credits | Staging only | | `APP_ID` | App identifier | Yes | --- @@ -69,7 +69,7 @@ pnpm --filter @picture/mobile dev # Mobile only - [ ] **Test staging credit enforcement** - Set `NODE_ENV=staging` and test credit check - Verify HTTP 402 returned when credits insufficient - - Test with valid `MANA_CORE_SERVICE_KEY` + - Test with valid `MANA_SERVICE_KEY` - [ ] **Test async generation (webhook mode)** - Test generation without `waitForResult: true` @@ -133,7 +133,7 @@ pnpm --filter @picture/mobile dev # Mobile only - [ ] **Staging deployment** - Deploy backend to staging server - - Configure `MANA_CORE_SERVICE_KEY` in staging + - Configure `MANA_SERVICE_KEY` in staging - Test credit system end-to-end - [ ] **Monitoring** diff --git a/apps/picture/MIGRATION_PLAN.md b/apps/picture/MIGRATION_PLAN.md index 854b87f1d..a0afbf8a0 100644 --- a/apps/picture/MIGRATION_PLAN.md +++ b/apps/picture/MIGRATION_PLAN.md @@ -260,7 +260,7 @@ EXPO_PUBLIC_SUPABASE_ANON_KEY # Weiterhin benötigt: EXPO_PUBLIC_PICTURE_BACKEND_URL -EXPO_PUBLIC_MANA_CORE_AUTH_URL +EXPO_PUBLIC_MANA_AUTH_URL ``` --- diff --git a/apps/picture/apps/landing/package.json b/apps/picture/apps/landing/package.json index 8fdb590c9..76493f294 100644 --- a/apps/picture/apps/landing/package.json +++ b/apps/picture/apps/landing/package.json @@ -15,7 +15,7 @@ }, "dependencies": { "@astrojs/check": "^0.9.0", - "@manacore/shared-landing-ui": "workspace:*", + "@mana/shared-landing-ui": "workspace:*", "@picture/design-tokens": "workspace:*", "astro": "^5.16.0", "astro-i18next": "1.0.0-beta.21", diff --git a/apps/picture/apps/landing/src/layouts/Layout.astro b/apps/picture/apps/landing/src/layouts/Layout.astro index bc29cf339..10ee1946e 100644 --- a/apps/picture/apps/landing/src/layouts/Layout.astro +++ b/apps/picture/apps/landing/src/layouts/Layout.astro @@ -3,7 +3,7 @@ import '../styles/global.css'; // import { HeadHrefLangs } from 'astro-i18next/components'; import { t } from '../i18n'; import LanguageSwitcher from '@components/LanguageSwitcher.astro'; -import Analytics from '@manacore/shared-landing-ui/atoms/Analytics.astro'; +import Analytics from '@mana/shared-landing-ui/atoms/Analytics.astro'; interface Props { title?: string; diff --git a/apps/picture/apps/landing/src/pages/index.astro b/apps/picture/apps/landing/src/pages/index.astro index 5e871eed7..dfe24544f 100644 --- a/apps/picture/apps/landing/src/pages/index.astro +++ b/apps/picture/apps/landing/src/pages/index.astro @@ -7,8 +7,8 @@ import CTA from '@components/CTA.astro'; import Footer from '@components/Footer.astro'; // Shared components -import StepsSection from '@manacore/shared-landing-ui/sections/StepsSection.astro'; -import PricingSection from '@manacore/shared-landing-ui/sections/PricingSection.astro'; +import StepsSection from '@mana/shared-landing-ui/sections/StepsSection.astro'; +import PricingSection from '@mana/shared-landing-ui/sections/PricingSection.astro'; // Steps data const steps = [ diff --git a/apps/picture/apps/mobile/contexts/AuthContext.tsx b/apps/picture/apps/mobile/contexts/AuthContext.tsx index 092ecc3e4..7bd275ed8 100644 --- a/apps/picture/apps/mobile/contexts/AuthContext.tsx +++ b/apps/picture/apps/mobile/contexts/AuthContext.tsx @@ -8,11 +8,11 @@ import { setDeviceAdapter, setNetworkAdapter, type UserData, -} from '@manacore/shared-auth'; +} from '@mana/shared-auth'; import { logger } from '~/utils/logger'; // Mana Core Auth URL from environment -const MANA_AUTH_URL = process.env.EXPO_PUBLIC_MANA_CORE_AUTH_URL || 'http://localhost:3001'; +const MANA_AUTH_URL = process.env.EXPO_PUBLIC_MANA_AUTH_URL || 'http://localhost:3001'; // Create SecureStore adapter for React Native const createSecureStoreAdapter = () => ({ diff --git a/apps/picture/apps/mobile/eslint.config.mjs b/apps/picture/apps/mobile/eslint.config.mjs index 0a8233f8d..b736d0db7 100644 --- a/apps/picture/apps/mobile/eslint.config.mjs +++ b/apps/picture/apps/mobile/eslint.config.mjs @@ -1,5 +1,5 @@ // @ts-check -import { baseConfig, typescriptConfig, reactConfig, prettierConfig } from '@manacore/eslint-config'; +import { baseConfig, typescriptConfig, reactConfig, prettierConfig } from '@mana/eslint-config'; export default [ { diff --git a/apps/picture/apps/mobile/package.json b/apps/picture/apps/mobile/package.json index 63c35c373..b03d62990 100644 --- a/apps/picture/apps/mobile/package.json +++ b/apps/picture/apps/mobile/package.json @@ -19,8 +19,8 @@ "dependencies": { "@callstack/liquid-glass": "^0.4.2", "@expo/vector-icons": "^15.0.2", - "@manacore/shared-auth": "workspace:*", - "@manacore/shared-logger": "workspace:*", + "@mana/shared-auth": "workspace:*", + "@mana/shared-logger": "workspace:*", "@picture/design-tokens": "workspace:*", "@picture/shared": "workspace:*", "@react-native-async-storage/async-storage": "2.2.0", diff --git a/apps/picture/apps/mobile/utils/logger.ts b/apps/picture/apps/mobile/utils/logger.ts index 2829a1e4f..bae0f1ce6 100644 --- a/apps/picture/apps/mobile/utils/logger.ts +++ b/apps/picture/apps/mobile/utils/logger.ts @@ -1,5 +1,5 @@ /** * Logger utilities - re-exports from shared package - * @see @manacore/shared-logger + * @see @mana/shared-logger */ -export { logger, perfLogger, networkLogger } from '@manacore/shared-logger'; +export { logger, perfLogger, networkLogger } from '@mana/shared-logger'; diff --git a/apps/planta/CLAUDE.md b/apps/planta/CLAUDE.md index 15e36697d..73ac0f59a 100644 --- a/apps/planta/CLAUDE.md +++ b/apps/planta/CLAUDE.md @@ -128,7 +128,7 @@ pnpm preview # Preview production build NODE_ENV=development PORT=3022 DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/planta -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 GOOGLE_GEMINI_API_KEY=xxx CORS_ORIGINS=http://localhost:5173,http://localhost:5191 S3_ENDPOINT=http://localhost:9000 @@ -141,7 +141,7 @@ S3_SECRET_KEY=minioadmin ``` PUBLIC_BACKEND_URL=http://localhost:3022 -PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +PUBLIC_MANA_AUTH_URL=http://localhost:3001 ``` ## Shared Package diff --git a/apps/presi/CLAUDE.md b/apps/presi/CLAUDE.md index 74bfb0276..0dede9507 100644 --- a/apps/presi/CLAUDE.md +++ b/apps/presi/CLAUDE.md @@ -128,7 +128,7 @@ pnpm db:seed # Seed database NODE_ENV=development PORT=3008 DATABASE_URL=postgresql://manacore:devpassword@localhost:5432/presi -MANA_CORE_AUTH_URL=http://localhost:3001 +MANA_AUTH_URL=http://localhost:3001 CORS_ORIGINS=http://localhost:5173,http://localhost:8081 ``` @@ -136,7 +136,7 @@ CORS_ORIGINS=http://localhost:5173,http://localhost:8081 ``` PUBLIC_BACKEND_URL=http://localhost:3008 -PUBLIC_MANA_CORE_AUTH_URL=http://localhost:3001 +PUBLIC_MANA_AUTH_URL=http://localhost:3001 ``` ## Shared Package diff --git a/apps/presi/apps/landing/package.json b/apps/presi/apps/landing/package.json index d8605eb64..b8894fe09 100644 --- a/apps/presi/apps/landing/package.json +++ b/apps/presi/apps/landing/package.json @@ -14,7 +14,7 @@ "dependencies": { "@astrojs/check": "^0.9.0", "@astrojs/sitemap": "^3.2.1", - "@manacore/shared-landing-ui": "workspace:*", + "@mana/shared-landing-ui": "workspace:*", "astro": "^5.16.0", "typescript": "^5.0.0" }, diff --git a/apps/presi/apps/landing/src/components/Footer.astro b/apps/presi/apps/landing/src/components/Footer.astro index 75ed11718..078cac537 100644 --- a/apps/presi/apps/landing/src/components/Footer.astro +++ b/apps/presi/apps/landing/src/components/Footer.astro @@ -1,5 +1,5 @@ --- -import Container from '@manacore/shared-landing-ui/atoms/Container.astro'; +import Container from '@mana/shared-landing-ui/atoms/Container.astro'; ---