Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
200 Vue Frontend
asciisd/nova-chat
cursor
vue
composition-api
nova-request
tailwind
heroicons
polling
dist-build

Frontend rules for the package's Vue UI. Auto-attached when editing files under resources/js/ or vite.config.js.

Install
php artisan boost:add-skill asciisd/nova-chat

Save this content to: .cursor/rules/200-vue-frontend.mdc

Read the full conventions in `.ai/guidelines/frontend-workflow.md` and
the playbook in `.ai/skills/update-vue-ui/SKILL.md` before changing
behavior.

## Hard rules

- Composition API + `<script setup>` only.
- HTTP via `Nova.request()` — never `import axios`.
- Tailwind utility classes only; no separate Tailwind config.
- Heroicons via inline `<svg>`.
- No new npm runtime dependencies without discussion (every kB ships
  in every consuming app).
- `dist/` is committed on purpose — run `npm run build` and stage
  `dist/` in the same commit as the source change.
- Polling must pause on `document.visibilityState === 'hidden'` and
  the thread must keep using `?after=<lastId>` for delta-only fetches.

## Component map

| Concern | File |
|---|---|
| Outer shell | `resources/js/pages/Tool.vue` |
| Tab switcher | `resources/js/components/TopicTabs.vue` |
| Sidebar list | `resources/js/components/ConversationList.vue` |
| Thread + composer | `resources/js/components/ConversationPane.vue` |
| Message bubble | `resources/js/components/MessageBubble.vue` |
| Composer input | `resources/js/components/MessageComposer.vue` |
| Time helpers | `resources/js/lib/time.js` |

Read the full conventions in .ai/guidelines/frontend-workflow.md and the playbook in .ai/skills/update-vue-ui/SKILL.md before changing behavior.

Hard rules

  • Composition API + <script setup> only.
  • HTTP via Nova.request() — never import axios.
  • Tailwind utility classes only; no separate Tailwind config.
  • Heroicons via inline <svg>.
  • No new npm runtime dependencies without discussion (every kB ships in every consuming app).
  • dist/ is committed on purpose — run npm run build and stage dist/ in the same commit as the source change.
  • Polling must pause on document.visibilityState === 'hidden' and the thread must keep using ?after=<lastId> for delta-only fetches.

Component map

Concern File
Outer shell resources/js/pages/Tool.vue
Tab switcher resources/js/components/TopicTabs.vue
Sidebar list resources/js/components/ConversationList.vue
Thread + composer resources/js/components/ConversationPane.vue
Message bubble resources/js/components/MessageBubble.vue
Composer input resources/js/components/MessageComposer.vue
Time helpers resources/js/lib/time.js
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle