Projects


Brain games

Проект в рамках обучения на hexlet.

В проекте сделано несколько консольных игр. В ходе разработки проекта узнал и реализовал архитектуру с инверсией зависимостей. Проект распространяется, как npm пакет.

GitHub: https://github.com/greybutton/project-lvl1-s212
npm: https://www.npmjs.com/package/brain-games-greybutton

Вычислитель отличий

Проект в рамках обучения на hexlet.

Сделал консольную программу, которая ищет отличия в конфигурационных файлах, поддерживаемые форматы: json, yaml, ini. Сравнение файлов сделано через АСТ (абстрактное синтаксическое дерево). В ходе разработки проекта осознал паттерн Фасад, узнал и реализовал паттерн Адаптер и Стратегия. Проект разрабатывался через тесты и распространяется, как npm пакет.

GitHub: https://github.com/greybutton/project-lvl2-s221
npm: https://www.npmjs.com/package/gendiff-greybutton

RSS Reader

Проект в рамках обучения на hexlet.

Сделал приложение для чтения RSS лент с автоматическим обновлением. Научился работать с DOM, познакомился с MVC, научился собирать с помощью webpack, использовал bootstrap, axios.

GitHub: https://github.com/greybutton/project-lvl3-s282


Slack

Проект в рамках обучения на hexlet.

Реализовал фронт-енд упрощенной версии чата slack (только сообщения и каналы). Закрепил навыки работы с react, redux, redux-form. Поработал с websockets, cookies, сделал небольшую нормализацию, расширил знания по bootstrap. Узнал архитектуру фуллстек приложения node.js + react. Деплой на heroku.

GitHub: https://github.com/greybutton/project-lvl4-s283
Приложение: https://slack-greybutton.herokuapp.com

Загрузчик страниц

Проект в рамках обучения на hexlet.

Сделал консольную утилиту для скачивания указанного адреса из сети. Разобрался в общих принципах работы с асинхронным кодом в js. (I/O, Promises, HTTP) Проект разрабатывался через тесты и распространяется, как npm пакет.

GitHub: https://github.com/greybutton/project-lvl3-s334
npm: https://www.npmjs.com/package/page-loader-greybutton

Менеджер задач

Проект в рамках обучения на hexlet.

В проекте необходимо разработать, систему управления задачами. Реализуется функционал добавления, просмотра, редактирования, удаления, фильтрации задач, статусы задач, привязка создателя и исполнителя, аутентификация. Спроектировал базу данных и связи между сущностями. Разобрался с ORM sequelize. Использовал микрофреймворк koa.js, шаблонизатор pug, rollbar для трекинга ошибок. Деплой на heroku.

GitHub: https://github.com/greybutton/project-lvl4-s359
Приложение: https://task-manager-greybutton.herokuapp.com/

Project Angarsk logotype

Angarsk logotype

Участвовал в фестивале графического дизайна, придумал логотип и фирменный стиль города