Michil Deploy Workshop
team00
RED
Service down
Connection failed
Timeout or DNS error
Today (9:00 MSK — 9:00 MSK)
0
Commits
0
PRs Merged
0
PRs Opened
0
Issues Opened
0
Issues Closed
All Time
2
Commits
0
PRs Merged
0
PRs Opened
0
Issues Opened
0
Issues Closed
-
API Usage
9.0
Overall
9
ux
9
functionality
9
performance
ux (9/10)
Отличный UX для фитнес-лендинга. Дизайн современный, тёмная тема приятна для глаз. Навигация интуитивная - всего 2 страницы с понятными названиями. Форма обратной связи имеет подробные подсказки для каждого поля и мгновенную валидацию с понятными сообщениями об ошибках. Функция сохранения черновика - отличное UX-решение, предотвращающее потерю данных. Единственный минус - кнопки 'See Demo' и 'Download App' не работают без объяснения причины.
functionality (9/10)
Все заявленные в README функции полностью реализованы и работают корректно. Контактная форма имеет все правила валидации: минимальная длина имени (2 символа), паттерн email, обязательный выбор темы, минимальная длина сообщения (20 символов), обязательное согласие на обработку данных. Draft persistence работает безупречно - данные сохраняются в localStorage, восстанавливаются при перезагрузке и очищаются при Reset/успешной отправке. React Query интегрирован для отправки формы с показом статуса.
performance (9/10)
Страницы загружаются мгновенно, переходы между роутами происходят без задержек благодаря клиентской маршрутизации React Router. Валидация формы работает в реальном времени без лагов. В консоли есть 2 warning'а о controlled/uncontrolled Select компоненте, но они не влияют на функциональность. Сборка оптимизирована через Vite, что обеспечивает быструю загрузку ресурсов.
Findings (20)
high
bug
Broken: Кнопка 'See Demo' - не реагирует
high
bug
Broken: Кнопка 'Download App' - не реагирует
high
bug
Broken: Ссылки Footer (Privacy, Terms, Instagram, App Store) - ведут на #
high
bug
Console warning: 'Select is changing from uncontrolled to controlled' при взаимодействии с Topic combobox
medium
ux_issue
Нет визуальной индикации процесса отправки формы (loading spinner)
Commits & Code Churn
31 Jan — 6 Feb 2026PR Activity
31 Jan — 6 Feb 2026Languages
README
PulseTrack – Fitness Tracking Landing
PulseTrack is a fitness tracking landing page built with React, TypeScript, Vite, and Radix Themes.
It showcases a training analytics app with a marketing home page and an About page featuring a contact form.
Tech stack
- React + TypeScript + Vite
@radix-ui/themesand@radix-ui/react-iconsreact-router-domreact-hook-form(built-in rules only, no schema validators)@tanstack/react-query
Getting started
- Install dependencies:
npm install
- Run the dev server:
npm run dev
- Open the app in your browser (usually at
http://localhost:5173).
Available scripts
npm run dev– start Vite dev servernpm run build– type-check and build for productionnpm run preview– preview the production buildnpm run lint– run ESLint
Routes
/– Home: hero section, highlights, features grid, “How it works” steps, and final CTA, all styled with Radix Themes./about– About & Contact: about copy plus a contact form with validation and submit handled via React Hook Form and React Query.
Contact form & draft persistence
- Validation is implemented via
react-hook-formusingregisterrules: name: required, min length 2email: required, email patterntopic: required selectmessage: required, min length 20consent: required checkbox with customvalidate- Draft values are stored in
localStorageunder thecontactDraftkey and restored on page load; resetting or successful submit clears the draft.
Events History
Total: 2 events
Page 1 of 1