An open API service indexing awesome lists of open source software.

https://github.com/father1993/audioshop

Online store of audio for cars, equipment and goods on NextJS client part
https://github.com/father1993/audioshop

app application back-end backend front-end frontend js nextjs react reactjs site typescript

Last synced: 2 months ago
JSON representation

Online store of audio for cars, equipment and goods on NextJS client part

Awesome Lists containing this project

README

          

# Magnitola.ru

Magnitola.ru - это интернет-магазин автомобильной аудиотехники, предлагающий широкий выбор автомагнитол, динамиков, сабвуферов и аксессуаров.

## Особенности

- Каталог продуктов с фильтрацией и сортировкой
- Сравнение товаров
- Корзина покупок
- Оформление заказа
- Многоязычность (русский и английский)
- Адаптивный дизайн

## Технологии

- Next.js 14
- TypeScript
- Effector для управления состоянием
- SASS для стилизации
- Framer Motion для анимаций
- React Hook Form для работы с формами
- MongoDB в качестве базы данных
- Axios для HTTP-запросов

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

1. Клонируйте репозиторий:

```bash
git clone https://github.com/your-username/magnitola.git
```

2. Установите зависимости:

```bash
cd magnitola
npm install
```

3. Создайте файл `.env` в корневой директории проекта и добавьте необходимые переменные окружения.

4. Запустите проект в режиме разработки:

```bash
npm run dev
```

5. Откройте [http://localhost:3000](http://localhost:3000) в вашем браузере.

## Структура проекта

- `app/`: Директория с роутами Next.js
- `components/`: React компоненты
- `context/`: Effector сторы и эффекты
- `hooks/`: Пользовательские React хуки
- `lib/`: Вспомогательные функции и утилиты
- `public/`: Статические файлы
- `styles/`: SASS стили

## Основные компоненты

- `CatalogFilters`: Фильтры для каталога товаров
- `ProductListItem`: Элемент списка товаров
- `CartPopup`: Всплывающее окно корзины
- `OrderInfoBlock`: Блок информации о заказе

## Лицензия

Этот проект лицензирован под [MIT License](LICENSE).

## Контакты

Если у вас есть вопросы или предложения, пожалуйста, свяжитесь с нами по адресу [enjoyhillol@gmail.com](mailto:enjoyhillol@gmail.com).