.cursor/skills/fantasia-markdown-dialogs/SKILL.md
Implements or edits markdown-backed dialogs using Quasar QMarkdown and i18n- sourced document strings. Use when changing DialogMarkdownDocument, help docs, or changelog/license content shown in-app.
npx skillsauth add vishiri/fantasia-archive fantasia-markdown-dialogsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
DialogMarkdownDocument.vue: Renders markdown via QMarkdown from @quasar/quasar-ui-qmarkdown with the package CSS imported alongside the component.src/stores/S_Dialog.ts) and helpers in src/scripts/appGlobalManagementUI/dialogManagement.ts (for example openDialogMarkdownDocument). The root q-dialog model calls registerMarkdownDialogStackGuard from that module so markdownDialogOpenCount stays aligned when the dialog closes or the host unmounts.i18n/en-US/documents/ (and parallel locales) and are registered on the documents key in i18n/en-US/index.ts (often through specialCharacterFixer).documents.* strings in .storybook-workspace/.storybook/preview.ts unless Storybook markdown loader support is explicitly configured..md assets and i18n wiring over hardcoding large markdown in .vue files.i18n/*/documents/ is compiled as vue-i18n message text: do not use stray {...} (for example glob .*.{ext1,ext2}) unless you follow vue-i18n placeholder rules — invalid groups break the changelog and other document dialogs at runtime. See fantasia-changelog-en-us for changelog-specific wording.documents registration.types/)interface / type declarations in repository-root types/ (import with app/types/...). Prefer one domain-oriented module per feature area with brief JSDoc on exports (see types/I_appMenusDataList.ts). Do not add colocated <filename>.types.ts under src/, src-electron/, or .storybook-workspace/. Ambient augmentations for third-party modules also live under types/ and are loaded with a side-effect import from the owning boot file or src/stores/index.ts (see types/piniaModuleAugmentation.ts)..js), TypeScript (.ts), Vue (.vue), and JSON (.json, .jsonc, .json5) files, enforce expanded multi-line object literals via ESLint (object-curly-newline + object-property-newline) and keep files auto-fixable with eslint --fix.development
Splits working tree changes into logical Git commits with conventional messages (feat, fix, test, chore, refactor, style, docs). Proposes commits one at a time and waits for explicit user approval before each git commit. Use when the user asks to commit, split commits, stage by topic, or use conventional / semantic commit messages.
development
Aligns AI suggestions with Fantasia Archive as a worldbuilding database manager: projects, documents, and in-app concepts. Use when designing UX, data models, menus, or copy that should match the product purpose.
development
Runs and extends Fantasia Archive tests: Vitest unit tests vs Playwright component and E2E tests, including rebuild-before-Playwright rules and file naming. Use when writing tests, debugging CI, or when the user mentions Vitest, Playwright, component tests, or e2e.
development
Designs SQLite usage in Fantasia Archive’s Electron main process: file locations under userData, native better-sqlite3 module constraints, and migrations. Use when editing electron-main database code, schema, or persistence paths.