Skip to content

romankrivopalov/tetris

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tetris

web game

preview

Проект выполнен в рамках прохождения стажировки в компании Wildberries. Самостоятельная реализация UI/UX для каждого мини-проекта, под соответствующее задание.

Требования


  • В заданиях никаких устных решений — только код.
  • Никаких сторонних библиотек и фреймворков, если только это специально не оговорено заданием
  • Приветствуется творческий подход при реализации интерфейсов и геймплея.
  • Разрешается и приветствуется использование любых справочных ресурсов, привлечение сторонних экспертов и т.д. и т.п.
  • Основные критерие оценки — проработка архитектуры и законченность мини-проекта.
  • Сделайте 5 любых заданий из списка

Проекты


  1. tic-tac-toe (web game)
  2. todo-expert (web app, React)
  3. pick-a-number (web game)
  4. daily-calories (web app)
  5. tetris (web game) ⭐ этот репозиторий

Задание


Разработайте классическую игру «Тетрис». Реализуйте механику падающих фигур, их повороты и перемещения. Добавьте систему счета и проверку на конец игры при достижении верхней границы.

Режим разработки


Выполните следующие шаги, чтобы запустить проект в своей среде разработки:

  1. Клонируйте репозиторий
    git clone git@github.com:romankrivopalov/tetris.git
  2. Совершите переход в клонированный репозиторий
    cd tetris
  3. Установите NPM packages
    npm install
  4. Запустите скрипт для запуска приложения в режиме разработки
    npm run dev

Если не произошел автоматический переход в браузер с открытым приложением, самостоятельно введите в адресную строку - http://localhost:3000

Технологии


  • JavaScript (ES6 - classes)
    • Разбитие скрипта на модули с классами
  • HTML5 (canvas)
  • Сборщик проекта не используется

Возможные доработки и исправления


  • Реализация адаптивной верстки
  • Добавления на экране кнопок для работы контроллера, для взаимодействия через экран
  • Добавление прогресса в локальное или сессионное хранилище
  • Доработка логики поворота фигур, при повороте длинных тонких фигур, возможны "проскальзывания" через углы других фигур

Срок реализации основного функционала


23.09.2023 - 24.09.2023


Открыть приложение в браузере