Easy-to-manage touch screens
Free, open-source touch screens. Guided USB setup, a drag-and-drop editor and local control. Made for Home Assistant.
15 августа, 16:00 — Челябинск
Translation pending
LifestyleJavaScript · CSSGitHub @KirillSenpaiOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
ANFISA
Translation pending
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
Все основные тексты и настройки приглашения теперь собраны в одном месте: app/invite-data.js. • couple — имена пары • dateIso — дата и время свадьбы • city — город • photoMain — путь к фото • photoAlt — подпись для изображения 1. Положи фото в public 2. Назови его couple.jpg 3. Оставь в invite-data.js строку photoMain: "/couple.jpg" Если файл будет называться иначе, поменяй путь:Read the full README ↗
Все основные тексты и настройки приглашения теперь собраны в одном месте: app/invite-data.js.
Файл: app/invite-data.js
Поля:
couple — имена парыdateIso — дата и время свадьбыcity — городПример:
couple: "Анна & Максим",
dateIso: "2026-09-05T15:30:00+05:00",
city: "Екатеринбург",
Формат dateIso: ГГГГ-ММ-ДДTЧЧ:ММ:СС+часовой_пояс
Пример:
2026-08-15T16:00:00+05:00
Файл с настройкой: app/invite-data.js
Поля:
photoMain — путь к фотоphotoAlt — подпись для изображенияКуда класть файл:
Самый простой вариант:
couple.jpginvite-data.js строку photoMain: "/couple.jpg"Если файл будет называться иначе, поменяй путь:
photoMain: "/our-photo.png",
photoAlt: "Анна и Максим",
Файл: app/invite-data.js
Основные поля:
posterTitleTop — верхний заголовокposterSubtitle — подзаголовокposterHeadline — крупный заголовок на постереposterText — основной текст приглашенияwishesTitle, wishesText — блок пожеланийdressTitle, dressText — блок дресс-кодаextraTitle, extraText — дополнительная информацияrsvpTitle, rsvpText — блок подтверждения присутствияfooterFarewell — надпись внизу справаФайл: app/invite-data.js
Поля:
venue — название площадкиaddress — адресmapLink — ссылка на картуСейчас venue и address сохранены в данных, но на самой странице используется в первую очередь кнопка mapLink. Если захочешь, я потом могу отдельно вывести название площадки и адрес прямо в интерфейс.
Файл: app/invite-data.js
Массив:
schedule: [
{ time: "16:00", title: "Сбор гостей", icon: "clock" },
{ time: "16:40", title: "Церемония", icon: "rings" }
]
Что можно менять:
time — времяtitle — подписьicon — иконкаДоступные icon:
clockringscakesparkФайл: app/invite-data.js
Поле:
dressColors: ["#d8ecfb", "#b8d8f0", "#90bddc", "#6ea7d8", "#4f759b"]
Это маленькие цветные кружки в блоке дресс-кода. Можно поставить любые HEX-цвета.
Файл: app/invite-data.js
Поля:
organizerNameorganizerPhoneTextorganizerPhoneTelВажно:
organizerPhoneText — красивое отображение для человекаorganizerPhoneTel — номер для кнопки звонка, лучше в формате +79001234567Файл: app/invite-data.js
Блок:
form: {
namePlaceholder: "Иван Иванов",
attendOptions: ["Да, буду", "Пока не уверен(а)", "К сожалению, не смогу"],
guestsOptions: ["1", "2", "3", "4"],
notePlaceholder: "Например: без орехов"
}
Здесь можно менять:
Файл: app/invite-data.js
Блок:
export const SITE_METADATA = {
title: `${INVITE.couple} — приглашение на свадьбу`,
description: "15 августа, 16:00 — Челябинск",
metadataBase: "https://example.com"
};
Что менять:
title — заголовок вкладки и превьюdescription — описаниеmetadataBase — реальный домен сайта после публикацииФайл app/layout.js теперь берёт эти данные автоматически.
Файл: app/globals.css
Если захочешь поменять стиль страницы, смотри в начало файла:
:root{
--bg:#99afc8;
--paper:#eef5fb;
--ink:#27445d;
--muted:#55708a;
--line:#91b7d8;
--accent:#6ea7d8;
}
Это главные цвета темы.
Файл: app/api/rsvp/route.js
Обычно этот файл менять не нужно. Для работы формы надо создать .env.local в корне проекта:
TELEGRAM_BOT_TOKEN=ваш_токен_бота
TELEGRAM_CHAT_ID=ваш_chat_id
Если хочешь просто адаптировать сайт под себя, обычно достаточно:
.env.local, если нужна отправка RSVP в TelegramЕсли захочешь, я могу следующим сообщением ещё упростить проект:
venue и address