A modern, responsive e-commerce platform built with Next.js 14, TypeScript, and Tailwind CSS. This project showcases a premium clothing store with advanced features like PWA support, dark mode, and comprehensive state management.
- Modern E-commerce: Complete shopping experience with cart, checkout, and product management
- Progressive Web App (PWA): Installable app with offline capabilities
- Responsive Design: Mobile-first approach with Tailwind CSS
- Dark Mode: Theme switching with next-themes
- Type Safety: Full TypeScript implementation
- State Management: Zustand for global state management
- Form Handling: React Hook Form with Zod validation
- UI Components: Radix UI primitives with custom styling
- Code Quality: ESLint, Prettier, and Husky for code standards
- Commit Standards: Conventional commits with commitizen
- Next.js 14 - React framework with App Router
- React 18 - UI library with latest features
- TypeScript - Type-safe JavaScript
- Tailwind CSS - Utility-first CSS framework
- Radix UI - Accessible component primitives
- Material-UI - Additional UI components
- Lucide React - Beautiful icons
- Class Variance Authority - Component variant management
- Zustand - Lightweight state management
- React Hook Form - Form handling and validation
- Zod - Schema validation
- Recharts - Data visualization
- Next PWA - Progressive Web App features
- Next Themes - Dark/light mode switching
- NextJS Toploader - Loading indicators
- Sonner - Toast notifications
- Embla Carousel - Touch-friendly carousels
- React Multi Carousel - Additional carousel options
- ESLint - Code linting and quality
- Prettier - Code formatting
- Husky - Git hooks
- Commitizen - Conventional commits
- Commitlint - Commit message validation
clothing-ecommerce/
βββ app/ # Next.js App Router
β βββ api/ # API routes
β βββ cart/ # Shopping cart pages
β βββ checkout/ # Checkout flow
β βββ product/ # Product pages
β βββ shop/ # Shop/category pages
β βββ profile/ # User profile
β βββ signin/ # Authentication
β βββ join/ # Registration
βββ components/ # Reusable components
β βββ ui/ # Base UI components
β βββ cart/ # Cart-related components
β βββ shop/ # Shop components
β βββ profile/ # Profile components
βββ lib/ # Utility functions
βββ hooks/ # Custom React hooks
βββ contexts/ # React contexts
βββ providers/ # Context providers
βββ types/ # TypeScript type definitions
βββ public/ # Static assets
βββ assets/ # Project assets
- Node.js 18+
- npm or yarn
- Git
-
Clone the repository
git clone https://github.com/julianoalves/onicloth.git cd onicloth -
Install dependencies
npm install
-
Set up environment variables
cp .env.example .env.local
Edit
.env.localwith your configuration. -
Run the development server
npm run dev
-
Open your browser Navigate to http://localhost:3000
# Development
npm run dev # Start development server
npm run build # Build for production
npm run start # Start production server
# Code Quality
npm run lint # Run ESLint
npm run lint:fix # Fix ESLint issues automatically
# Git & Commits
npm run commit # Interactive commit with commitizen
npm run commitlint # Validate commit messagesThe project uses Tailwind CSS with a custom design system:
- Colors: Custom color palette with dark/light variants
- Typography: Consistent font hierarchy
- Components: Radix UI primitives styled with Tailwind
- Animations: Tailwind CSS animations and transitions
Toggle between light and dark themes using the theme provider. The theme preference is persisted in localStorage.
- Installable: Add to home screen on supported devices
- Offline Support: Basic offline functionality
- Service Worker: Automatic caching and updates
- Manifest: App metadata and icons
- ESLint: Code quality and consistency
- Prettier: Code formatting
- TypeScript: Type safety
- Husky: Pre-commit hooks
This project follows Conventional Commits:
feat: add new feature
fix: bug fix
docs: documentation update
style: formatting changes
refactor: code refactoring
perf: performance improvements
test: add or update tests
chore: maintenance tasks- pre-commit: Runs ESLint before commit
- commit-msg: Validates commit message format
- Connect your GitHub repository to Vercel
- Configure environment variables
- Deploy automatically on push to main branch
The project can be deployed to any platform that supports Next.js:
- Netlify
- Railway
- DigitalOcean App Platform
- AWS Amplify
- Lighthouse Score: Optimized for performance, accessibility, and SEO
- Image Optimization: Next.js automatic image optimization
- Code Splitting: Automatic route-based code splitting
- Caching: Optimized caching strategies
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Run tests and linting (
npm run lint) - Commit your changes (
npm run commit) - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Juliano Alves
- GitHub: @julianoalvescode
- Website: onicloth.store
- Next.js for the amazing framework
- Tailwind CSS for the utility-first CSS
- Radix UI for accessible components
- Vercel for hosting and deployment
β If you found this project helpful, please give it a star!