feat: major update with network graphs, themes, todo extensions, and more

## New Features

### Network Graph Visualization (Contacts, Calendar, Todo)
- D3.js force simulation for physics-based layout
- Zoom & pan with mouse/touchpad
- Keyboard shortcuts: +/- zoom, 0 reset, Esc deselect, / search, F focus
- Filtering by tags, company/location/project, connection strength
- Shared components in @manacore/shared-ui

### Central Tags API (mana-core-auth)
- CRUD endpoints for tags
- Schema: tags table with userId, name, color, app
- Shared tag components in @manacore/shared-ui

### Custom Themes System
- Theme editor with live preview and color picker
- Community theme gallery
- Theme sharing (public, unlisted, private)
- Backend API in mana-core-auth

### Todo App Extensions
- Glass-pill design for task input and items
- Settings page with 20+ preferences
- Task edit modal with inline editing
- Statistics page with visualizations
- PWA support with offline capabilities
- Multiple kanban boards

### Contacts App Features
- Duplicate detection
- Photo upload
- Batch operations
- Enhanced favorites page with multiple view modes
- Alphabet view improvements
- Search modal

### Help System
- @manacore/shared-help-content
- @manacore/shared-help-ui
- @manacore/shared-help-types

### Other Features
- Themes page for all apps
- Referral system frontend
- CommandBar (global search)
- Skeleton loaders
- Settings page improvements

## Bug Fixes
- Network graph simulation initialization
- Database schema TEXT for user_id columns (Better Auth compatibility)
- Various styling fixes

## Documentation
- Daily report for 2025-12-10
- CI/CD deployment guide

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Till-JS 2025-12-10 02:37:46 +01:00
parent e84371aa94
commit ee42b6cc76
381 changed files with 39284 additions and 6275 deletions

View file

@ -0,0 +1,125 @@
# 🔑 Admin Panel Zugang - Schnellanleitung
## Der EINFACHSTE Weg:
### 1⃣ **Coolify Terminal nutzen**
1. Login in Coolify: https://coolify.ulo.ad (oder deine Coolify-URL)
2. Navigiere zu: **Applications → uLoad → Terminal**
3. Führe aus:
```bash
# Admin-Account erstellen
./pocketbase superuser create
# Eingabe:
# Email: admin@ulo.ad
# Password: [sicheres Passwort]
```
### 2**SSH Tunnel einrichten** (von deinem Computer)
```bash
# Windows (PowerShell/Terminal):
ssh -L 8090:localhost:8090 root@91.99.221.179
# Mac/Linux:
ssh -L 8090:localhost:8090 root@91.99.221.179
# Passwort eingeben (dein Server-Root-Passwort)
```
### 3⃣ **Admin Panel öffnen**
Browser öffnen und navigieren zu:
```
http://localhost:8090/_/
```
Mit den Zugangsdaten aus Schritt 1 einloggen.
---
## Alternative: Temporärer Web-Zugang
**⚠️ NUR für initiale Einrichtung!**
1. In Coolify → Configuration → Advanced → Custom Nginx:
```nginx
location /temp-admin/ {
allow 91.99.221.179; # DEINE IP hier!
deny all;
rewrite ^/temp-admin/(.*)$ /$1 break;
proxy_pass http://127.0.0.1:8090;
}
```
2. Speichern & Redeploy
3. Zugriff über: `https://ulo.ad/temp-admin/_/`
4. **WICHTIG**: Nach Setup wieder entfernen!
---
## Was du im Admin Panel tun solltest:
1. ✅ **Admin-Account sichern**
- Starkes Passwort setzen
- 2FA aktivieren (wenn verfügbar)
2. ✅ **Collections prüfen**
- `users` → Username-Feld vorhanden?
- `links` → use_username Feld vorhanden?
- `folders` → Struktur korrekt?
3. ✅ **Test-User anlegen**
- Username: till
- Email: deine@email.de
- Passwort setzen
4. ✅ **API Rules kontrollieren**
- users: Öffentliche Profile erlaubt?
- links: Richtige Berechtigungen?
---
## Troubleshooting:
**Problem: SSH Connection refused**
```bash
# Prüfe ob SSH auf dem Server läuft
ssh root@91.99.221.179 "echo SSH works"
```
**Problem: localhost:8090 zeigt nichts**
```bash
# Prüfe ob PocketBase läuft (im SSH):
curl http://localhost:8090/api/health
```
**Problem: Permission denied im Terminal**
```bash
# Als root ausführen:
sudo su
cd /app
./pocketbase superuser create
```
---
## Sicherheits-Checkliste:
- [ ] Admin-Account mit starkem Passwort
- [ ] SSH-Key statt Passwort für Server
- [ ] Keine öffentliche Admin-Route
- [ ] Regelmäßige Backups eingerichtet
- [ ] Monitoring aktiviert
Der SSH-Tunnel ist die sicherste Methode!