You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Tracking issue for theme-dynamical-vue (themes/theme-dynamical-vue) — a fully client-rendered Vue 3 + Tailwind CSS 4 ApplicationTemplate for DynamiaTools, same enterprise-shell spirit as theme-dynamical (sidebar, top bar, centered content, footer) but with no ZK, no server-side view rendering.
Current state (shipped)
3 skins (Blue, Dynamia, Dark), same skin contract as every other theme.
Sidebar + top bar + content + footer shell built with @dynamia-tools/vue + Tailwind.
CrudPage nodes render through <DynamiaCrudPage> (full client-side CRUD).
Every other page type renders through <dynamia-embed> (auto-detects HTML vs. JS, sandboxes accordingly).
Confirm dialogs / toasts wired via DynamiaConfirmHost/DynamiaToastHost mounted at the app root (from the [[Server-Driven Action Flows]] work, see Server-Driven Action Flows for RemoteAction #79).
All-in-one Maven + Node build (mvn package builds the Vue frontend via frontend-maven-plugin, no separate pnpm bootstrap).
Known dependency: Action Flows
Because this theme has no ZK fallback, every interactive backend action (confirm-before-delete, multi-step wizard, entity-picking dialog) has to go through the Server-Driven Action Flows protocol (#79). Gaps there — INPUT/DIALOG/REDIRECT/CALL/CUSTOM steps have no renderer yet (#81) — are a direct blocker for any theme feature that needs more than a plain confirm.
Open items / follow-up work
File sub-issues here as concrete gaps are found. Candidates to evaluate:
End-to-end coverage/testing story for the Vue frontend (unit + at least one real e2e flow through login → navigation → CrudPage → action).
Parity check against theme-dynamical (ZK) for anything the Vue shell doesn't yet cover (e.g. non-CrudPage ZUL pages fall back to /page-embed/{path}, which requires ZK on the classpath — an app with zero ZK views has no fallback today and must point every non-CrudPage node at a real HTTP resource).
Production readiness: bundle size, CSP, error boundaries for <dynamia-embed> sandboxing failures.
Summary
Tracking issue for
theme-dynamical-vue(themes/theme-dynamical-vue) — a fully client-rendered Vue 3 + Tailwind CSS 4ApplicationTemplatefor DynamiaTools, same enterprise-shell spirit astheme-dynamical(sidebar, top bar, centered content, footer) but with no ZK, no server-side view rendering.Current state (shipped)
POST /login/json, session +DYNAMIA_JWTcookie, no full-page reload).@dynamia-tools/vue+ Tailwind.CrudPagenodes render through<DynamiaCrudPage>(full client-side CRUD).<dynamia-embed>(auto-detects HTML vs. JS, sandboxes accordingly).DynamiaConfirmHost/DynamiaToastHostmounted at the app root (from the [[Server-Driven Action Flows]] work, see Server-Driven Action Flows for RemoteAction #79).mvn packagebuilds the Vue frontend viafrontend-maven-plugin, no separate pnpm bootstrap).Known dependency: Action Flows
Because this theme has no ZK fallback, every interactive backend action (confirm-before-delete, multi-step wizard, entity-picking dialog) has to go through the Server-Driven Action Flows protocol (#79). Gaps there —
INPUT/DIALOG/REDIRECT/CALL/CUSTOMsteps have no renderer yet (#81) — are a direct blocker for any theme feature that needs more than a plain confirm.Open items / follow-up work
File sub-issues here as concrete gaps are found. Candidates to evaluate:
theme-dynamical(ZK) for anything the Vue shell doesn't yet cover (e.g. non-CrudPage ZUL pages fall back to/page-embed/{path}, which requires ZK on the classpath — an app with zero ZK views has no fallback today and must point every non-CrudPage node at a real HTTP resource).<dynamia-embed>sandboxing failures.References
themes/theme-dynamical-vue/README.md