add landing site for the Microsoft Store submission
Pull request / build (pull_request) Successful in 47s

A bilingual (EN/RU) static page in site/, split into index.html, styles.css,
boot.js and main.js, with a favicon.svg. Documents placement modes, per-mode
look, the Caps Lock shortcut and a privacy policy — the last is meant to
double as the Partner Center privacy policy URL.

STORE_URL is still a placeholder in both download buttons until the Store
listing exists.
This commit is contained in:
2026-09-01 09:36:37 +05:00
parent 42e93346ab
commit 936e53d55b
7 changed files with 1512 additions and 0 deletions
+43
View File
@@ -377,3 +377,46 @@ dotnet build Packaging\Installer\CursorLang.wixproj -p:SuppressValidation=false
Три правила остаются подавленными и тогда. MSI исходит из установки на всю
машину, а установка в профиль пользователя нарушает правила, которые описывают
ровно то, что здесь и задумано.
## Сайт
`site/index.html` — страница, на которую ссылается заявка в Store: что делает
приложение и политика конфиденциальности, говорящая, что оно ничего не собирает.
Partner Center не требует политику от приложения, которое не собирает данных, но
страница, сказавшая это вслух, снимает вопрос у проверяющего.
Всё это — пять файлов в `site`, и ничего больше ниоткуда не подгружается: ни
фреймворка, ни сборки, ни шрифта из сети.
| Файл | Что внутри |
|---|---|
| `index.html` | Разметка, оба языка сразу |
| `styles.css` | Все правила, включая палитру |
| `boot.js` | Язык и тема прошлого визита — до первого кадра |
| `main.js` | Остальное: переключатели, меню, демонстрация, предпросмотр |
| `favicon.svg` | Та же тёмная плашка с «Aя», что и у иконки приложения |
`boot.js` вынесен отдельно и мал по одной причине: он должен отработать до
разбора `body`. Он читает выбранное в прошлый раз и ставит это на элемент
`<html>` — без него первый кадр был бы английским и в системной теме, а потом
на глазах исправлялся бы. `main.js` работает по разметке, которая к тому времени
должна существовать, поэтому он отложенный.
Оба языка живут в разметке одновременно, а переключатель в углу выбирает один.
Каждый переведённый кусок — это `<span lang="en">` рядом с `<span lang="ru">`, и
тот, который не совпадает с языком на элементе `<html>`, скрывается правилом в
две строки. С выключенными скриптами страница всё равно читается — по-английски.
Выкладка сводится к копированию этих пяти файлов как есть. До неё адреса ждут
две вещи.
Первая — страница в Store: обе кнопки загрузки сейчас не ссылки, а
`<span class="btn disabled" role="link">`, потому что заглушка в `href` была бы
относительным адресом и всякий, кто по ней пойдёт, получил бы 404. С адресом
каждая возвращается в `<a class="btn" href="…">`, а примечание рядом уходит.
Вторая — адрес самого сайта: его ждут три тега, которых в шапке документа пока
нет, — `og:image`, `og:url` и canonical.
Поддержка — `support@alrakis.kz`: адрес стоит в разделе о данных, под кнопками
загрузки и в подвале.