Skip to content

YakovchukIvan/kung-fu-sushi

Repository files navigation


🍣 Kung Fu Sushi — React Project

Навчальний проєкт інтернет-магазину суші, створений для практики сучасних технологій React. Проєкт зосереджений на роботі з компонентною архітектурою, клієнтським станом та взаємодією з API.

🚀 Запуск проєкту

# Встановлення залежностей
npm install

# Запуск у режимі розробки
npm start

Після цього відкрий у браузері адресу, яку покаже консоль (зазвичай http://localhost:3000).


🧠 Мета проєкту

  • Закріпити практичні навички роботи з React
  • Попрактикувати керування станом за допомогою Zustand
  • Реалізувати кошик, обране, фільтрацію та пошук товарів
  • Навчитись працювати з REST API через axios
  • Створити адаптивний інтерфейс для різних розмірів екранів
  • Наблизитись до підходів, які використовуються в production-проєктах

🛠️ Технології

  • ⚛️ React (Create React App)
  • 🐻 Zustand (керування глобальним станом)
  • 🧭 React Router DOM v6
  • 🎨 MUI (Material UI) + Emotion
  • 💅 SASS / SCSS
  • 🔔 notistack (toast-повідомлення)
  • 🌀 Swiper.js (слайдер)
  • 🧩 react-icons, react-content-loader
  • 🌐 axios (робота з API)
  • 📱 Адаптивний дизайн (mobile / tablet / desktop)
  • 📦 npm

📂 Структура проєкту (фронтенд)

src/
 ┣ API/            # Константи API / endpoints
 ┣ components/     # Універсальні UI-компоненти
 ┣ constants/      # Статичні масиви (навігація, категорії)
 ┣ hooks/          # Кастомні React-хуки
 ┣ pages/          # Сторінки (Home, Favorite, Orders)
 ┣ services/       # Axios та API-виклики (services layer)
 ┣ store/          # Zustand store та slice-и
 ┣ types/          # TypeScript типи та інтерфейси
 ┣ utils/          # Допоміжні функції
 ┣ App.tsx
 ┗ index.tsx

📚 Корисно знати

  • Керування станом реалізовано через Zustand (без Redux boilerplate).
  • Логіка роботи з API винесена у services layer.
  • Код організований за принципом separation of concerns.
  • Проєкт має адаптивний дизайн та коректно відображається на мобільних пристроях.
  • UI реалізовано з використанням Material UI та кастомних SCSS-стилів.

💼 Front-End Developer 📚 React Sushi Market (Pet Project)