Introdução 🐻

Por que você estudou zustand ? Porque é uma biblioteca que fornece o gerenciamento de estado global, eu também em breve vou estudar outras bibliotecas que gerencia o estado globalmente 🐌

O que praticou 🐻‍❄️

  • criação de loja
  • Atualização da loja
  • Zustand com Components server
    • server actions
  • Pattern
    • Slices pattern
  • Praticas recomendas
    • Loja única
    • Utilizar a função set ou setState para atualizar a loja
  • Objeto aninhados
    • Com immer
  • Criação de methods para atualizar a loja
  • Seletores de geração automática
    • CreateSelectors
  • Redux-like pattern
  • ContextApi com zustand

Projeto com Zustand 🐻

Descrição 🕊️

projeto que mostra os e-mails e você pode pesquisar pelo email, enviar para lixeira, arquivar.

Projeto 🐻

eu copiei o exemplo do component e-mails do shadcn-ui que gerencia o estado global com jotai e refatorei para zustand e criei novas funções que são

  • Deletar e-mail
  • Arquivar e-mail
  • Pesquisar pelo e-mail ou nome

para construir essas novas funções, utilizei hooks personalizados, reutlização, debounce, manipulação de url, hooks do nextjs, zod, react-hook-form e mais...

Contruibuição 🐾

Shadcn-ui components e outras tecnologias incríveis que usei para fazer esse projeto.

This is a Next.js project bootstrapped with create-next-app.

Getting Started

First, run the development server:

npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.

This project uses next/font to automatically optimize and load Inter, a custom Google Font.

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Check out our Next.js deployment documentation for more details.