Public Access
-
Draft v0.2.0 Stable
released this
2026-09-16 12:28:58 +00:00 | 10 commits to main since this releaseGenerated clients now ship on
@fernandojvideira/vue-ui-kit, with every default page rebuilt on it, and both client images build withdocker composeout of the box.Client scaffolding (
draft new client,draft new monorepo)- vue-ui-kit is the component library on both frameworks. Vue drops the shadcn-vue init/add steps and imports vue-ui-kit's
theme.cssdirectly; Nuxt switches from theui(Nuxt UI) starter tominimalwith Tailwind v4 + vue-ui-kit wired by hand. The leftover shadcn-vue / Nuxt UI config, deps, and generated component files are gone. - Default pages redesigned on real kit components — Card, FormField, Dialog, Select, EmptyState, Skeleton, Avatar, Badge, Alert, Spinner — with a shared
useEntrance()fade/rise entrance and.presstap feedback matching the kit. - Tabbed auth card.
/loginand/signupshare one Log in / Register card after the kit's AuthDemo; the route picks the initial tab so?redirect=and existing links keep working. - Single-tone page background. The tint lives once on the layout root and pages fill the viewport, instead of each page painting a band that stopped where its content ended.
- Docker images for both clients. Nuxt runs its Nitro server; Vue is served by nginx with a history-mode fallback and
/api/proxied to the api container (resolved per request, so it starts even beforeapiis up). Both mount~/.npmrcas a build secret to fetch@fernandojvideira/vue-ui-kitfrom the Gitea registry — nothing is baked into the image — and the monorepo'sdocker-compose.ymlwires the secret up, sojust local/docker compose buildneed no extra flags. typescriptpinned to~6.0.0in the Nuxt scaffold: theminimalstarter has no TypeScript devDependency, and an unpinned install lands on TS 7, which breaks the cross-file type resolution vue-ui-kit's components rely on.
Fixed
- Generated monorepos couldn't build their client image. The compose file referenced
apps/client/Dockerfilebut the Nuxt overlay never wrote it, and the Vue client had no image at all. Both now ship one (see above). - Vue monorepos had a stale root lockfile. The Vue scaffold wrote a
pnpm-workspace.yamlintoapps/client, making it its own workspace, so installs updated a nested lockfile while the root one kept describing the template's Nuxt client —pnpm install --frozen-lockfilerefused it. It's now only written for a standalone client. - Vue projects were missing
AuthCard.vue. The overlay listed components by name; it now embedssrc/components/as a whole. - Nuxt SSR crashed on any page using Dialog (
Injection Symbol(DialogRootContext) not found). The two client apps pinned differentvueranges, so pnpm resolved twovue/reka-uiinstances and reka-ui's provide/inject context couldn't cross them. Fixed with a workspace-widevueoverride and by excluding vue-ui-kit (raw.vuesource) from Vite's dependency pre-bundler. draft keyis registered on the root command with a working--sizeflag.make buildno longer builds the binary twice; the embed step is stamped so unchanged sources skip it. Newmake clean.- Help text now covers clients and monorepos, not just Go APIs.
- Removed a stray debug print from the service generator.
- Fresh clients rendered a blank
/login(Vue) or crashed SSR on Dialog pages (Nuxt): Vite pre-bundled vue-ui-kit with a second reka-ui instance, so its provide/inject contexts didn't match. Generated configs now exclude the package fromoptimizeDeps. - The auth card's Log in / Register tabs now update the URL (
/login↔/signup, keeping?redirect=) without losing typed input.
Upgrade notes
- Generated clients install
@fernandojvideira/vue-ui-kitfrom its Gitea npm registry, sopnpm installand container builds need the one-time~/.npmrctoken setup described in the vue-ui-kit README
Downloads
- vue-ui-kit is the component library on both frameworks. Vue drops the shadcn-vue init/add steps and imports vue-ui-kit's