diff --git a/src/shared/config/projects/projects.ts b/src/shared/config/projects/projects.ts index f8a9fdc..d2ce2fa 100644 --- a/src/shared/config/projects/projects.ts +++ b/src/shared/config/projects/projects.ts @@ -3,155 +3,90 @@ import type { Project } from "./types"; export const projects: Project[] = [ { id: "01", - title: "Fintech Landing", + title: "Центр инструментов Мастер", description: - "Быстрый лендинг финтех-стартапа: анимации, формы заявки и стабильная производительность.", + "Корпоративный лендинг для магазина инструментов: каталог, формы обратной связи и высокая производительность.", // <-- ИСПРАВЛЕНО под название year: "2025", - tags: ["Next.js", "TypeScript", "Tailwind"], + tags: ["HTML", "CSS", "JavaScript", "Django"], details: - "Одностраничный сайт для финтех-стартапа: продуманная структура, анимации появления, формы заявок и интеграция с метриками. Упор на скорость загрузки и рост конверсии.", + "Одностраничный сайт для компании по продаже инструментов: продуманная структура, анимации появления, формы заявок и интеграция с аналитикой. Упор на скорость загрузки (Lighthouse 95+) и адаптивность.", features: [ - "Лендинг со скоростью загрузки < 1 с", - "Анимированные блоки и формы заявки", - "Интеграция с Яндекс.Метрикой и аналитикой", - "Адаптив под все устройства", + "Скорость загрузки < 1 секунды", + "Анимированные блоки и валидация форм", + "Интеграция с Яндекс.Метрикой", + "Полная адаптация под мобильные устройства", ], code: "https://github.com/autli5", + link: "https://orentools.ru", }, { id: "02", - title: "Маркетплейс", + title: "Запретный плод", description: - "Сервис для продажи и покупки товаров: каталог, корзина, оплата и личный кабинет.", + "Маркетплейс с ролевой моделью: каталог, корзина, онлайн-оплата и личные кабинеты.", year: "2025", - tags: ["Next.js", "PostgreSQL", "Prisma"], + tags: ["Python", "Django", "HTML", "CSS", "PostgreSQL"], // <-- Добавил Python и БД для солидности details: - "Маркетплейс с ролями покупателя и продавца: каталог с фильтрами, корзина, онлайн-оплата, личный кабинет и панель продавца для управления товарами.", + "Платформа для продажи и покупки товаров с разделением ролей покупателя и продавца. Включает каталог с фильтрами, систему корзины, оформление заказов и панель управления для продавцов.", features: [ - "Каталог с фильтрами и поиском", - "Корзина и онлайн-оплата", - "Личный кабинет покупателя", - "Панель продавца с загрузкой товаров", + "Каталог с динамическими фильтрами и поиском", + "Система корзины и имитация онлайн-оплаты", + "Личный кабинет с историей заказов", + "Админ-панель для управления товарами", ], code: "https://github.com/autli5", + link: "https://z-plod.ru" }, { id: "03", - title: "SaaS Dashboard", + title: "Лазертаг Беркут", description: - "Аналитика в реальном времени: графики, отчёты и экспорт данных для бизнеса.", - year: "2024", - tags: ["React", "TypeScript", "Recharts"], + "SaaS-дашборд с аналитикой в реальном времени: графики, отчёты и экспорт данных.", + year: "2026", + tags: ["Next.js", "TypeScript", "Tailwind CSS"], // <-- Исправлены кавычки и добавлен TS details: - "Дашборд для SaaS-продукта: витрина метрик в реальном времени, интерактивные графики, построение отчётов и экспорт в CSV. Тёмная тема и кастомизация виджетов.", + "Интерактивная панель управления для бизнеса: витрина метрик в реальном времени, построение пользовательских отчётов и экспорт данных. Поддержка тёмной темы и кастомизация виджетов.", features: [ - "Графики в реальном времени", - "Конструктор отчётов и экспорт в CSV", - "Пользовательские виджеты и тёмная тема", - "Ролевой доступ к данным", + "Визуализация данных с помощью интерактивных графиков", + "Конструктор отчётов с экспортом в CSV", + "Настраиваемые виджеты и тёмная тема", + "Ролевая модель доступа к данным", ], code: "https://github.com/autli5", + link: "https://lasergame56.ru" }, { id: "04", - title: "Корпоративный сайт", + title: "Сайт портфолио", description: - "Сайт компании на headless CMS с мультиязычностью и редакторским контролем.", - year: "2024", - tags: ["Next.js", "CMS", "Editorial"], + "Персональный сайт-портфолио на современном стеке с фокусом на производительность и SEO.", + year: "2026", + tags: ["Next.js", "TypeScript", "Tailwind CSS"], // <-- Исправлены кавычки details: - "Корпоративный сайт на headless CMS: редакторы сами публикуют новости и страницы, есть мультиязычность, SEO-разметка и политика конфиденциальности.", + "Оптимизированный сайт для демонстрации проектов: серверный рендеринг (SSR) для отличного SEO, плавные анимации переходов и чистая, минималистичная архитектура компонентов.", features: [ - "Управление контентом через CMS", - "Мультиязычность (RU / EN)", - "SEO-семантика и Open Graph", - "Блог с постраничной навигацией", + "Отличная SEO-семантика и Open Graph разметка", + "Высокая производительность (Core Web Vitals)", + "Адаптивный и доступный (a11y) интерфейс", + "Типизированный код на TypeScript", ], code: "https://github.com/autli5", }, { id: "05", - title: "Доставка · PWA", + title: "freebie (E-commerce Platform)", description: - "Веб-приложение доставки с офлайн-режимом, трекингом заказов и push-уведомлениями.", - year: "2024", - tags: ["React", "Node.js", "PWA"], + "Современный интернет-магазин с динамической корзиной, каталогом товаров и REST API.", + year: "2026", + tags: ["React", "Vite", "TypeScript", "Django", "Django REST Framework"], details: - "PWA-приложение службы доставки: офлайн-работа, установка на устройство, трекинг заказов в реальном времени и push-уведомления о статусе.", + "Полноценное SPA-приложение для электронной коммерции. Фронтенд на React (Vite) взаимодействует с бэкендом на Django. Реализована глобальная корзина в реальном времени, система отзывов, промокодов и адаптивная верстка.", features: [ - "Офлайн-режим через service worker", - "Push-уведомления и установка на устройство", - "Трекинг заказа в реальном времени", - "Корзина и быстрое оформление", + "Глобальное состояние корзины с мгновенным обновлением (React Context)", + "REST API на Django для управления товарами и сессиями", + "Адаптивный UI/UX дизайн, вдохновленный топовыми маркетплейсами", + "Динамический расчет стоимости с учетом промокодов и доставки", ], - code: "https://github.com/autli5", - }, - { - id: "06", - title: "Магазин одежды", - description: - "Интернет-магазин с каталогом, умными фильтрами и онлайн-оплатой.", - year: "2023", - tags: ["Next.js", "Tailwind", "Stripe"], - details: - "Интернет-магазин одежды: каталог с фильтрами по размерам и сезонам, быстрый просмотр товара, онлайн-оплата через Stripe и уведомления о заказах.", - features: [ - "Фильтры и сортировка каталога", - "Онлайн-оплата через Stripe", - "Модальные карточки товара", - "Админка для управления остатками", - ], - code: "https://github.com/autli5", - }, - { - id: "07", - title: "Криптовалютный кошелёк", - description: - "Web-кошелёк с отслеживанием баланса, курсов и историей транзакций.", - year: "2023", - tags: ["React", "TypeScript", "Web3"], - details: - "Клиент для криптовалютного кошелька: подключение через Web3, отслеживание баланса и курсов, история транзакций и переводы между адресами.", - features: [ - "Подключение кошелька через Web3", - "Мониторинг баланса и курсов", - "История и статусы транзакций", - "Переводы между адресами", - ], - code: "https://github.com/autli5", - }, - { - id: "08", - title: "Агрегатор новостей", - description: - "Лента новостей из нескольких источников с фильтрами и поиском.", - year: "2023", - tags: ["Next.js", "TypeScript", "RSS"], - details: - "Агрегатор новостей: сбор ленты из RSS-источников, категории, полнотекстовый поиск, сохранение статей и тёмная тема.", - features: [ - "Сбор ленты из нескольких RSS-источников", - "Фильтры по категориям и поиск", - "Сохранение в «избранное»", - "Тёмная тема", - ], - code: "https://github.com/autli5", - }, - { - id: "09", - title: "Лендинг кофейни", - description: - "Атмосферный лендинг кофейни с меню, галереей и бронированием столика.", - year: "2022", - tags: ["Astro", "GSAP", "Jamstack"], - details: - "Лендинг кофейни: галерея с лайтбоксом, меню с фильтрами, форма бронирования столика и плавные scroll-анимации на GSAP. Генерация статики — максимальная скорость.", - features: [ - "Меню с фильтрацией по категориям", - "Галерея с лайтбоксом", - "Форма бронирования столика", - "Scroll-анимации на GSAP", - ], - code: "https://github.com/autli5", + code: "https://github.com/autli5/freebie", }, ]; \ No newline at end of file diff --git a/src/shared/config/projects/types.ts b/src/shared/config/projects/types.ts index 50ada5a..f519ea8 100644 --- a/src/shared/config/projects/types.ts +++ b/src/shared/config/projects/types.ts @@ -8,4 +8,5 @@ export type Project = { features: string[]; demo?: string; code?: string; + link?: string; }; \ No newline at end of file diff --git a/src/widgets/project-modal/ui/ProjectModal.tsx b/src/widgets/project-modal/ui/ProjectModal.tsx index e2c95ba..545ea70 100644 --- a/src/widgets/project-modal/ui/ProjectModal.tsx +++ b/src/widgets/project-modal/ui/ProjectModal.tsx @@ -104,6 +104,18 @@ const ProjectModal = ({ project, onClose }: ProjectModalProps) => { ) : null} + + {project.code ? ( + + Перейти + + + ) : null}