NEXTJS-ShadcnDarkMode
Welcome to the NEXTJS project! This comprehensive guide will walk you through every aspect of this project, including its structure, setup instructions, usage, API endpoints, backend, frontend, contributing guidelines, license information, and how to get in touch for support or inquiries.
Introduction
This project is a Next.js application that features a theme toggle button, allowing users to switch between light and dark modes. The button is implemented using Shadcn UI components. This project demonstrates the integration of Next.js, TypeScript, and the next-themes library to manage theme changes, alongside the use of Shadcn UI for button styling.
Features
- Light/Dark Mode Toggle: Users can switch between light and dark themes.
- Shadcn UI Integration: Custom styled button using Shadcn UI.
- Responsive Navigation Bar: Includes navigation links and a theme toggle button.
- Next.js Server-Side Rendering: Efficient server-side rendering and static site generation with Next.js.
- TypeScript: Ensures type safety throughout the application.
- Theme Management: Seamless theme management using next-themes.
Live Demo
You can try out the live demo of the app here.
Folder Structure
.
├── components
│ ├── ToggleMode.tsx
│ ├── Nav.tsx
│ └── ThemeProvider.tsx
├── app
│ ├── page.tsx
│ ├── layout.tsx
│ └── ...
├── public
│ ├── ...
├── styles
│ ├── ...
├── .gitignore
├── README.md
├── package.json
├── tsconfig.json
└── ...
Screenshots
GIF's
Technologies Used
- Next.js: A React framework for server-side rendering and static site generation.
- TypeScript: A typed superset of JavaScript that compiles to plain JavaScript.
- Shadcn UI: A component library for building user interfaces.
- next-themes: A theme management library for Next.js applications.
- React: A JavaScript library for building user interfaces.
- Lucide Icons: Icon library used for theme toggle icons (Sun and Moon).
Getting Started
This is a Next.js project bootstrapped with .
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.