Сайт мастера-столяра, витрина и личный кабинет заказчика с админкой.
Для посетителя
- Каталог товаров (Products): список с фильтрами, пагинация, карточки, детальная страница товара с галереей фото, ценами и рекомендациями похожих товаров.
- Портфолио работ (Works): список готовых работ и детальная страница с галереей изображений.
- Корзина и заказы (Cart): оформление заказа, статусы заказа, учёт сроков изготовления (lead time).
- Избранное: у каждого товара кнопка «в избранное», список избранного, привязанный к аккаунту (одним запросом на страницу через фильтр).
- Отзывы (Reviews): клиент оставляет отзыв на товар, отзыв публикуется после модерации администратором.
Аккаунт
- Регистрация/вход, подтверждение email и сброс пароля по почте, аватары, смена пароля, блокировка после нескольких неудачных попыток.
- Чат с мастером
- Личные переписки клиента и администратора в реальном времени (Chats, SignalR), список чатов, детальная страница диалога, отправка вложений (документы, архивы), сообщения хранятся в зашифрованном виде.
Админка (Admin)
- Управление товарами и работами (создание/редактирование форм, изображения, порядок работ 1..N).
- Заказы: просмотр и смена статусов.
- Отзывы: модерация (одобрить/отклонить/править).
- Пользователи: список и управление.
- Заметки (Notes).
- Настройки сайта: переключатели (например, обязательность подтверждения email), размеры списков по страницам, разрешённые типы файлов чата.
* Основные технологии: ASP.NET Core MVC (.NET 10), EF Core + PostgreSQL, ASP.NET Core Identity, SignalR (чат), MailKit (почта), SixLabors.ImageSharp (WebP и варианты размеров), Razor + vanilla JS, Bootstrap 5.1 как сетка/утилиты, jQuery + jquery-validation.