尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
Живая фотостена для мероприятий: свадеб, дней рождения, корпоративов, концертов. Организатор создаёт событие и получает QR-код. Гости сканируют его телефоном и загружают фото без регистрации, а снимки сразу появляются на общей стене, которую можно вывести на экран или проектор.查看完整 README ↗
Живая фотостена для мероприятий: свадеб, дней рождения, корпоративов, концертов.
Организатор создаёт событие и получает QR-код. Гости сканируют его телефоном и загружают фото без регистрации, а снимки сразу появляются на общей стене, которую можно вывести на экран или проектор.
Сайт: https://eventwall00.vercel.app
Телефон / браузер
│
▼
Vercel — frontend (Next.js) frontend/
│ REST API + SSE
▼
Render — backend (NestJS) backend/
│
▼
Supabase — PostgreSQL + хранилище фото
| Часть | Технологии | Подробности |
|---|---|---|
frontend/ | Next.js (App Router), React, TypeScript, Tailwind CSS v4 | frontend/README.md |
backend/ | NestJS, TypeScript, Prisma, PostgreSQL, JWT, Google OAuth | backend/README.md — API, авторизация, команды |
| Деплой | Supabase → Render → Vercel | DEPLOY.md — пошагово |
QR-код события рисуется прямо в браузере из ссылки гостя (/e/{slug}), поэтому показывается сразу,
даже пока сервер просыпается.
Нужен Node.js 24+.
# 1. Бэкенд — http://localhost:8000/api
cd backend
npm install
cp .env.example .env # заполнить секреты, ADMIN_EMAIL и ADMIN_PASSWORD
npm run db:local # локальная база PostgreSQL
npm run db:migrate:dev
npm run db:seed -- --demo # админ + демо-данные
npm run start:dev
# 2. Фронтенд — http://localhost:3000 (в другом терминале)
cd frontend
npm install
cp .env.example .env.local
npm run dev
С телефона в той же Wi-Fi сети сайт открывается по IP компьютера: http://192.168.x.x:3000.
Пока компьютер выключен или спит, локальная версия, конечно, не работает — для этого есть версия на Vercel.
Локальная база и база сайта — разные. Аккаунты, созданные локально, на сайте не существуют: там нужно зарегистрироваться заново. Админ на сайте создаётся из
ADMIN_EMAIL/ADMIN_PASSWORDв настройках Render (Environment) при первом запуске; позже пароль из переменной уже не перезаписывается.
git push в ветку main — Vercel и Render сами пересоберут проект.
Бесплатный сервер Render засыпает после 15 минут без запросов, и первый запрос после этого идёт около минуты.
Чтобы этого не было, внешний монитор (UptimeRobot или cron-job.org) каждые 5 минут обращается к
https://eventwall-api.onrender.com/api/health. Заодно это не даёт бесплатному Supabase уйти на паузу.
Если сервер всё же уснул, сайт при открытии сразу отправляет фоновый запрос к /api/health
(WakeApi.tsx), и сервер начинает просыпаться, пока посетитель читает страницу.
├── frontend/ сайт (Next.js)
├── backend/ API (NestJS + Prisma)
├── render.yaml настройки сервиса на Render
├── DEPLOY.md инструкция по деплою
└── .github/workflows/ пинг сервера, чтобы он не засыпал