About this Next.js UI Project
This project uses Next.js for a product catalog, designed with the Entity Attribute Value (EAV) model—perfect for flexible, dynamic product attributes. The API is built using Spring Boot. Authentication and authorization are handled by my own custom monorepo package.
MantineJS
UI components are powered by MantineJS.
My Next Security package is inspired by NextAuth.js but supports database sessions for credential-based authentication instead of JWT.
Next-CSRF is my package for CSRF protection in Next.js. It handles CSRF token generation and validation and is available as an npm package.
Mantine Form Builder helps you build forms with MantineJS, Zod for validation, and React Hook Form for state management.
Next Middleware Chain lets you compose and chain multiple middleware functions for Next.js—perfect for complex authentication, authorization, and more.
I implemented and used a materialized‐path data hierarchy for product categories in the Spring Boot API to enable efficient tree operations and fast ancestor/descendant queries. The API also uses the Entity Attribute Value (EAV) model to serve flexible product data.