Первоначальная версия VidConf

This commit is contained in:
2026-07-23 01:04:01 +03:00
commit 896455381a
335 changed files with 61527 additions and 0 deletions

32
frontend/index.html Normal file
View File

@@ -0,0 +1,32 @@
<!doctype html>
<html lang="ru">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>VidConf</title>
<script>
/*
* Тема оболочки — применяется ДО первого рендера React, чтобы избежать
* мигания светлой темой (FOUC) при явном выборе «тёмная» пользователем
* (см. frontend/src/hooks/useTheme.ts — ключ localStorage там ДОЛЖЕН
* совпадать с этим скриптом). Если явного выбора нет — атрибут не
* проставляется, и работает системный автодетект из tokens.css
* (@media prefers-color-scheme: dark), см. design/DESIGN_SYSTEM.md §0.1.
*/
try {
var vidconfTheme = localStorage.getItem('vidconf-theme')
if (vidconfTheme === 'light' || vidconfTheme === 'dark') {
document.documentElement.setAttribute('data-theme', vidconfTheme)
}
} catch (e) {
// localStorage недоступен (приватный режим/политики браузера) — тема
// определится системным prefers-color-scheme, без сохранённого выбора.
}
</script>
</head>
<body>
<div id="root"></div>
<script type="module" src="/src/main.tsx"></script>
</body>
</html>