@@ -364,65 +364,6 @@ Install the **nuxt-cart** Agent Skill so your AI coding agent (Cursor, Claude Co
364364npx skills add rrd108/nuxt-cart
365365```
366366
367- ## Module Structure
368-
369- ```
370- nuxt-cart/
371- ├── src/
372- │ ├── module.ts # Module entry point
373- │ ├── types.ts # TypeScript types
374- │ ├── default-options.ts # Default configuration
375- │ └── runtime/
376- │ ├── plugin.ts # Hydration + auto-persist
377- │ ├── composables/
378- │ │ └── useCart.ts # Pinia store + composable with server sync
379- │ ├── components/ # Registered when @nuxt/ui is in modules
380- │ │ ├── NCartDrawer.vue
381- │ │ ├── NCartItem.vue
382- │ │ ├── NCartSummary.vue
383- │ │ └── NCartQuantity.vue
384- │ └── server/ # REST API + DB (when apiRoutes: true)
385- │ ├── api/cart/
386- │ │ ├── index.get.ts
387- │ │ ├── index.post.ts
388- │ │ ├── index.delete.ts
389- │ │ ├── items.post.ts
390- │ │ ├── items/[itemId].patch.ts
391- │ │ ├── items/[itemId].delete.ts
392- │ │ ├── coupon.post.ts
393- │ │ ├── coupon.delete.ts
394- │ │ └── checkout.post.ts
395- │ ├── composables/useCartDb.ts
396- │ ├── middleware/cart-token.ts
397- │ ├── plugins/auto-migrate.ts
398- │ └── utils/
399- │ ├── db.ts
400- │ ├── migrate.ts
401- │ ├── create-carts-table.ts
402- │ ├── cart.ts
403- │ └── build-time.ts
404- ├── playground/ # Development app
405- │ ├── nuxt.config.ts
406- │ ├── app.vue
407- │ ├── pages/
408- │ │ ├── index.vue
409- │ │ └── checkout.vue
410- │ └── server/
411- │ └── db/
412- │ └── migrations/
413- │ └── 001-create-cart.sql
414- ├── test/
415- │ ├── composables/
416- │ │ └── useCart.spec.ts # 49 unit tests
417- │ └── server/
418- │ └── api.spec.ts # Server API tests
419- ├── docs/ # VitePress documentation
420- ├── package.json
421- ├── build.config.ts
422- ├── tsconfig.json
423- └── vitest.config.ts
424- ```
425-
426367## Development
427368
428369``` bash
@@ -448,16 +389,6 @@ pnpm prepack
448389pnpm docs:dev
449390```
450391
451- ## Implementation Status
452-
453- | Phase | Feature | Status |
454- | -------| ---------| --------|
455- | ** 1 (MVP)** | ` useCart() ` + Pinia store + localStorage + types + plugin | ✅ Done |
456- | ** 2 (Coupons)** | ` applyCoupon ` , ` removeCoupon ` , ` discountedTotal ` , validation hooks | ✅ Done |
457- | ** 3 (Components)** | ` NCartDrawer ` , ` NCartItem ` , ` NCartSummary ` , ` NCartQuantity ` | ✅ Done |
458- | ** 4 (Server)** | REST API + DB + token middleware + checkout | ✅ Done |
459- | ** 5 (Polish)** | ` onCheckout ` /` checkout ` hooks, playground, CI, lint, publish | ✅ Done |
460-
461392## License
462393
463394MIT
0 commit comments