A modern e-commerce phone catalog application built with React and TypeScript. Browse through a curated collection of phones, tablets, and accessories with advanced filtering, sorting, and shopping cart functionality.
- React 18
- TypeScript
- React Router - Client-side routing
- SCSS/CSS Modules - Styling
- Vite - Build tool and dev server
- ESLint - Code linting
- Prettier - Code formatting
- Stylelint - Style linting
Follow these instructions to set up and run the project locally:
- Clone the repository:
git clone https://github.com/Korochenko/phone-catalog.git
cd phone-catalog- Install dependencies:
npm install
# or
yarn install- Run the project locally:
npm start
# or
yarn startThe application will be available at http://localhost:5173 (or the port specified by Vite).
- Build for production:
npm run build
# or
yarn build- Product Catalog - Browse phones, tablets, and accessories with detailed information
- Advanced Filtering - Filter products by category, brand, and specifications
- Sorting Options - Sort by price, name, or newest items
- Shopping Cart - Add products to cart and manage quantities
- Favorites - Save products to your favorites list
- Product Search - Quick search functionality to find products
- Responsive Design - Optimized for desktop, tablet, and mobile devices
- Smooth Navigation - Fast client-side routing with React Router
- TypeScript - Type-safe code for better development experience
phone-catalog/
├── public/
│ └── assets/
├── src/
│ ├── components/
│ ├── pages/
│ ├── styles/
│ ├── types/
│ ├── utils/
│ ├── App.tsx
│ └── main.tsx
├── .eslintrc.cjs
├── .prettierrc
├── .stylelintrc.js
├── package.json
├── tsconfig.json
└── vite.config.ts
npm start- Run development servernpm run build- Build for productionnpm run preview- Preview production buildnpm run lint- Run ESLintnpm run format- Format code with Prettiernpm run deploy- Deploy to GitHub Pages