A dynamic, interactive website built with Next.js and Three.js, featuring smooth animations and content management through Prismic. This project showcases modern web development practices with a focus on performance and user experience.
- Next.js - React framework for production-grade applications
- Prismic CMS - Headless Content Management System for dynamic content
- Three.js - 3D graphics library for creating immersive web experiences
- GSAP - Professional-grade animation library
- TypeScript - Strongly typed programming language built on JavaScript
- Tailwind CSS - Utility-first CSS framework
- Zustand - Lightweight state management solution
Before you begin, ensure you have installed:
- Node.js (version 16 or higher)
- npm (comes with Node.js)
- Git
- Clone the repository:
git clone [your-repository-url]
cd [your-project-name]- Install dependencies:
npm install-
Set up Prismic:
- Create a Prismic account and project
- Configure your slice machine
- Set up your environment variables
-
Start the development environment:
npm run devThis command will concurrently run:
- Next.js development server on
http://localhost:3000 - Slice Machine for Prismic on
http://localhost:9999
npm run dev- Starts both Next.js and Slice Machine in development modenpm run build- Creates a production buildnpm run start- Runs the production buildnpm run lint- Runs ESLint for code qualitynpm run format- Formats code using Prettiernpm run slicemachine- Runs Prismic Slice Machine independently
├── components/ # React components
├── pages/ # Next.js pages
├── public/ # Static assets
├── slices/ # Prismic slice components
├── styles/ # Global styles and Tailwind configuration
├── types/ # TypeScript type definitions
└── utils/ # Utility functions and helpers
- Responsive design with Tailwind CSS
- 3D graphics and animations using Three.js and GSAP
- Dynamic content management through Prismic CMS
- TypeScript for enhanced development experience
- Modern development tooling with ESLint and Prettier
- Optimized performance with Next.js
This project is configured for deployment on Vercel. The live demo can be viewed at: https://fizz-demo.vercel.app/
To deploy your own instance:
- Create a Vercel account
- Connect your repository
- Configure your environment variables
- Deploy
While this project was created for learning purposes, contributions are welcome:
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Open a Pull Request
This project is licensed under the Apache 2.0 License - see the LICENSE file for details.
- Original tutorial creator (Please add the specific credit)
- Prismic for the starter template and CMS functionality
- Three.js community for 3D graphics resources
- GSAP for animation capabilities
For questions or issues, please open an issue in the repository.