{"id":22901438,"url":"https://github.com/vlaek/musicstore-react","last_synced_at":"2026-02-04T14:03:47.765Z","repository":{"id":184289470,"uuid":"671602632","full_name":"Vlaek/MusicStore-React","owner":"Vlaek","description":"React, TypeScript, Redux, Formik, Yup","archived":false,"fork":false,"pushed_at":"2024-05-09T03:35:10.000Z","size":20450,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-28T02:24:14.113Z","etag":null,"topics":["css-modules","formik-yup","react","redux","scss","typescript"],"latest_commit_sha":null,"homepage":"https://vlaek.github.io/MusicStore-React/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Vlaek.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-07-27T17:40:23.000Z","updated_at":"2024-06-16T09:08:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"817d03cf-4a54-4e39-9049-8a2534274c21","html_url":"https://github.com/Vlaek/MusicStore-React","commit_stats":null,"previous_names":["vlaek/musicstore-react"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Vlaek/MusicStore-React","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vlaek%2FMusicStore-React","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vlaek%2FMusicStore-React/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vlaek%2FMusicStore-React/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vlaek%2FMusicStore-React/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Vlaek","download_url":"https://codeload.github.com/Vlaek/MusicStore-React/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vlaek%2FMusicStore-React/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263145841,"owners_count":23420678,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["css-modules","formik-yup","react","redux","scss","typescript"],"created_at":"2024-12-14T01:33:25.190Z","updated_at":"2026-02-04T14:03:42.743Z","avatar_url":"https://github.com/Vlaek.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Описание\n\n[**MusicStore**](https://vlaek.github.io/MusicStore-React/) - это веб-приложение, разработанное с использованием React, предоставляющее возможность пользователям просматривать и покупать музыкальные альбомы. Проект создан в качестве учебной и практической задачи, чтобы продемонстрировать навыки разработки фронтенда с использованием React и связанных технологий.\n\n# Основные функции и компоненты проекта\n\n## Структура данных альбомов\n\n- Альбом содержит следующие поля:\n  - id;\n  - название;\n  - группу;\n  - дату выхода;\n  - описание;\n  - обложку;\n  - жанр;\n  - список треков.\n- Трек содержит следующие поля:\n  - id;\n  - название;\n  - длительность.\n\n## Модальное окно просмотра альбома\n\n- При клике на карточку альбома, открывается модальное окно с подробной информацией.\n- Содержит обложку, название, группу, дату выхода, описание альбома и список треков с их продолжительностью.\n- Имеет плавную анимацию открытия и закрытия.\n- Авторизованные пользователи могут:\n  - отложить альбом;\n  - положить альбом в корзину.\n\n## Модальное окно корзины\n\n- Содержит список выбранных пользователем товаров для покупки.\n- Пользователи могут просматривать, добавлять и удалять товары из корзины.\n- Отображается общая стоимость выбранных товаров.\n- Имеет плавную анимацию открытия и закрытия.\n- Для совершения покупки требуется авторизоваться.\n\n## Фильтрация товаров\n\n- Фильтрация альбомов по жанру музыки.\n- Сортировка альбомов по дате их выпуска (от самых новых к старым или наоборот).\n- Поиск альбомов по названию альбома или группе.\n\n## Страница \"О нас\"\n\n- Представляет краткую информацию о компании, ее сотрудниках и успехах.\n\n## Страница \"Контакты\"\n\n- Включает в себя данные для связи с компанией, такие как адрес, номер телефона, адрес электронной почты и ссылки на социальные сети.\n- Для отображения местоположения компании используется Яндекс Карты.\n- На странице имеется форма для обратной связи, которая позволяет пользователям отправлять обращения, вопросы или сообщения.\n- Содержит поля для ввода имени, адреса электронной почты, текста сообщения.\n\n## Страница \"Кабинет\"\n\n- Содержит обязательную авторизацию пользователя.\n- Авторизованные пользователи могут просматривать свой профиль. Профиль содержит информацию о пользователе, такую как имя, адрес электронной почты, номер телефона и другие данные.\n- Авторизованные пользователи могут также редактировать свой профиль.\n- Вкладки \"Мои отложенные\" и \"Мои заказы\" становятся доступными после авторизации.\n- Авторизованные пользователи могут добавлять товары в список \"Отложенные товары\", чтобы сохранить их для будущей покупки, а также просматривать историю своих покупок, включая детали каждой покупки, дату и сумму.\n\n# Технологии:\n\n- HTML, CSS, SASS, JavaScript, React, TypeScript\n- React Router\n- React Icons\n- React Yandex Maps\n- React Bootstrap (Carousel)\n- React Transition\n- React Helmet\n- React Toastify\n- React CountUp\n- Axios\n- Formik\n- Yup\n- Redux\n- classnames\n- gh-pages\n\n# Иллюстрации\n\n## Главная страница\n\n![Главная страница](https://media.giphy.com/media/w2gfxl8v0eHvPQdLnJ/giphy.gif 'Главная страница')\n\n## Сортировка и фильтрация\n\n![Сортировка и фильтрация](https://media.giphy.com/media/NWhIZv4AoM0Yc2vF8C/giphy.gif 'Сортировка и фильтрация')\n\n## Модальное окно просмотра товара\n\n![Модальное окно](https://media.giphy.com/media/owKgnDfAPfBTY9JT9u/giphy.gif 'Модальное окно')\n\n## Модальное окно покупки товара\n\n![Модальное окно](https://media.giphy.com/media/86eXlfopmCnwmT5nPG/giphy.gif 'Модальное окно')\n\n## Страница \"О нас\"\n\n![О нас](https://media.giphy.com/media/nuArXT2eLdUoqlE69D/giphy.gif 'О нас')\n\n## Страница \"Контакты\"\n\n![Контакты](https://media.giphy.com/media/2hIS8g1G9wrjYOy59J/giphy.gif 'Контакты')\n\n## Авторизация\n\n![Кабинет. Авторизация](https://media.giphy.com/media/yx3knnGg22b3rL3F0N/giphy.gif 'Кабинет. Авторизация')\n\n## Редактирование профиля\n\n![Кабинет. Редактирование профиля](https://media.giphy.com/media/txPVnsOeSCyO77I1wo/giphy.gif 'Кабинет. Редактирование профиля')\n\n## Регистрация\n\n![Кабинет. Регистрация](https://media.giphy.com/media/Oad1IBfYZrObtXspOj/giphy.gif 'Кабинет. Регистрация')\n\n## Отложенные товары и история заказов\n\n![Отложенные товары и история заказов](https://media.giphy.com/media/Nv6SLAqH2vA95kSIIZ/giphy.gif 'Кабинет. Отложенные товары и история заказов')\n\nЗамечание: Проект MusicStore React создан исключительно в качестве учебного пет-проекта и не имеет целей стать коммерческим или использоваться для продажи реальных музыкальных товаров.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvlaek%2Fmusicstore-react","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvlaek%2Fmusicstore-react","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvlaek%2Fmusicstore-react/lists"}