Skip to content

burlak87/TaskManager-Chat

Repository files navigation

Taskmanager+chat

Расприделение веток, участников и их задач.

  • В ветке feature/auth (Front(Александр) + Back(Федор))
  • В ветке feature/kanban (Front(Андрей) + Back(Даниил))
  • В ветке feature/chat (Front(Антон) + Back(Илья))
  • В ветке feature/notifications (Front(Матвей) + Back(Анатолий))
  • В ветке feature/ui-polish (Алина)

Front(Саня):

  • Настройка Nuxt.js проекта, структура каталогов.
  • Маршрутизация, то есть страницы входа, досок, чата.
  • Глобальное состояние для пользователя, доски и наверное уведомления, через встроенный vuex или подтянуть зависимость pinia
  • Интеграция API, то есть axios с интерцепторами и обработкой ошибок.
  • Базовый layout - шапка, навигационное меню и футер.

Front(Андрей):

  • Компонент доски с колонками и каточками.
  • Drag-n-drop вроде как для него есть библа или пакет у vue (Не помню но в названии точно есть dragg)
  • Создание/Редактирование задач через модалки и формы.
  • Фильтрация, поиск по задачам, если захотим реализовать.
  • Визуализация статусов, тегов, исполнителей.

Front(Антон):

  • Компонент чата с окном сообщений, полем ввода, списком участников.
  • WebSocket-подключение .
  • Обработка incoming/outgoing сообщений.
  • Автопрокрутка, отметки времени, упоминания думаю как в телеграме (@user).
  • Уведомления о новых сообщениях, честно хз как звуковое реализовать, так что пока только плавный тостер или как там называлась эта хрень.

Front(Матвей):

  • Дизайн в фигме(день-два).
  • Компонент уведомлений с dropdown, списком.
  • Отображение уведомлений о задачах, упоминаниях.
  • Тостер-уведомления в плавно появляющиеся в реальном времени.
  • Библиотека компонентов Reka UI. Не пользовался и не слышал возможно придется даже адаптировать под нас.
  • Иконки через библиотеку font-awesome или lucide icons.

Front(Алина):

  • Дизайн в фигме(день-два).
  • Адаптивный дизайн.
  • Доступность к примеру клавиатурная навигация и контраст.
  • визуальная полировка цветов, шрифтов и анимации.
  • Скелетоны, состояния загрузки и эти спиннеры загрузки (как у Никитина при загрузки страницы кольцо которое крутиться)
  • Тестирования UI в разных браузерах, чтобы не плавал.

Back(Федор):

  • Настройка проекта и структуры на Golang, Gin.
  • rest для регистрации, входа и генерации jwt-аутентификации.
  • middleware для cors, валидации и логирования.
  • Конфигурация в .env и secrets.

Back(Даня):

  • Модели БД. PostgreSQL: пользователи, доски, задачи, статусы.
  • Миграции, то есть схемы и связи.
  • CRUD для досок и задач.
  • Валидация, обработка ошибок БД.
  • Интеграция с SQLC, если нужно.
  • Деплой, Docker, CI/CD.

Back(Илья):

  • WebSocket-сервер через socket.io или gorilla/websocket
  • Обработка сообщений чата, broadcast.
  • Сохранение сообщений в БД MongoDB.
  • Управление комнатами (чат на доску).
  • Heartbeat, переподключение, обработка разрывов.
  • Деплой, Docker, CI/CD.

Back(Толя):

  • Модель уведомлений БД.
  • Генерация уведомлений с назначением задачи, изменением статуса и упоминанием.
  • API для получения/пометки уведомлений.
  • Фоновая логика, то есть дедлайны и напоминания

Git

# Клонировать репозиторий
git clone https://github.com/your-team/taskmanager-chat.git
cd taskmanager-chat

# Установить pre-commit хуки (Пока не нужно)
pre-commit install

# Получить последние изменения
git pull origin main

# Создать новую ветку для задачи
git checkout -b feature/ваша-фича

# После завершения работы
git add .
git commit -m "feat: описание изменения"
git push origin feature/ваша-фича

# Создать Pull Request через GitHub UI

Docker

# Запустить весь проект (фронтенд + бэкенд + БД)
docker-compose up --build

# Остановить все контейнеры
docker-compose down

# Перезапустить конкретный сервис
docker-compose restart backend

# Просмотреть логи
docker-compose logs -f backend

# Очистить всё (контейнеры, образы, тома)
docker system prune -a --volumes

# Проверить состояние контейнеров
docker-compose ps

Ежедневно для все работают с Github так:

# 1. Получить последние изменения с сервера
git fetch origin
# 2. Перейти в СВОЮ feature-ветку
git checkout feature/auth
# 3. Обновить свою ветку с origin (если кто-то пушил)
git pull origin feature/auth
# 4. Обновить зависимости (если нужно)
cd frontend && npm install
cd ../backend && go mod tidy

# В течение дня:
# Работа в своей ветке
# 1. Делать небольшие коммиты с понятными сообщениями
git add .
git commit -m "feat(auth): add login form validation"
  # Формат: type(scope): description
  # type: feat, fix, docs, style, refactor, test, chore
  # scope: auth, kanban, chat, ui, api, db
# 2. Регулярно пушить (каждые 2-3 часа или после значительных изменений)
git push origin feature/auth
# 3. Если нужно обновить с main (делать 1 раз в день, если main изменился)
git fetch origin
git merge origin/main
# ИЛИ если хотите чистую историю:
git rebase origin/main
# После rebase нужно форсированно пушить:
git push origin feature/auth --force-with-lease

# Вечером:
# 1. Финальный пуш
git push origin feature/auth
# 2. Проверить CI/CD pipeline на GitHub
# Открыть браузер → GitHub → Actions → Ваша ветка
# 3. Создать/обновить Pull Request если фича готова
# Или просто оставить ветку для продолжения завтра

# Когда фича готова:
# 1. Убедиться, что все тесты проходят
# 2. Обновить ветку с актуальным main
git fetch origin
git rebase origin/main
# 3. Запустить локальные тесты
cd backend && go test ./...
cd ../frontend && npm run test
# 4. Создать Pull Request на GitHub
# 5. Попросить ревью у 2 разработчиков
# После аппрува - мердж в main

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors