Skip to content

Induktr/test-task-react-blog-kit-global

Repository files navigation

⚛️ React Blog System (Test Task for KIT GLOBAL)

1. Введение: Современный подход к контенту

Этот проект представляет собой SPA (Single Page Application) для управления блогом. Цель: Продемонстрировать навыки построения масштабируемой архитектуры с использованием современного стека React, разделения серверного и клиентского состояния, а также надежной валидации данных.

Статус: 🟢 Ready for Review (MVP)

2. Ключевые Особенности

  • Smart Data Fetching: Использование SWR для кэширования, ревалидации и оптимистичного UI.
  • State Management: Гибридный подход. SWR для серверного состояния, Zustand для клиентского (фильтры, UI).
  • Serverless Backend: Полная интеграция с Google Firebase (Firestore).
  • Type Safety: Строгая типизация на всех уровнях (TypeScript + Zod).
  • Forms: Управляемые формы с валидацией через React Hook Form.

3. Технологический Стек

Слой Технологии
Core React 18, Vite, TypeScript
Data Fetching SWR (Stale-While-Revalidate)
State Manager Zustand
Backend / DB Firebase Firestore
Validation Zod, React Hook Form
Styling Tailwind CSS, Lucide React (Icons)
Routing React Router v6

4. Как запустить проект

  1. Клонирование:

    git clone <your-repo-link>
    cd react-blog-kit
  2. Установка зависимостей:

    npm install
  3. Настройка окружения: Создайте файл .env в корне и добавьте ключи Firebase (см. .env.example).

  4. Запуск:

    npm run dev

5. Архитектурные Решения

Проект следует принципу FSD (Feature Sliced Design).

  • src/shared — Общие компоненты и утилиты.
  • src/features — Функциональные компоненты.
  • src/pages — Страницы.
  • src/entities — Сущности.
  • src/widget — Виджеты.

Releases

No releases published

Packages

 
 
 

Contributors

Languages