Идея и структура проекта

Как ранее писал, моя идея заключалась в том, чтобы в одно нажатие открывался нужный мне тестовый контур. На мой взгляд идея имеет одну целенаправленную задачу и должно ее выполнять. Бывают расширения, которые по функциональности могут дополняться новыми "фичами", но это был не мой случай. По сути создание расширение это комбинация html, css и javascript. Но чтобы все вместе это работало необходимо создать manifest.json. Что это такое? По сути это техническая инструкция для браузера, который понимает как установить расширение и как его запустить. Давайте разберем подробно каждый атрибут этого json файла:

  • name. Атрибут, который содержит в себе текст. Он будет отображаться в интернет-магазине, а также при наведении курсора в секции с расширениями.
  • description. Атрибут, который содержит текст, который по сути описывает что делает ваше расширение.
  • version. Это информация о версии вашего браузера.
  • manifest_version. Это указывает браузеру, какой тип версии манифеста использовать. Сейчас актуально 3 версия. По сути, это указывает браузеру какие методы можно использовать на уровне кода.
  • action. Тут есть 2 атрибута: default_popup - по сути это какую html страницу загружать при нажатии на расширение, а default_title - это какую подсказку показывать при наведении
  • host_permission. На каких сайта имеет права работать расширение. Тут можно перечислить все необходимые сайты, но если вам нужно, чтобы расширение работало везде, то можно указать текст "all_urls"
  • permissions. Разрешение для расширения браузера. Так как в процессе работы ему может быть потребоваться доступ к каким-то частям браузера, то тут нужно это прописать
  • icons. Указывается ссылка на изображение, которое будет использоваться при отображении в трейде расширений
  • author. Указывается имя автора и его почта Это минимальный набор для создания manifest.json На самом деле существует еще несколько десятков атрибутов, которые можно использовать. Подробнее можно почитать тут.

В следующей части я расскажу о том, как реализовать простую функциональность - очистка кук через расширение и как ее можно протестировать.