Next.js OmniUI StarterKit with Mantine, Aceternity, NextUI, MagicUI, Shadcn, PrimeReact, Shoelace, Framer Motion and GSAP
Welcome to the Next.js StarterKit, a full-fledged boilerplate integrating multiple UI libraries. This starter kit offers a flexible and efficient development environment for building stunning web applications using:
- Next.js
- Mantine
- Aceternity UI
- GSAP
- Framer Motion
- NextUI
- MagicUI
- Shadcn UI
- PrimeReact
- Shoelace
- Aelomotion
Deploy this StarterKit using Vercel by clicking the button below:
Clicking this button will prompt you to deploy the project directly to your own Vercel account. Vercel will handle the entire deployment process, and you will have your application live in no time.
- Multi-UI Integration: Choose from a variety of UI libraries and easily switch between them.
- Built with TypeScript: Enjoy type safety and autocompletion for an enhanced developer experience.
- Pre-configured Routing: Using the power of Next.js for server-side rendering (SSR), static generation (SSG), and API routes.
- Component Flexibility: Extensible and customizable components for building unique interfaces.
- Responsive Design: Optimized for mobile, tablet, and desktop devices.
- CSS-in-JS: Supports various styling options, including CSS Modules and Styled Components.
Make sure you have the following installed:
-
Clone the repository:
git@github.com:ByteBigBoss/Next.js-MANMSP-Starter-Kit.git nextjs-starterkit cd nextjs-starterkit -
Install dependencies:
pnpm install
-
Run the development server:
pnpm dev
Open http://localhost:3000 in your browser to see the application in action.
Mantine is a full-featured React component library offering a wide range of components and hooks for your Next.js applications. To use Mantine:
- Components are located in the
@mantine/coredirectory. - Visit Mantine documentation for more information.
Aceternity UI offers a unique set of sleek and modern components to craft beautiful interfaces. You'll find:
- Components in
components/ui. - Additional customization options are provided through the Aceternity theme.
NextUI delivers performance-optimized components for Next.js. Components are located in @nextui-org/react.
Visit the official NextUI documentation to learn more about its usage.
MagicUI enhances your web application with mystical components and powerful utilities. All MagicUI components can be found in the components/magicui folder.
Shadcn is a modern and customizable UI library with a focus on accessibility. You can find Shadcn components in components/ui.
PrimeReact brings a large collection of rich UI components, covering various needs like tables, form elements, and more. You'll find these components in primereact.
Check out PrimeReact documentation for full component details.
Shoelace provides a library of professionally designed, customizable UI components. To get started with Shoelace:
- Components are imported from the
@shoelace-style/shoelacepackage. - Refer to the Shoelace documentation for detailed instructions on usage.
GSAP (GreenSock Animation Platform) is a powerful JavaScript library for creating high-performance animations. You can create complex animations and transitions seamlessly within your Next.js application.
- To use GSAP, import components from the gsap package.
- Check out the GSAP documentation for detailed usage and examples.
Framer Motion is a popular animation library for React, providing a simple API for creating fluid animations and transitions. It's perfect for enhancing the user experience of your Next.js applications.
- Use components from the framer-motion package.
- Visit the Framer Motion documentation for more information on how to implement animations.
This StarterKit allows you to easily switch between different UI libraries. Here's how you can switch components:
- Navigate to the
app/page.tsxfile. - Uncomment or replace the import statements based on the UI library you want to use.
- Update the component in the JSX with the corresponding library component.
import { Button } from '@mantine/core' // Example for Mantine
// import { Button } from '@nextui-org/react' // Example for NextUIYou can customize any component by navigating to the respective library folder inside the components/ directory. For example, to customize a Button component for Shadcn UI:
components/ui/button.tsx.
├── components/
│ ├── anim/
│ ├── aelomotion/ # Aelomotion Animations
│ ├── shoelace/ # Shoelace Animations
│ ├── magicui/ # MagicUI components
│ ├── ui/ # Shadcn UI + Aceternity UI components
├── app/ # Next.js pages and routing
├── public/ # Static files
├── styles/ # Global and component-specific styles
└── package.json # Project dependencies and scriptsFeel free to submit a pull request if you'd like to contribute or suggest improvements. We welcome contributions of all kinds!
- Fork the repository.
- Create your feature branch (
git checkout -b feature/new-feature). - Commit your changes (
git commit -am 'Add new feature'). - Push to the branch (
git push origin feature/new-feature). - Open a pull request.
This project is licensed under the MIT License. See the LICENSE file for more details.
Happy Coding 🚀