chore: add Storybook 10 setup with PrimeVue + Tailwind integration

Installs Storybook 10.4 in apps/app/ as a component-development and
autodoc tool. Configures viteFinal with all seven SPA aliases so
stories resolve imports identically to the dev/build pipeline.
preview.ts reuses @/plugins/primevue's installPrimeVue() so Storybook
stays in lock-step with main.ts whenever the PrimeVue config changes.

Only the addons we need are wired: addon-docs (autodocs) and
addon-a11y (axe-core checks). addon-interactions is intentionally
omitted — interaction testing stays in Playwright CT per the testing
architecture.

Seed stories: PrimeVue Button (Primary/Secondary/Danger), Tailwind
utility box, and FormField (Default/WithError/Disabled) wrapped in
@primevue/forms Form + Zod resolver.

Adds make storybook target alongside make app / make docs.
This commit is contained in:
2026-05-14 11:50:21 +02:00
parent e36f57b8e1
commit ebb8e3bcf6
9 changed files with 1489 additions and 6 deletions

View File

@@ -1,4 +1,4 @@
.PHONY: help services services-stop services-glitchtip-status api app docs migrate fresh db-shell test test-db-create schema-dump
.PHONY: help services services-stop services-glitchtip-status api app docs migrate fresh db-shell test test-db-create schema-dump storybook
# Colors
GREEN := \033[0;32m
@@ -25,6 +25,7 @@ help:
@echo " make api Laravel API → http://localhost:8000"
@echo " make app Organizer SPA → http://localhost:5174"
@echo " make docs VitePress docs → http://localhost:5176"
@echo " make storybook Storybook (apps/app) → http://localhost:6006"
@echo ""
@echo " $(YELLOW)Database:$(NC)"
@echo " make migrate Run migrations"
@@ -102,3 +103,7 @@ schema-dump: test-db-create
@echo "$(GREEN)Regenerating api/database/schema/mysql-schema.sql...$(NC)"
@cd api && DB_DATABASE=crewli_test php artisan schema:dump --database=mysql
@echo "$(YELLOW)Note: Commit the updated schema dump alongside any new migrations.$(NC)"
storybook:
@echo "$(GREEN)Starting Storybook → http://localhost:6006$(NC)"
@cd apps/app && pnpm storybook