Skip to content

nifontovsv/shoppebook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📚 Shoppe Book

💿 Демо версия: https://nifontovsv.github.io/shoppebook

О проекте:

Shoppe Book - веб-приложение для поиска и покупки книг.

📌 Функционал

  • Реализован поиск книг по названию 🔍

    • Это позволяет пользователям вводить название книги в строку поиска и мгновенно находить соответствующие книги в базе данных.
  • Фильтрация книг по параметрам 🛠

    • Функциональность фильтрации позволяет пользователям ограничивать выборку книг по нескольким критериям: Категория — пользователи могут выбирать книги по жанру (например: история, путешествия, психология и т.д.).
      Цена — можно фильтровать книги по диапазону цен, чтобы показывать только те книги, которые соответствуют выбранному бюджету. Наличие на складе — этот фильтр помогает отображать только те книги, которые есть в наличии (и исключать те, которые временно отсутствуют).
  • Добавление, удаление товара в корзину и удаление из нее 🛒

    • Когда пользователь нажимает кнопку "Добавить в корзину", товар автоматически добавляется в корзину, и его количество (если уже есть в корзине) увеличивается на единицу.Если товар еще не был добавлен в корзину, то он появляется в корзине с начальной единицей товара. При удалении товара, сумма всех оставшихся товаров пересчитывается.
  • Пагинация списка книг 📄

    • Улучшает производительность и упрощает навигацию по большому количеству книг.
  • Детальная информация о книге 📖

    • Пользователь может кликнуть на название или обложку книги, чтобы перейти на страницу с детальной информацией. Это станет хорошей возможностью ознакомиться с книгой перед её покупкой.
  • Сохранение избранных книг ❤️

    • Пользователи могут сохранять книги в избранное для быстрого доступа в будущем. Это особенно полезно, если они не готовы купить книгу сразу, но хотят вернуться к ней позже.
  • Возможность оставлять рейтинг и отзывы под каждой книгой ⭐️

    • Пользователи могут оставить оценку и отзывы для книг, что помогает другим покупателям принимать решение о покупке.
  • "Цитата дня" 💭

    • Функционал "Цитата дня" представляет собой интерактивный элемент, который позволяет пользователям получать цитату каждый день по их запросу, нажимая на кнопку.

Используется Google Books API для получения данных о книгах.

📄 Документация: https://developers.google.com/books/docs/v1/using?hl=ru

export const fetchPopularBooks = createAsyncThunk(
	'books/fetchPopularBooks',
	async () => {
		const response = await fetch(
			`https://www.googleapis.com/books/v1/volumes?q=history+popular&maxResults=18&orderBy=relevance&key=${API_KEY}`
		);
		const data = await response.json();
		return data.items || [];
	}
);

🛠 Инструменты, которые использовались в разработке проекта

  • Redux Toolkit для управления состоянием
  • React Router для маршрутизации
  • CLSX для стилизации
  • createAsyncThunk для работы с API
  • использовались createSlice при создание reducers, вместо 'switch case'. Это упростило синтаксис и разработку в целом.
Category Technologies
Frontend React Redux
Styling SASS Static Badge Static Badge
Version Control Git GitHub
AI & Tools ChatGPT Figma
Misc Markdown
Editors VS Code

📂 Установка и запуск

  1. Клонируйте репозиторий
git clone https://github.com/nifontovsv/shoppebook.git
  1. Перейдите в папку с проектом
cd shoppebook
  1. Подгрузите зависимости
npm install
  1. Запустите проект
npm start

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published