21 Commits

Author SHA1 Message Date
Alexander Zielonka
15dc0d289a chore: Remove library link from navbar
All checks were successful
Deploy Dimension47 / deploy (push) Successful in 37s
Library is now accessed per-campaign via the campaign detail page.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 11:17:01 +01:00
Alexander Zielonka
4b3c0d2667 feat: Add GM library for battle maps and NPC templates
All checks were successful
Deploy Dimension47 / deploy (push) Successful in 35s
- Add library page with tabs for maps and combatants
- Create map upload modal with grid configuration
- Create NPC/monster template modal with abilities
- Add library link to campaign page (GM only)
- Add battle feature TODO documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 10:28:38 +01:00
Alexander Zielonka
d6f2b62bd7 feat: Add battle screen with real-time sync (Phase 1 MVP)
All checks were successful
Deploy Dimension47 / deploy (push) Successful in 35s
- Add battle module with sessions, maps, tokens, and combatants
- Implement WebSocket gateway for real-time battle updates
- Add map upload with configurable grid system
- Create battle canvas with token rendering and drag support
- Support PC tokens from characters and NPC tokens from templates
- Add initiative tracking and round management
- GM-only controls for token manipulation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 10:04:16 +01:00
Alexander Zielonka
f4c7386358 chore: Add favicon and improve meta tags, remove unused files
All checks were successful
Deploy Dimension47 / deploy (push) Successful in 40s
- Replace vite.svg with Dimension47 logo as favicon
- Add comprehensive meta tags (OG, Twitter, keywords)
- Remove unused action icon files (old versions)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 09:09:29 +01:00
Alexander Zielonka
464b92d3b5 feat: Add AONPRD link and hide notes for weapons in item modal
All checks were successful
Deploy Dimension47 / deploy (push) Successful in 35s
- Added external link to Archives of Nethys for all equipment items
- Notes section now only displays for non-weapon items
- Uses equipment.url field from database, prepends https://2e.aonprd.com if needed

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 14:49:54 +01:00
Alexander Zielonka
eb5b7fdf05 feat: Add PF2e dying and death system
All checks were successful
Deploy Dimension47 / deploy (push) Successful in 36s
- Add Dying condition when HP drops to 0 (value = 1 + Wounded)
- Recovery check modal with manual outcome selection (Crit Success/Success/Failure/Crit Failure)
- Dying indicator replaces HP display when character is dying
- Death overlay with revive button when Dying reaches threshold (4 - Doomed)
- Revive removes Dying/Wounded/Doomed and sets HP to 1
- Real-time sync via WebSocket for all dying state changes
- Automatic Wounded condition when recovering from dying

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 14:39:21 +01:00
Alexander Zielonka
7bc55566d8 fix: Correct path to equipmentlevel.json
All checks were successful
Deploy Dimension47 / deploy (push) Successful in 39s
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 09:35:55 +01:00
Alexander Zielonka
aa6285bada feat: Add equipment level data and update script
All checks were successful
Deploy Dimension47 / deploy (push) Successful in 34s
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 09:35:03 +01:00
Alexander Zielonka
1f35914e7a ci: Add warning if ANTHROPIC_API_KEY not set
All checks were successful
Deploy Dimension47 / deploy (push) Successful in 33s
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 09:31:29 +01:00
Alexander Zielonka
9c77370b70 ci: Ensure CORS_ORIGINS is set in server .env
All checks were successful
Deploy Dimension47 / deploy (push) Successful in 34s
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 09:27:08 +01:00
Alexander Zielonka
e4d44dadbf ci: Set VITE_API_URL to dimension47.de in deploy workflow
All checks were successful
Deploy Dimension47 / deploy (push) Successful in 34s
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 09:17:03 +01:00
Alexander Zielonka
642819d5fc fix: Correct path to dist/src/main.js in deploy workflow
All checks were successful
Deploy Dimension47 / deploy (push) Successful in 34s
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 09:14:08 +01:00
Alexander Zielonka
adb05c9675 ci: Add Gitea Actions workflow for deployment
Some checks failed
Deploy Dimension47 / deploy (push) Failing after 34s
- Auto-deploy on push to main
- Pull, build, migrate, restart with PM2

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 09:11:20 +01:00
Alexander Zielonka
aaeae68fd9 fix: TypeScript errors and add clickable class actions
- Fix isEquipped -> equipped property name in export-character-html.ts
- Remove unused imports in character-sheet-page.tsx
- Remove unused variable in alchemy-tab.tsx
- Add on-demand German translation for feats in feats.service.ts
- Make class actions clickable in actions-tab with FeatDetailModal
- Add (Englisch) hint for untranslated feat descriptions

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 09:08:26 +01:00
Alexander Zielonka
b3dc773fbf docs: Update CLAUDE.md with Alchemy, Rest system and new features
- Add Alchemie-Tab documentation (complete implementation)
- Add Rest-System documentation
- Add Status-Tab extensions (Perception, Speed, AC with proficiency)
- Add HTML-Export feature documentation
- Update file structure with new components and services

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 15:49:20 +01:00
Alexander Zielonka
8eb5ef01de feat: Add HTML export, perception, speed and improve Status tab layout
- Add HTML character sheet export function
- Add Perception calculation to Status tab with correct PF2e rules
- Add Speed display to Status tab
- Redesign AC/Speed to use Card components matching tab design
- Simplify Rest button to match card-based design pattern

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 15:44:28 +01:00
Alexander Zielonka
618de7b21d feat: Implement PF2e Alchemy and Rest system
Alchemy System:
- Versatile Vials tracking with refill functionality
- Research Field display (Bomber, Chirurgeon, Mutagenist, Toxicologist)
- Formula Book with search and level filtering
- Advanced Alchemy (daily preparation) for infused items
- Quick Alchemy using versatile vials
- Normal Alchemy for permanent crafted items
- Auto-upgrade system for formula variants (Lesser → Greater)
- Effect parsing with damage badges (damage type colors, splash, healing, bonus)
- German translations for all UI elements and item effects
- WebSocket sync for all alchemy state changes

