Philippe dias
VoltarProjetos > The Blog

The Blog

The Blog é uma aplicação web de blog desenvolvida com Next.js (App Router), React 19 e Tailwind CSS v4, com persistência em PostgreSQL serverless via Neon e Drizzle ORM. A área pública exibe posts escritos em Markdown com renderização segura (react-markdown + rehype-sanitize), enquanto o painel administrativo oferece CRUD completo de posts com editor Markdown integrado (@uiw/react-md-editor) e upload de imagens de capa processadas com sharp e armazenadas no Cloudinary.

A autenticação do painel admin é stateless, baseada em tokens JWT (jose) gravados em cookies httpOnly e verificados pelo middleware do Next.js antes de qualquer renderização de rota protegida. A arquitetura segue um modelo monolítico em camadas — Server Actions, Repository Pattern e queries cacheadas com revalidação por tag — sem a necessidade de uma API REST separada.

Página inicial do blog com listagem de artigos sobre Server Actions, SSR vs CSR e deploy em Neon
Artigo sobre deploy gratuito do blog com Next.js, Neon, Cloudinary e Vercel
Formulário de login do painel administrativo com campos de usuário e senha
Mensagem de erro de validação no formulário de login indicando usuário ou senha inválidos
Painel administrativo mostrando lista de posts publicados e não publicados com opções de edição
Página do editor de posts do painel administrativo com formulário para criar novo post
Modal de confirmação para deletar um post do blog
Painel administrativo com navegação superior mostrando opções Home, Posts, Criar Post e Sair

Tecnologias Usadas

Next.js React TypeScript Tailwind CSS PostgreSQL Drizzle ORM Neon Cloudinary sharp JWT (jose) bcryptjs Zod react-markdown date-fns slugify uuid ESLint dotenv