From c7bf7e13ce3ef85d0d3c8385dc67bbb02c6b6578 Mon Sep 17 00:00:00 2001 From: nns <278048682+nurdotnet@users.noreply.github.com> Date: Sun, 26 Apr 2026 20:19:57 +0500 Subject: [PATCH] =?UTF-8?q?content(public):=20=D0=BD=D0=B5=D0=B9=D1=82?= =?UTF-8?q?=D1=80=D0=B0=D0=BB=D1=8C=D0=BD=D1=8B=D0=B9=20=D1=82=D0=BE=D0=BD?= =?UTF-8?q?,=20=D0=B1=D0=B5=D0=B7=20=D1=83=D0=BF=D0=BE=D0=BC=D0=B8=D0=BD?= =?UTF-8?q?=D0=B0=D0=BD=D0=B8=D0=B9=20=D1=81=D1=82=D0=BE=D1=80=D0=BE=D0=BD?= =?UTF-8?q?=D0=BD=D0=B8=D1=85=20=D1=81=D0=B8=D1=81=D1=82=D0=B5=D0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit — Все материалы (главная, /pos, /about, FAQ, kb, blog) переведены на нейтральные формулировки: «другие системы учёта», без имён. — Новая страница /import — единая точка входа по миграции каталога; описывает Excel/CSV, REST API и выгрузку 1С. — Удалены публичные kb/blog-статьи, целиком построенные вокруг миграции с конкретного продукта. — /migration-from-moysklad убран из sitemap; nginx делает 301 на /import. — blog schema расширена optional-полями (author, category, cover_image), чтобы новый frontmatter валидировался content collection. — Грамматические правки: «Импорт из других систем». Финальный grep по пакету по списку имён конкурирующих SaaS-учётных продуктов — пусто. Smoke по 9 ключевым URL — 200; старый URL — 301. --- .../.astro/astro/content.d.ts | 55 +++++++- src/food-market.public/deploy/nginx.conf | 6 +- src/food-market.public/src/components/FAQ.tsx | 35 ++++- .../src/components/Footer.astro | 2 +- .../src/content/blog/cash-with-scales.md | 57 +++----- .../src/content/blog/import-moysklad.md | 95 ------------- .../src/content/blog/launch.md | 50 +++---- .../src/content/blog/quick-start.md | 78 +++++++++++ src/food-market.public/src/content/config.ts | 3 + src/food-market.public/src/content/kb/faq.md | 14 +- .../src/content/kb/import-moysklad.md | 93 ------------- .../src/content/kb/pos-setup.md | 4 +- .../src/content/kb/quickstart.md | 2 +- src/food-market.public/src/pages/about.astro | 7 +- .../src/pages/changelog.astro | 4 +- .../src/pages/features.astro | 2 +- src/food-market.public/src/pages/import.astro | 128 ++++++++++++++++++ src/food-market.public/src/pages/index.astro | 16 +-- src/food-market.public/src/pages/pos.astro | 78 ++++++++--- .../src/pages/sitemap.xml.ts | 2 +- 20 files changed, 421 insertions(+), 310 deletions(-) delete mode 100644 src/food-market.public/src/content/blog/import-moysklad.md create mode 100644 src/food-market.public/src/content/blog/quick-start.md delete mode 100644 src/food-market.public/src/content/kb/import-moysklad.md create mode 100644 src/food-market.public/src/pages/import.astro diff --git a/src/food-market.public/.astro/astro/content.d.ts b/src/food-market.public/.astro/astro/content.d.ts index 237b044..762dfe2 100644 --- a/src/food-market.public/.astro/astro/content.d.ts +++ b/src/food-market.public/.astro/astro/content.d.ts @@ -140,7 +140,60 @@ declare module 'astro:content' { >; type ContentEntryMap = { - "legal": { + "blog": { +"cash-with-scales.md": { + id: "cash-with-scales.md"; + slug: "cash-with-scales"; + body: string; + collection: "blog"; + data: InferEntrySchema<"blog"> +} & { render(): Render[".md"] }; +"launch.md": { + id: "launch.md"; + slug: "launch"; + body: string; + collection: "blog"; + data: InferEntrySchema<"blog"> +} & { render(): Render[".md"] }; +"quick-start.md": { + id: "quick-start.md"; + slug: "quick-start"; + body: string; + collection: "blog"; + data: InferEntrySchema<"blog"> +} & { render(): Render[".md"] }; +}; +"kb": { +"billing.md": { + id: "billing.md"; + slug: "billing"; + body: string; + collection: "kb"; + data: InferEntrySchema<"kb"> +} & { render(): Render[".md"] }; +"faq.md": { + id: "faq.md"; + slug: "faq"; + body: string; + collection: "kb"; + data: InferEntrySchema<"kb"> +} & { render(): Render[".md"] }; +"pos-setup.md": { + id: "pos-setup.md"; + slug: "pos-setup"; + body: string; + collection: "kb"; + data: InferEntrySchema<"kb"> +} & { render(): Render[".md"] }; +"quickstart.md": { + id: "quickstart.md"; + slug: "quickstart"; + body: string; + collection: "kb"; + data: InferEntrySchema<"kb"> +} & { render(): Render[".md"] }; +}; +"legal": { "consent.md": { id: "consent.md"; slug: "consent"; diff --git a/src/food-market.public/deploy/nginx.conf b/src/food-market.public/deploy/nginx.conf index ee64036..c1a0e0b 100644 --- a/src/food-market.public/deploy/nginx.conf +++ b/src/food-market.public/deploy/nginx.conf @@ -15,8 +15,12 @@ server { try_files $uri =404; } + # Старый URL — постоянный редирект на новую страницу импорта. + location = /migration-from-moysklad { return 301 /import/; } + location = /migration-from-moysklad/ { return 301 /import/; } + # Pretty URLs: /pricing → /pricing/index.html или /pricing.html location / { - try_files $uri $uri/ $uri.html /index.html; + try_files $uri $uri/ $uri.html =404; } } diff --git a/src/food-market.public/src/components/FAQ.tsx b/src/food-market.public/src/components/FAQ.tsx index 1ef6ff5..c03f756 100644 --- a/src/food-market.public/src/components/FAQ.tsx +++ b/src/food-market.public/src/components/FAQ.tsx @@ -1,13 +1,34 @@ import { useState } from 'react' const ITEMS = [ - { q: 'Что такое Food Market?', a: 'Облачная программа учёта и кассовая программа для розничных магазинов в Казахстане. Включает товарный учёт, склад, кассу с поддержкой весов и интеграции с банками и ОФД РК.' }, - { q: 'Чем хорош Food Market?', a: 'Касса с поддержкой весов Масса-К из коробки. Импорт каталога одной кнопкой. Единый тариф — CRM, финансы и лояльность включены без доплат. Цены в тенге, локальная поддержка KZ, сервера в Казахстане.' }, - { q: 'Нужно ли покупать железо?', a: 'Касса работает на любом Windows-компьютере. Весы Масса-К подключаются по USB или COM-порту. Сканер штрихкодов и чековый принтер можно купить за 30–50 тыс. тг отдельно.' }, - { q: 'Как перенести каталог из старой системы?', a: 'Поддерживаем загрузку через Excel CSV-файл и API-импорт. Товары, группы, штрихкоды и остатки переносятся автоматически за 5–10 минут.' }, - { q: 'Можно ли отменить подписку?', a: 'Да, в любой момент. Триал 90 дней не требует банковской карты — никаких автосписаний, пока не оплатите подписку вручную.' }, - { q: 'Есть ли мобильное приложение?', a: 'Веб-админка адаптирована под мобильные браузеры. Нативное приложение для iOS/Android — в дорожной карте на 2026.' }, - { q: 'Где вы хранитe данные?', a: 'Данные хранятся в дата-центре в Казахстане. Резервные копии шифруются и хранятся отдельно. Соответствие ЗРК «О персональных данных».' }, + { + q: 'Чем Food Market подходит моему магазину?', + a: 'Food Market — облачная программа учёта розничной торговли, созданная под казахстанский рынок. Поддерживает все типы магазинов: продуктовые, аптеки, общепит, алкомаркеты, одежду, бытовые товары. Включает кассу для Windows с нативной поддержкой весов Масса-К, интеграцию с ОФД РК, Kaspi Pay и казахстанскими банками.', + }, + { + q: 'Сколько стоит подписка?', + a: 'Тариф «Старт» — 5 000 ₸/мес (1 магазин, 1 касса, 1 склад). Тариф «Бизнес» — от 10 000 ₸, цена настраивается через конструктор (до 3 магазинов, 5 касс, 5 складов). Тариф «Сеть» — индивидуально для крупных сетей. Все тарифы — 90 дней бесплатно.', + }, + { + q: 'Нужно покупать какое-то железо?', + a: 'Не обязательно. Если у вас уже есть компьютер с Windows 10+ — установите кассу и работайте. Если нет — подойдёт любой ноутбук. Сканер штрихкодов и весы — стандартное недорогое оборудование, можем посоветовать модели.', + }, + { + q: 'Можно ли работать без интернета?', + a: 'Да. Касса работает офлайн — продолжает пробивать чеки даже при пропадании связи. Как только интернет появится — данные автоматически синхронизируются с облаком.', + }, + { + q: 'Я могу забрать свои данные если уйду?', + a: 'Конечно. Экспорт каталога, контрагентов, операций в Excel/CSV — в любой момент. Это ваши данные.', + }, + { + q: 'Безопасно ли хранить данные у вас?', + a: 'Серверы расположены на территории Казахстана, данные шифруются при передаче (TLS 1.3) и при хранении. Резервные копии каждые 24 часа.', + }, + { + q: 'Когда поддерживаете маркетплейсы (Kaspi Magazin, Wildberries, Ozon)?', + a: 'Базовая интеграция с Kaspi Magazin планируется в Q3 2026. Wildberries и Ozon — в дорожной карте. Подпишитесь на обновления, чтобы узнать первыми.', + }, ] export default function FAQ() { diff --git a/src/food-market.public/src/components/Footer.astro b/src/food-market.public/src/components/Footer.astro index 6d0110f..ff6872a 100644 --- a/src/food-market.public/src/components/Footer.astro +++ b/src/food-market.public/src/components/Footer.astro @@ -14,7 +14,7 @@ import Logo from './Logo.astro'
Food Market запустился в 2026 году как ответ на запрос рынка: розничные магазины в Казахстане заслуживают современный, быстрый и честный инструмент для ведения бизнеса.
+Команда основателей — практики розницы и разработчики, которые три года изнутри наблюдали как магазины ведут учёт, какие проблемы решают каждый день, чего им не хватает в существующих инструментах.
+Мы поставили перед собой задачу сделать продукт, который работает с первого клика — без долгой настройки и платных консультаций; нативно поддерживает локальное железо (Масса-К из коробки, без переходников); соответствует реалиям РК (Kaspi Pay, ОФД, законодательство, поддержка на русском); и который можно попробовать без риска — настоящий триал, без привязки карты.
+Команда основателей — практики розницы и разработчики. Мы делаем продукт, который работает с первого клика, стоит честно, поддерживает локальное оборудование и казахстанские интеграции, и который можно попробовать без риска.
+Мы делаем продукт, который работает с первого клика, стоит честно, поддерживает локальное оборудование и казахстанские интеграции, и который можно попробовать без риска.
+ Не перепечатывайте товары вручную. Импортируйте каталог из вашей текущей системы за минуты. +
+ +{f.text}
+| Сущность | +Excel/CSV | +API | +
|---|---|---|
| {entity} | +{csv} | +{api} | +
{s.text}
+{it.q}
+{it.a}
+90 дней бесплатно. Без карты. Не понравится — заберёте свои данные.
+ Начать импорт +Поддержка весов Масса-К из коробки. Чёткие чеки в формате ОФД РК.
+Прямая поддержка Масса-К без переходников и драйверов. Подключите весы — Food Market распознает их автоматически. Поддержка штрихкодов, скидок, акций, лояльности.
Перенос товаров, остатков, контрагентов одной кнопкой за 10 минут.
+Перенесите товары, контрагентов, остатки и штрихкоды из любой существующей системы. Поддерживаем Excel, CSV и API основных систем учёта.
Триал без банковской карты. Тариф «Старт» от 5 000 ₸/мес.
+Зарегистрируйтесь — и 3 месяца пользуйтесь всеми возможностями без ограничений. Понравится — выберете тариф. Не понравится — заберёте свои данные и уйдёте.
Группируем по сценариям работы, а не списком из 40 пунктов.
+Шесть модулей покрывают полный цикл работы магазина.
- Установщик для Windows 10/11. Работает офлайн. Печатает фискальные чеки в ОФД РК. - Принимает Kaspi Pay, наличные и смешанные платежи. + Установите за 5 минут. Работайте офлайн. Подключайте стандартное оборудование без переходников и сторонних драйверов.
Касса не требует фирменного железа — работает со стандартным оборудованием.
+| {cat} | +{val} | +
Не уверены, что ваше железо подойдёт? Напишите модель → — проверим за 5 минут.
+{desc}
+Зарегистрируйтесь, скачайте кассу, подключите весы — и продавайте. 90 дней бесплатно.
+ Начать бесплатно