Rest System:
- HP healing based on CON modifier × Level
- Condition management (Fatigued removed, Doomed/Drained reduced)
- Resource reset (spell slots, focus points, daily abilities)
- Alchemy reset (infused items expire, vials refilled)
- Rest modal with preview of changes

Database:
- CharacterAlchemyState model for vials and batch tracking
- CharacterFormula model for formula book
- CharacterPreparedItem model with isInfused flag
- Equipment effect field for variant-specific effects
- Translation germanEffect field for effect translations
- Scraped effect data from Archives of Nethys (205 items)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 15:24:40 +01:00
Alexander Zielonka
55419d3896 feat: Complete character system, animated login, WebSocket sync
Character System:
- Inventory system with 5,482 equipment items
- Feats tab with categories and details
- Actions tab with 99 PF2e actions
- Item detail modal with equipment info
- Feat detail modal with descriptions
- Edit character modal with image cropping

Auth & UI:
- Animated login screen with splash → form transition
- Letter-by-letter "DIMENSION 47" animation
- Starfield background with floating orbs
- Logo tap glow effect
- "Remember me" functionality (localStorage/sessionStorage)

Real-time Sync:
- WebSocket gateway for character updates
- Live sync for HP, conditions, inventory, equipment status, money, level

Database:
- Added credits field to characters
- Added custom fields for items
- Added feat fields and relations
- Included full database backup

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 15:36:29 +01:00
e60a8df4f0 Implement complete inventory system with equipment database
Features:
- HP Control component with damage/heal/direct modes (mobile-optimized)
- Conditions system with PF2e condition database
- Equipment database with 5,482 items from PF2e (weapons, armor, equipment)
- AddItemModal with search, category filters, and pagination
- Bulk tracking with encumbered/overburdened status display
- Item management (add, remove, toggle equipped)

Backend:
- Equipment module with search/filter endpoints
- Prisma migration for equipment detail fields
- Equipment seed script importing from JSON data files
- Extended Equipment model (damage, hands, AC, etc.)

Frontend:
- New components: HpControl, AddConditionModal, AddItemModal
- Improved character sheet with tabbed interface
- API methods for equipment search and item management

Documentation:
- CLAUDE.md with project philosophy and architecture decisions

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 01:55:01 +01:00
Alexander Zielonka
94335ecd12 feat: Charaktere-Modul mit Pathbuilder Import
Backend:
- Characters-Modul (CRUD, HP-Tracking, Conditions)
- Pathbuilder 2e JSON Import Service
- Claude API Integration für automatische Übersetzungen
- Translations-Modul mit Datenbank-Caching
- Prisma Schema erweitert (Character, Abilities, Skills, Feats, Items, Resources)

Frontend:
- Kampagnen-Detailseite mit Mitglieder- und Charakterverwaltung
- Charakter erstellen Modal
- Pathbuilder Import Modal (Datei-Upload + JSON-Paste)
- Logo-Integration (Dimension 47 + Zeasy)
- Cinzel Font für Branding

Weitere Änderungen:
- Auth 401 Redirect Fix für Login-Seite
- PROGRESS.md mit Projektfortschritt

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-18 20:36:44 +01:00
090aae53d8 Initial commit: Dimension47 project setup
- NestJS backend with JWT auth, Prisma ORM, Swagger docs
- Vite + React 19 frontend with TypeScript
- Tailwind CSS v4 with custom dark theme design system
- Auth module: Login, Register, Protected routes
- Campaigns module: CRUD, Member management
- Full Prisma schema for PF2e campaign management
- Docker Compose for PostgreSQL

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-18 16:24:18 +01:00