Vue
La tienda de ingredientes del pueblo, hecha con Vue 3 + Pinia.
Tienda de ingredientes del juego: catálogo con buscador y filtros, carrito que se paga con el oro de la partida compartida y venta de pociones al 50 %.
- Vue 3.5
- Pinia
- JavaScript
- @nanostores/vue
Cómo está hecho
- <script setup>: Componentes concisos; las props se declaran con su tipo y si son obligatorias, y Vue avisa en desarrollo si llega algo inesperado.
- defineModel(): El buscador y los filtros exponen v-model directamente, sin boilerplate de prop + emit.
- Composables: useDebouncedRef y useItemFilter aíslan la lógica reutilizable fuera de los componentes.
- Pinia + nanostores: El carrito es estado local en un setup store de Pinia; el oro y el inventario llegan de la partida compartida con useStore de @nanostores/vue.
- SSR sin desajustes: La partida guardada se aplica tras onMounted: hasta entonces se pinta el estado inicial, igual que el HTML del servidor.
- <TransitionGroup>: Las animaciones de entrada y salida de la lista se declaran, no se programan a mano.
Seta roja
4 ●
Hierba lunar
3 ●
Cristal azur
6 ●
Pluma de grifo
5 ●
Flor de fuego
6 ●
Baba de slime
2 ●












