Initial commit: ASPEKTER — визуальный конструктор email-рассылок

- z51-pug-builder: Svelte 5 SPA, визуальный редактор Pug-писем
- email-gen: Node.js рендерер Pug→HTML через email-templates + Juice
- email-gen-api: HTTP сервер рендеринга (порт 8787)
- coin-scout: сервис подбора монет из фидов
- Docker Compose для dev/prod
- Nginx конфиг с SSL для app.aspekter.ru
This commit is contained in:
2026-04-13 11:36:39 +05:00
commit 718821fdd6
282 changed files with 64697 additions and 0 deletions

View File

@@ -0,0 +1,444 @@
[
{
"id": "691c05b8-9ad0-4c1f-859a-05af7f4cfd55",
"name": "НОВИНКИ",
"savedAt": "2026-02-09T07:20:17.007Z",
"blocks": [
{
"name": "Баннер",
"content": "+spacerLine(20)\ntr \n td\n a(href=\"https://numizm.at/\" target=\"_blank\" style=\"display: block;\")\n img(src=\"https://numizm.at/upload/email-template/mail/email/banners/news-2.jpg\" alt=\"\" width=\"600\").block",
"collapsed": true,
"schema": [
{
"type": "href",
"label": "Ссылка",
"lineIndex": 3,
"occurrence": 0
},
{
"type": "src",
"label": "Картинка",
"lineIndex": 4,
"occurrence": 0
}
],
"addSpacing": true
},
{
"name": "Заголовок",
"content": "tr \n td.padding-wrapper\n span.text.h2.bold Встречайте новинки этой недели!",
"collapsed": true,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 2
}
],
"addSpacing": true
},
{
"name": "Текст",
"content": "tr \n td.padding-wrapper\n span.text На Numizm.at обновление каталога: уникальные монеты, редкие выпуски и яркие дизайны — все, что нужно настоящему ценителю. Пополните свою коллекцию интересными новинками с гарантией подлинности!\n+spacerLine(20)\ntr\n td.padding-wrapper\n span.text При заказе от 3500 рублей Вам будет доступен подарок всего за 1 рубль:",
"collapsed": true,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 2,
"paragraphIndex": 1,
"removable": false
},
{
"type": "text",
"label": "Текст",
"lineIndex": 6,
"paragraphIndex": 2,
"removable": true
}
],
"addSpacing": true,
"spacing": 40
},
{
"name": "1товар",
"content": "+products1inRow(\"339554\", {showSale: true})",
"collapsed": true,
"schema": [
{
"type": "mixin-ids",
"label": "ID товаров",
"lineIndex": 0,
"argIndex": 0
}
],
"addSpacing": true,
"spacing": 40
},
{
"name": "Кнопка",
"content": "tr \n td.padding-wrapper(align=\"left\")\n +buttonRounded('Смотреть все новинки', 'https://numizm.at/new-items/', 300, 40, '#FFFFFF', 16, '#FB572B', 0).text__verdana",
"collapsed": true,
"schema": [
{
"type": "mixin-text",
"label": "Текст кнопки",
"lineIndex": 2,
"argIndex": 0
},
{
"type": "mixin-href",
"label": "Ссылка кнопки",
"lineIndex": 2,
"argIndex": 1
}
],
"addSpacing": true
},
{
"name": "3товара",
"content": "+products3inRow(\"311909,301171,355784\")",
"collapsed": false,
"schema": [
{
"type": "mixin-ids",
"label": "ID товаров",
"lineIndex": 0,
"argIndex": 0
}
],
"addSpacing": true
},
{
"name": "2товара",
"content": "+products2inRow(\"355769,322087\")",
"collapsed": false,
"schema": [
{
"type": "mixin-ids",
"label": "ID товаров",
"lineIndex": 0,
"argIndex": 0
}
],
"addSpacing": true
},
{
"name": "3товара",
"content": "+products3inRow(\"311909,301171,355784\")",
"collapsed": false,
"schema": [
{
"type": "mixin-ids",
"label": "ID товаров",
"lineIndex": 0,
"argIndex": 0
}
],
"addSpacing": true
},
{
"name": "2товара",
"content": "+products2inRow(\"355769,322087\")",
"collapsed": false,
"schema": [
{
"type": "mixin-ids",
"label": "ID товаров",
"lineIndex": 0,
"argIndex": 0
}
],
"addSpacing": true
},
{
"name": "Кнопка",
"content": "tr \n td.padding-wrapper(align=\"left\")\n +buttonRounded('Смотреть все новинки', 'https://numizm.at/new-items/', 300, 40, '#FFFFFF', 16, '#FB572B', 0).text__verdana",
"collapsed": true,
"schema": [
{
"type": "mixin-text",
"label": "Текст кнопки",
"lineIndex": 2,
"argIndex": 0
},
{
"type": "mixin-href",
"label": "Ссылка кнопки",
"lineIndex": 2,
"argIndex": 1
}
],
"addSpacing": true
},
{
"name": "Блок рекомендаций",
"content": "tr \n td.padding-wrapper\n +defaultTable('100%', 'left')\n tr \n td \n img(src=\"https://numizm.at/upload/email-template/mail/email/icons/icon-rub.png\" alt=\"\" width=\"40\")\n +tdFixed(16)\n td \n span.text.bold ВСЕГДА НИЗКИЕ ЦЕНЫ И ВЫСОКОЕ КАЧЕСТВО\n +spacerLine(14)\n tr \n td \n img(src=\"https://numizm.at/upload/email-template/mail/email/icons/icon-new.png\" alt=\"\" width=\"40\")\n +tdFixed(16)\n td \n span.text.bold НОВИНКИ КАЖДЫЙ ДЕНЬ И ПОСТОЯННОЕ НАЛИЧИЕ\n +spacerLine(14)\n tr \n td \n img(src=\"https://numizm.at/upload/email-template/mail/email/icons/icon-car.png\" alt=\"\" width=\"40\")\n +tdFixed(16)\n td \n span.text.bold БЕСПЛАТНАЯ ДОСТАВКА ПОЧТОЙ РОССИИ ОТ 5000 РУБЛЕЙ\n +spacerLine(14)\n tr \n td \n img(src=\"https://numizm.at/upload/email-template/mail/email/icons/icon-cart.png\" alt=\"\" width=\"40\")\n +tdFixed(16)\n td \n span.text.bold ТОЛЬКО ПРОВЕРЕННЫЕ ОРИГИНАЛЫ\n+spacerLine(30)\n\ntr \n td\n a(href=\"https://numizm.at/sale-items\" target=\"_blank\" style=\"display: block;\")\n img(src=\"https://numizm.at/upload/email-template/mail/email/banners/sale-catalog.jpg\" alt=\"\" width=\"600\").block",
"collapsed": true,
"schema": [
{
"type": "src",
"label": "Картинка",
"lineIndex": 5,
"occurrence": 0
},
{
"type": "text",
"label": "Текст",
"lineIndex": 8
},
{
"type": "src",
"label": "Картинка",
"lineIndex": 12,
"occurrence": 0
},
{
"type": "text",
"label": "Текст",
"lineIndex": 15
},
{
"type": "src",
"label": "Картинка",
"lineIndex": 19,
"occurrence": 0
},
{
"type": "text",
"label": "Текст",
"lineIndex": 22
},
{
"type": "src",
"label": "Картинка",
"lineIndex": 26,
"occurrence": 0
},
{
"type": "text",
"label": "Текст",
"lineIndex": 29
},
{
"type": "href",
"label": "Ссылка",
"lineIndex": 34,
"occurrence": 0
},
{
"type": "src",
"label": "Картинка",
"lineIndex": 35,
"occurrence": 0
}
],
"addSpacing": true
}
]
},
{
"id": "663583df-4e85-4de0-862a-c83da7cacbc6",
"name": "АКЦИЯ",
"savedAt": "2026-02-08T19:16:04.420Z",
"blocks": [
{
"name": "Баннер",
"content": "+spacerLine(20)\ntr \n td\n a(href=\"https://numizm.at/\" target=\"_blank\" style=\"display: block;\")\n img(src=\"https://email-images.mindbox.ru/numizmat/89749d4d-11a1-4c62-8d85-2fbd6c78bcf8/78af15db-fd0a-4dc0-8b46-0b7806784c78.jpg\" alt=\"\" width=\"600\").block",
"collapsed": true,
"schema": [
{
"type": "href",
"label": "Ссылка",
"lineIndex": 3,
"occurrence": 0
},
{
"type": "src",
"label": "Картинка",
"lineIndex": 4,
"occurrence": 0
}
],
"addSpacing": true
},
{
"name": "Текст",
"content": "tr \n td.padding-wrapper\n span.text 10-11 февраля в коллекционном интернет-магазине «Нумизмат» действует скидка 10% на множество монет, банкнот, аксессуаров. Успевайте за выгодными приобретениями на «Нумизмат»!\n",
"collapsed": true,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 2,
"paragraphIndex": 1,
"removable": false
}
],
"addSpacing": true,
"spacing": 40
},
{
"name": "Кнопка",
"content": "tr \n td.padding-wrapper(align=\"center\")\n +buttonRounded('Перейти в каталог', 'https://numizm.at/new-items/', 300, 40, '#FFFFFF', 16, '#FB572B', 0).text__verdana",
"collapsed": false,
"schema": [
{
"type": "mixin-text",
"label": "Текст кнопки",
"lineIndex": 2,
"argIndex": 0
},
{
"type": "mixin-href",
"label": "Ссылка кнопки",
"lineIndex": 2,
"argIndex": 1
}
],
"addSpacing": true
},
{
"name": "3товара",
"content": "+products3inRow(\"\", {showSale: true})",
"collapsed": false,
"schema": [
{
"type": "mixin-ids",
"label": "ID товаров",
"lineIndex": 0,
"argIndex": 0
}
],
"addSpacing": true
},
{
"name": "3товара",
"content": "+products3inRow(\"\", {showSale: true})",
"collapsed": false,
"schema": [
{
"type": "mixin-ids",
"label": "ID товаров",
"lineIndex": 0,
"argIndex": 0
}
],
"addSpacing": true
},
{
"name": "3товара",
"content": "+products3inRow(\"\", {showSale: true})",
"collapsed": false,
"schema": [
{
"type": "mixin-ids",
"label": "ID товаров",
"lineIndex": 0,
"argIndex": 0
}
],
"addSpacing": true
},
{
"name": "3товара",
"content": "+products3inRow(\"\", {showSale: true})",
"collapsed": false,
"schema": [
{
"type": "mixin-ids",
"label": "ID товаров",
"lineIndex": 0,
"argIndex": 0
}
],
"addSpacing": true,
"spacing": 40
},
{
"name": "Кнопка",
"content": "tr \n td.padding-wrapper(align=\"center\")\n +buttonRounded('Смотреть все товары', 'https://numizm.at/catalog/', 300, 40, '#FFFFFF', 16, '#FB572B', 0).text__verdana",
"collapsed": false,
"schema": [
{
"type": "mixin-text",
"label": "Текст кнопки",
"lineIndex": 2,
"argIndex": 0
},
{
"type": "mixin-href",
"label": "Ссылка кнопки",
"lineIndex": 2,
"argIndex": 1
}
],
"addSpacing": true
},
{
"name": "Блок рекомендаций",
"content": "tr \n td.padding-wrapper\n +defaultTable('100%', 'left')\n tr \n td \n img(src=\"https://numizm.at/upload/email-template/mail/email/icons/icon-rub.png\" alt=\"\" width=\"40\")\n +tdFixed(16)\n td \n span.text.bold ВСЕГДА НИЗКИЕ ЦЕНЫ И ВЫСОКОЕ КАЧЕСТВО\n +spacerLine(14)\n tr \n td \n img(src=\"https://numizm.at/upload/email-template/mail/email/icons/icon-new.png\" alt=\"\" width=\"40\")\n +tdFixed(16)\n td \n span.text.bold НОВИНКИ КАЖДЫЙ ДЕНЬ И ПОСТОЯННОЕ НАЛИЧИЕ\n +spacerLine(14)\n tr \n td \n img(src=\"https://numizm.at/upload/email-template/mail/email/icons/icon-car.png\" alt=\"\" width=\"40\")\n +tdFixed(16)\n td \n span.text.bold БЕСПЛАТНАЯ ДОСТАВКА ПОЧТОЙ РОССИИ ОТ 5000 РУБЛЕЙ\n +spacerLine(14)\n tr \n td \n img(src=\"https://numizm.at/upload/email-template/mail/email/icons/icon-cart.png\" alt=\"\" width=\"40\")\n +tdFixed(16)\n td \n span.text.bold ТОЛЬКО ПРОВЕРЕННЫЕ ОРИГИНАЛЫ\n+spacerLine(30)\n\ntr \n td\n a(href=\"https://numizm.at/sale-items\" target=\"_blank\" style=\"display: block;\")\n img(src=\"https://numizm.at/upload/email-template/mail/email/banners/sale-catalog.jpg\" alt=\"\" width=\"600\").block",
"collapsed": true,
"schema": [
{
"type": "src",
"label": "Картинка",
"lineIndex": 5,
"occurrence": 0
},
{
"type": "text",
"label": "Текст",
"lineIndex": 8
},
{
"type": "src",
"label": "Картинка",
"lineIndex": 12,
"occurrence": 0
},
{
"type": "text",
"label": "Текст",
"lineIndex": 15
},
{
"type": "src",
"label": "Картинка",
"lineIndex": 19,
"occurrence": 0
},
{
"type": "text",
"label": "Текст",
"lineIndex": 22
},
{
"type": "src",
"label": "Картинка",
"lineIndex": 26,
"occurrence": 0
},
{
"type": "text",
"label": "Текст",
"lineIndex": 29
},
{
"type": "href",
"label": "Ссылка",
"lineIndex": 34,
"occurrence": 0
},
{
"type": "src",
"label": "Картинка",
"lineIndex": 35,
"occurrence": 0
}
],
"addSpacing": false
}
]
}
]