npm run start
— сервер Express на 3000 портуnpm run dev
— dev сборка и dev-сервер Webpack на 3333 порту,npm run build
— prod сборка Webpack, собирает в./dist/
npm run lint
— проверка с фиксом ошибок линтером eslintnpm run stylelint
— проверка ошибок scss линтером stylelintnpm run test
— запуск unit-тестов jest (BLock, HTTPTransport, Router)
компоненты-тэги
— Alink, Button, Input, Textareaкомпоненты-комбайны
— Form, NavList, SectionWith, Errorкомпоненты-страницы
— Main, Auth, Reg, Chats, Profile, ChangeProfile, ChangePass
- компонент-тэг — инстанс принимает основные пропсы, требуемые для создания соответствующего тэга
- компонент-комбайн — инстансы принимают пропсы - строки и объекты для конструирования, генерации и сборки блока из простых компонент
- компонент-страница — инстансы создаются роутером по соответствущему руту
- Typescript
- Валидация на основе регулярных выражений
- Сбор данных из форм - на данном этапе значения и валидация всех input'ов, textarea выводятся в console
- Следование принципам MVC
- Стремление к декомпозиции проекта (но файл .scss пока сохранен общим для всего проекта)
- Добавлен class XMLHttpRequest для будущей работы с API сервера
- Добавлен Eslint и Stylelint
ModalAvatar
,ModalChats
— модальные окна
- Роутер полностью переписан с помощью Классов JS под ООП методологию на замену функциональной. Бесшовное переключение рутов без обновления страницы.
- Поддерживается полноценная работа с history API - переход по страницам, движение вперед-назад как через интерфейс браузера, так и через роутер.
- При переходе на другую страницу, DOM меняется на нее, очищая предыдущую.
/
- страница входа (авторизации)/sign-up
- страница регистрации/settings
- страница изменения профиля/messenger
- страница чатов, навигации по ним и real-time общения
- Созданы все необходимые методы для взаимодействия с API:
- класс
AuthAPI
- Авторизация, Регистрация, Выход из системы.. - класс
UsersAPI
- Изменение данных профиля пользователя, пароля, аватара - класс
ChatsAPI
- Работа с чатами, создание/удаление чатов, добавление/удаление пользователей из них
- управление
API <-> Store
- управление
Websocket <-> Store
- управление
Компоненты, Страницы -> API, WebSocket
- Следование принципам MVC
- Cледование по пути безопасности от пользовательского ввода (против XSS)
- Проект переведен на сборщик Webpack. Настроен.
- Настроена Docker-сборка статического приложения.
- Проект с Docker-сборкой размещен на Render.com
- Добавлен пакет Jest и написаны базовые тесты для модуля отправки запросов (HTTPTransport), Роутера и Основного компонента (Block)
- Подключен husky для проверки перед коммитами