A modern Next.js application built with cutting-edge web technologies for optimal performance and developer experience.
- Next.js 15 - Latest version with App Router and React Server Components
- React 19 - Latest React with improved concurrent features
- Tailwind CSS 4 - Modern utility-first CSS framework
- shadcn/ui - Beautiful, accessible UI components
- TypeScript - Full type safety and enhanced developer experience
- Turbopack - Ultra-fast bundler for development
- ESLint & Prettier - Code linting and formatting
- Next.js 15 - React framework for production
- React 19 - JavaScript library for user interfaces
- TypeScript - Typed JavaScript
- Tailwind CSS 4 - Utility-first CSS framework
- shadcn/ui - Re-usable components built with Radix UI
-
Clone the repository
git clone <repository-url> cd intania-shop-fe
-
Install dependencies
pnpm install
-
Start the development server
pnpm dev
-
Open your browser
Navigate to http://localhost:3000 to see the application.
intania-shop-fe/
βββ public/ # Static assets
βββ src/
β βββ app/ # App Router pages and layouts
β β βββ globals.css # Global styles
β β βββ layout.tsx # Root layout
β β βββ page.tsx # Home page
β βββ components/ # React components
β β βββ ui/ # shadcn/ui components
β βββ lib/ # Utility functions
βββ components.json # shadcn/ui configuration
βββ package.json # Dependencies and scripts
βββ tailwind.config.js # Tailwind CSS configuration
βββ tsconfig.json # TypeScript configuration
The project includes shadcn/ui components with the "New York" style:
- Button - Customizable button component with multiple variants
- Additional components can be added using the shadcn/ui CLI
# Add a new shadcn/ui component
npx shadcn@latest add <component-name>pnpm dev- Start development server with Turbopackpnpm build- Build the application for productionpnpm start- Start the production serverpnpm lint- Run ESLintpnpm format:check- Check code formattingpnpm format:write- Format code with Prettier
This project uses Tailwind CSS 4 with CSS variables for theming. The design system includes:
- Colors: Neutral base color with CSS variables for easy theming
- Typography: Geist Sans and Geist Mono fonts
- Dark Mode: Built-in dark mode support
- Components: Consistent styling with shadcn/ui components
This project follows the Conventional Commits specification for clear and consistent commit messages.
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
- feat: A new feature
- fix: A bug fix
- docs: Documentation only changes
- style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
- refactor: A code change that neither fixes a bug nor adds a feature
- perf: A code change that improves performance
- test: Adding missing tests or correcting existing tests
- build: Changes that affect the build system or external dependencies
- ci: Changes to our CI configuration files and scripts
- chore: Other changes that don't modify src or test files
- revert: Reverts a previous commit
feat: add user authentication system
fix: resolve navigation menu mobile responsiveness
docs: update API documentation
style: format code with prettier
refactor: simplify user service logic
perf: optimize image loading performance
test: add unit tests for button component
build: update dependencies to latest versions
ci: add automated testing workflow
chore: update gitignore fileThe scope provides additional contextual information:
feat(auth): add login functionality
fix(ui): resolve button hover state
docs(readme): update installation instructions-
Sync with main branch
git checkout main git pull origin main git checkout your-feature-branch git rebase main
-
Run quality checks
pnpm lint pnpm format:check pnpm build
-
Test your changes
- Ensure the application builds successfully
- Test functionality in both development and production builds
- Verify responsive design on different screen sizes
Follow the same convention as commit messages:
feat: add dark mode toggle
fix: resolve mobile navigation issue
docs: update component documentation
## Description
Brief description of the changes made.
## Screenshots (if applicable) - (optional)
Add screenshots to help explain your changes.- Self-review your changes before requesting review
- Address feedback promptly and professionally
- Keep PRs focused - one feature/fix per PR
- Update documentation as needed
- Squash commits if requested to maintain clean history
- PRs require at least one approval
- All CI checks must pass
- Conflicts must be resolved before merging
- Use "Squash and merge" for feature branches
- Use "Rebase and merge" for hotfixes
-
Create your feature branch
git checkout -b feat/amazing-feature
-
Make your changes
- Follow the coding standards
- Write meaningful commit messages
- Add tests if applicable
-
Commit your changes
git commit -m 'feat: add some amazing feature' -
Push to the branch
git push origin feat/amazing-feature
-
Open a Pull Request
- Use the PR template
- Provide clear description
- Link related issues
To learn more about the technologies used in this project:
- Next.js Documentation - Learn about Next.js features and API
- Tailwind CSS Documentation - Learn about Tailwind CSS
- shadcn/ui Documentation - Learn about the component library
- React Documentation - Learn about React
This project is licensed under the MIT License - see the LICENSE file for details.
Built with β€οΈ using Next.js and modern web technologies.