CopyContent · Копировальщик контента для браузера

Расширение Chromium / Яндекс.Браузера (Manifest V3): копирует фрагмент страницы из контекстного меню и отправляет его на выбранный сайт — WordPress-пост, чат huskynet, VK, Telegram или произвольный REST API.
Возможности
- Контекстное меню — «Скопировать элемент» на любой странице.
- Боковая панель — список фрагментов: текст, HTML, источник, удаление.
- WordPress — создание поста через REST (
wp/v2/posts) и пароль приложения. - WordPress Chat — сообщение в журнал-чат (
my-chat/v1, slug чата). - ВКонтакте и Telegram — публикация через API сообщества / бота.
- Custom API — свой endpoint, метод и заголовки.
- Несколько сохранённых сайтов, тест подключения, логи расширения.
Требования
- Яндекс.Браузер или другой Chromium с поддержкой Manifest V3 и Side Panel.
- PNG-иконки
icons/icon16.png,icon32.png,icon48.png,icon128.png. - Для WordPress: версия 5.6+, Application Password. Обычный пароль аккаунта не использовать.
- Для Chat: REST namespace
my-chat/v1на целевом сайте. - Секреты только в настройках расширения (
chrome.storage), не в репозитории.
Установка и запуск
- Создайте иконки:
create-icons.htmlв браузере или.\create-icons-simple.ps1. - Откройте
browser://tune(Яндекс) илиchrome://extensions/(Chrome), включите режим разработчика. - «Загрузить распакованное» — укажите папку
D:\WinProjects\@CopyContent. - Либо перетащите папку / CRX (
pack-extension.ps1) наbrowser://tune.
После установки иконка появляется на панели; клик открывает боковую панель.
Использование
Скопировать фрагмент
- Правый клик по элементу страницы → «Скопировать элемент».
- Откройте панель расширения.
- Просмотрите текст/HTML, удалите лишнее.
Настроить сайт
- Шестерёнка в панели или страница настроек расширения.
- «Добавить сайт» — тип WordPress / WordPress Chat / VK / Telegram / Custom.
- WordPress: URL без завершающего
/, логин, пароль приложения (все 24 символа), статус поста (черновик / опубликовать). - «Тест подключения» → «Сохранить».
Отправить
Кнопка «Отправить» на одном элементе или «Отправить всё». При нескольких сайтах выберите получателя.
Структура проекта
@CopyContent/
├── manifest.json
├── background.js # меню, side panel, логи
├── content.js # захват элемента на странице
├── sidepanel.* # UI списка фрагментов
├── options.* # сайты и credentials
├── wordpress-api.js
├── vk-api.js
├── telegram-api.js
├── icons/
└── doc/
Технологии
- Manifest V3, service worker,
chrome.sidePanel,chrome.storage. - Fetch + Basic Auth для WordPress REST.
- Plain JavaScript, без сборки.
Разрешения
| Право | Зачем |
|——-|———|
| contextMenus | пункт «Скопировать элемент» |
| sidePanel | боковая панель |
| storage | фрагменты, сайты, логи |
| scripting, activeTab, tabs | захват DOM |
| <all_urls> | работа на любых страницах |
Пароли приложений можно отозвать в профиле WordPress. CORS / плагины безопасности могут блокировать Authorization — см. doc/ARCHITECTURE.md.
История изменений
Формат Keep a Changelog.
[Unreleased]
Changed
- Документация сведена к четвёрке README + doc/; лишние MD оставлены указателями.
[1.0.0]
Added
- Manifest V3: копирование элемента, боковая панель, настройки.
- Публикация: WordPress посты, WordPress Chat (
my-chat/v1), VK, Telegram, custom REST.



