feat: donate links on login screen + unified README support block

- public/index.html: gate-donate nav with Boosty/Ozon/Telegram on login
- public/styles.css: .gate-donate styles
- landing: proj-support-strip
- README: blockquote + "Поддержка проекта" section
- .github/FUNDING.yml: added
- version bumped to 1.2.28

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Андрей Бобырев
2026-05-15 05:52:17 +03:00
parent b212413e68
commit 038020408a
7 changed files with 167 additions and 4 deletions

3
.github/FUNDING.yml vendored
View File

@@ -1,5 +1,6 @@
# Как в https://github.com/andrey271192/domen_hydra/blob/main/.github/FUNDING.yml
github: andrey271192
custom:
- https://boosty.to/andrey27/donate
- https://finance.ozon.ru/apps/sbp/ozonbankpay/019dc200-2a5d-7931-a619-782d285f6798
- https://t.me/lot_andrey

View File

@@ -1,5 +1,16 @@
# amnezia_web-PRO
> Где поддержать: [Boosty (донат)](https://boosty.to/andrey27/donate) · [Ozon СБП](https://finance.ozon.ru/apps/sbp/ozonbankpay/019dc200-2a5d-7931-a619-782d285f6798) · [Telegram @lot_andrey](https://t.me/lot_andrey) · [**GitHub** ↗](https://github.com/andrey271192/amnezia_web-PRO)
## Поддержка проекта
---
-**GitHub:** [andrey271192/amnezia_web-PRO](https://github.com/andrey271192/amnezia_web-PRO)
- 💖 **Boosty:** [boosty.to/andrey27/donate](https://boosty.to/andrey27/donate)
- 💳 **Ozon Bank (СБП):** [ссылка](https://finance.ozon.ru/apps/sbp/ozonbankpay/019dc200-2a5d-7931-a619-782d285f6798)
- ✉️ **Telegram:** [@lot_andrey](https://t.me/lot_andrey)
Веб-панель на вашем VPS для управления клиентами **AmneziaWG**: вкл/выкл, удаление, переименование, дата отключения; при нескольких контейнерах — переключатель **«Инстанс»** (`AWG_PROFILES`); **экспорт .conf** при наличии `last_config`; **новый клиент под каскад** (свой Endpoint и ключи на сервере); **Telegram MTProtoпрокси** (отдельный контейнер `telegrammessenger/proxy`, управление из панели). **Cloudflare WARP***необязательное* дополнение: часть клиентов может выходить в интернет через интерфейс `warp` внутри контейнера AWG (ставится отдельно скриптом на хосте). Работает через Docker и `docker exec` в контейнер **Amnezia** (по умолчанию `amnezia-awg2`).
Справочник по интерфейсу, типичным сбоям и HTTP API: **[docs/panel-guide.md](docs/panel-guide.md)**.

View File

@@ -21,6 +21,19 @@
</div>
</header>
<div class="proj-support-strip" role="navigation" aria-label="Поддержка и донат — проект панелей">
<div class="proj-support-inner">
<span class="proj-support-lead">Панели Amnezia Admin · поддержать проект:</span>
<a href="https://github.com/andrey271192/amnezia_web" target="_blank" rel="noopener noreferrer">⭐ GitHub</a>
<span class="proj-support-dot" aria-hidden="true">·</span>
<a href="https://boosty.to/andrey27/donate" target="_blank" rel="noopener noreferrer">💖 Boosty</a>
<span class="proj-support-dot" aria-hidden="true">·</span>
<a href="https://finance.ozon.ru/apps/sbp/ozonbankpay/019dc200-2a5d-7931-a619-782d285f6798" target="_blank" rel="noopener noreferrer">💳 Ozon&nbsp;СБП</a>
<span class="proj-support-dot" aria-hidden="true">·</span>
<a href="https://t.me/lot_andrey" target="_blank" rel="noopener noreferrer">✉️ Telegram&nbsp;@lot_andrey</a>
</div>
</div>
<section class="hero">
<div class="hero-badge">Частный сервер</div>
<h1>Подключение к VPN</h1>

View File

@@ -839,6 +839,45 @@ body {
text-align: right;
}
.proj-support-strip {
border-bottom: 1px solid var(--border);
background: linear-gradient(90deg, rgba(29, 158, 117, 0.12), rgba(55, 138, 221, 0.08));
padding: 0.4rem 1rem;
}
.proj-support-inner {
max-width: 900px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
gap: 0.35rem 0.65rem;
font-size: 12px;
color: var(--muted);
}
.proj-support-lead {
margin-right: 0.25rem;
opacity: 0.95;
}
.proj-support-dot {
opacity: 0.35;
user-select: none;
}
.proj-support-inner a {
color: #5fd8b0;
text-decoration: none;
white-space: nowrap;
font-weight: 600;
}
.proj-support-inner a:hover {
text-decoration: underline;
}
.site-footer {
border-top: 1px solid var(--border);
padding: 1.75rem 1.5rem 2rem;

View File

@@ -1,6 +1,6 @@
{
"name": "amnezia-admin",
"version": "1.2.0",
"version": "1.2.28",
"private": true,
"description": "amnezia_web-PRO — веб-панель AmneziaWG: несколько инстансов, WARP, каскад/Endpoint, экспорт .conf (Docker)",
"license": "MIT",

View File

@@ -7,9 +7,24 @@
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;600;700&family=JetBrains+Mono:wght@400;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/styles.css">
<link rel="stylesheet" href="/styles.css?v=1.2.28">
</head>
<body class="page">
<aside class="panel-promo-strip" role="complementary" aria-label="Поддержка и донат">
<div class="panel-promo-strip-inner">
<p class="panel-promo-subtitle muted">Поддержите проект через Boosty, Ozon СБП и Telegram — ниже те же ссылки в подвале.</p>
<div class="panel-promo-links">
<a class="panel-promo-a" href="https://github.com/andrey271192/amnezia_web-PRO" target="_blank" rel="noopener noreferrer">⭐ GitHub · PRO</a>
<span class="panel-promo-sep" aria-hidden="true">·</span>
<a class="panel-promo-a" href="https://boosty.to/andrey27/donate" target="_blank" rel="noopener noreferrer">💖 Boosty</a>
<span class="panel-promo-sep" aria-hidden="true">·</span>
<a class="panel-promo-a" href="https://finance.ozon.ru/apps/sbp/ozonbankpay/019dc200-2a5d-7931-a619-782d285f6798" target="_blank" rel="noopener noreferrer">💳 Ozon&nbsp;СБП</a>
<span class="panel-promo-sep" aria-hidden="true">·</span>
<a class="panel-promo-a" href="https://t.me/lot_andrey" target="_blank" rel="noopener noreferrer">✉️ Telegram&nbsp;@lot_andrey</a>
</div>
</div>
</aside>
<div id="login-gate" class="gate hidden" aria-hidden="true">
<div class="gate-card">
<p class="eyebrow">Панель сервера</p>
@@ -21,6 +36,16 @@
<button type="submit" class="btn primary full">Войти</button>
<p id="login-error" class="status err" role="alert"></p>
</form>
<nav class="gate-donate muted" aria-label="Поддержка и донат">
Поддержка веб‑панелей (вне этого сервера):<br/>
<a href="https://github.com/andrey271192/amnezia_web-PRO" target="_blank" rel="noopener noreferrer">GitHub · PRO</a>
<span class="gate-donate-dot" aria-hidden="true">·</span>
<a href="https://boosty.to/andrey27/donate" target="_blank" rel="noopener noreferrer">Boosty</a>
<span class="gate-donate-dot" aria-hidden="true">·</span>
<a href="https://finance.ozon.ru/apps/sbp/ozonbankpay/019dc200-2a5d-7931-a619-782d285f6798" target="_blank" rel="noopener noreferrer">Ozon СБП</a>
<span class="gate-donate-dot" aria-hidden="true">·</span>
<a href="https://t.me/lot_andrey" target="_blank" rel="noopener noreferrer">Telegram</a>
</nav>
</div>
</div>
@@ -293,6 +318,6 @@
</div>
</dialog>
<script src="/app.js" type="module"></script>
<script src="/app.js?v=1.2.28" type="module"></script>
</body>
</html>

View File

@@ -26,6 +26,59 @@ body.page {
flex-direction: column;
}
.panel-promo-strip {
flex-shrink: 0;
position: sticky;
top: 0;
z-index: 40;
border-bottom: 1px solid rgba(125, 211, 252, 0.28);
background: linear-gradient(90deg, rgba(30, 41, 59, 0.94), rgba(15, 23, 42, 0.96));
backdrop-filter: blur(8px);
}
.panel-promo-strip-inner {
box-sizing: border-box;
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 0.5rem 1.25rem;
max-width: min(1120px, 100%);
margin: 0 auto;
padding: 0.55rem clamp(1rem, 3vw, 1.5rem);
}
.panel-promo-subtitle {
margin: 0;
flex: 1 1 16rem;
font-size: 0.82rem;
line-height: 1.45;
}
.panel-promo-links {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 0.35rem 0.65rem;
}
.panel-promo-a {
font-weight: 650;
font-size: 0.86rem;
color: #fde68a;
text-decoration: none;
white-space: nowrap;
}
.panel-promo-a:hover {
text-decoration: underline;
}
.panel-promo-sep {
color: var(--muted);
font-weight: 700;
user-select: none;
}
.shell {
flex: 1 0 auto;
max-width: min(1120px, 100%);
@@ -144,6 +197,27 @@ h1 {
margin-bottom: 0.75rem;
}
.gate-donate {
margin-top: 1rem;
padding-top: 0.9rem;
border-top: 1px dashed rgba(148, 163, 184, 0.45);
font-size: 0.84rem;
line-height: 1.65;
}
.gate-donate a {
color: var(--accent);
font-weight: 650;
white-space: nowrap;
}
.gate-donate-dot {
display: inline-block;
opacity: 0.45;
margin: 0 0.2rem;
user-select: none;
}
.btn.full {
width: 100%;
margin-top: 0.25rem;