feat: rename ManaCore to Mana across entire codebase

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) <noreply@anthropic.com>
This commit is contained in:
Till JS 2026-04-05 20:00:13 +02:00
parent a787a27daa
commit 878424c003
1961 changed files with 3817 additions and 9671 deletions

View file

@ -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**:

View file

@ -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`

View file

@ -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<string>('MANA_CORE_AUTH_URL');
const authUrl = this.configService.get<string>('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 });

View file

@ -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
```

View file

@ -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"
},

View file

@ -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;

View file

@ -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';
---
<Layout title="Cookie-Richtlinie - ManaChat">

View file

@ -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';
---
<Layout title="Impressum - ManaChat">

View file

@ -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 = [

View file

@ -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';
---
<Layout
@ -15,7 +15,7 @@ import ManaPricingSection from '@manacore/shared-landing-ui/sections/ManaPricing
<ManaPricingSection
showOneTime={true}
showTrustIndicators={true}
ctaBaseUrl="https://app.manacore.io/register"
ctaBaseUrl="https://app.mana.io/register"
/>
</main>

View file

@ -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';
---
<Layout title="Datenschutzerklärung - ManaChat">

View file

@ -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';
---
<Layout title="Nutzungsbedingungen - ManaChat">

View file

@ -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

View file

@ -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',

View file

@ -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 = () => ({

View file

@ -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 [
{

View file

@ -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