بنقرة واحدة
fini-frontend
Fini Vue frontend implementation conventions for views, templates, rendering decisions, and tests.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Fini Vue frontend implementation conventions for views, templates, rendering decisions, and tests.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
TRIGGER when user asks to create, update, list, or manage quests, spaces, reminders, or Focus state in Fini. Use the `fini-cli` foundation skill for binary preflight, CLI/app mode selection, JSON output decisions, and safe command sequencing before any action.
Always use this at the start of development work in the Fini repo. Orchestrates which repo-local or gstack skill to load, which Makefile command to prefer, what context to read, and what evidence is required before claiming implementation, debugging, QA, Android, design-to-code, release, or documentation work is complete.
Use this skill for Fini major release preparation, especially when the user asks for Play Store screenshots, Android marketplace screenshots, store listing assets, release screenshot packages, or "major release prep". This skill should trigger even if the user only mentions screenshots, because Fini's canonical store assets live in `docs/play-store/` and must be generated, checked, and reported consistently before a release.
Run and maintain Fini's GitOps release workflow. Use this whenever the user asks to make a release, bump a release version, push a release tag, inspect release readiness, fix release automation, or verify release CI. Releases are initiated by pushing a signed annotated v* tag; `make release` must run `make pre-release-check` before any version commit, branch push, or tag push.
Single source of truth for testing the Fini app: how to run unit, integration, and end-to-end tests, and how to write new ones. Use when the user asks to run tests, write a test, add coverage, debug a failing test, choose a test category, set up a multi-actor scenario, or understand fixtures and harnesses. For Android-only behavior, load `fini-android-testing` instead. For CLI semantics referenced from CLI e2e tests, also load `fini-cli`. For Makefile/CI/script changes around tests, also load `fini-scripting`.
Install or upgrade Fini CLI from the latest GitHub release assets.
| name | fini-frontend |
| description | Fini Vue frontend implementation conventions for views, templates, rendering decisions, and tests. |
Use this skill when creating or changing Vue frontend code under src/, especially view components, templates, conditional rendering, lists, and frontend tests.
renderFlagsAvoid embedding render decision logic directly in Vue templates with ad hoc expressions such as:
<section v-if="startupAutoUpdateSupported && !loading">
Instead, expose a computed renderFlags object from the component and bind template conditionals to named flags:
const renderFlags = computed(() => ({
automaticUpdatesSection: startupAutoUpdateSupported.value,
}));
<section v-if="renderFlags.automaticUpdatesSection">
Rules:
v-if, v-show, or conditional template section should use a named renderFlags key.renderFlags is not the source of all component state. It is only the template render contract: each key answers whether a specific UI section or element should render.renderFlags.renderFlags derive from those state sources instead of replacing them.automaticUpdatesSection, emptyState, deviceList, or restoreNotice over names like isDesktopAndEnabled.v-forFor non-trivial lists, avoid filtering, sorting, or mapping directly inside v-for.
Prefer a named computed list source:
const renderLists = computed(() => ({
visibleDevices: devices.value.filter((device) => device.visible),
}));
<DeviceRow
v-for="device in renderLists.visibleDevices"
:key="device.id"
:device="device"
/>
Rules:
v-for should normally iterate over a named source that is already filtered and ordered.When adding or changing render flags:
Before handing off frontend template changes, check:
renderFlags for product/platform rendering decisions.npm run build or the relevant frontend test target passes.