This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
vmk-ui-kit is a new UI kit that must be visually based on a Figma mockup while remaining compatible with the existing gnexus-ui-kit. Existing projects that consume gnexus-ui-kit should be able to switch to this package with minimal or no code changes.
A read-only clone of the reference kit is kept at /home/gmikcon/Projects/gnexus-ui-kit-reference for inspection. Do not edit that repository.
The primary consumer contract of gnexus-ui-kit is its Vue 3 adapter (gnexus-ui-kit/vue). The secondary contract is the browser JS bundle (gnexus-ui-kit main/module) and CSS. Preserve these public surfaces:
main: dist/js/gnexus-ui-kit.jsmodule: dist/js/gnexus-ui-kit.esm.jsstyle: dist/css/kit.cssexports["."] (import/require/default)exports["./vue"] and exports["./vue/*"]exports["./dist/css/kit.css"] / exports["./css/kit.css"]exports["./dist/assets/*"]Gn* components plus useToast, tryUseRouter, tryUseRoute, isRouteActive, and the GnexusUiVue plugin.window.GNexusUIKit with Helper, Toasts, Modals, advancedSelect, editableString, confirmPopup, Drawer, NavigationShell, Overlays, InputPatterns, Accordion, Tabs.demo/partials/*.html are the source of truth for adapter component output.ph class and icon props must use the ph- prefix (Phosphor Icons only).primary, secondary, accent, success, warning, danger, error, info.The reference kit uses:
@use/@forward) → PostCSS/autoprefixer → clean-cssgulp-file-include for HTML partialshttp://localhost:3000src/scss/kit.scss — main CSS entry.src/js/index.js — browser bundle entry.src/vue/index.js — Vue adapter entry; components are render-function .js files.demo/index.html + demo/partials/*.html — component documentation/demo page.public/assets/ — fonts (IBM Plex Mono), Phosphor Icons, highlight.js, images.dist/ — generated build output, ignored by git.The reference visual style is dark cyber/terminal with Tokyo Night influence. Tokens to keep aligned if the new mockup changes them:
$color-black (#16161E), $color-dark (#1F2335), $color-grey (#414868), $color-cyan (#7DCFFF), $color-magenta (#FF00CC), $color-hot-pink (#FF1492), $color-electric-blue (#7AA2F7), $color-orange (#FF9E64), $color-purple (#BB9AF7), $color-indigo (#565F89), $color-teal (#73DACA), $color-neon-yellow (#E0AF68), $color-neon-green (#9ECE6A), $color-text-light (#C0CAF5), $color-text-medium (#A9B1D6), $color-text-dark (#787C99).$color-primary (text-light), $color-secondary (electric-blue), $color-accent (orange), $color-success (neon-green), $color-warning (neon-yellow), $color-error (#F7768E), $color-info (purple).$surface-page (#16161E), $surface-panel (#1F2335), $surface-panel-muted, $surface-panel-strong.$space-0 … $space-12.No build, lint, test, or development commands are defined yet because the project has no package.json or tooling configuration. Once the build stack is chosen, update this section with the actual commands.
Before claiming compatibility, run the equivalent of the reference release checks:
gnexus-ui-kit/vue components.