Asset brand + pagina download + 1-click download endpoint
- assets/: script generate_logo.py + generate_ls_images.py per produrre
loghi (mark/horizontal light+dark/stacked light+dark) e immagini
prodotto Lemon Squeezy (thumbnail 1024x1024, cover 1920x1080,
OG 1200x630). Riproducibili: rilanciare gli script per rigenerare.
- landing/download.html: pagina con form email+chiave o autofill da
query string ?key=&email= (link 1-click dall'email). Bottoni
Mac/Windows + istruzioni installazione per OS.
- landing/index.html: link Download in nav, hero ("Hai gia
acquistato?"), pricing card ("Hai gia una licenza?"), footer.
- landing/js/main.js: rimosso warning placeholder LS (URL ora reale).
- server/src/downloads.js: endpoint GET /api/download/:platform
che verifica (key, email) contro DB e redirect a URL firmato del
binario. Errori chiari (400/401/403/503) leggibili dall'utente.
- server/src/email.js: template Resend con 2 bottoni 1-click
(link con key+email gia compilati).
- server/src/server.js: route aggiunta.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
1 parent
8272985459
commit
bcd4f22b1e
17 files changed
+812
-28
No files matched your search
@@ -775,3 +775,31 @@ a { color: inherit; text-decoration: none; }
|
||||
}
|
||||
.price-consent a { color: var(--text-muted); text-decoration: underline; }
|
||||
.price-consent a:hover { color: var(--accent); }
|
||||
|
||||
/* ============================================================
|
||||
"Hai gia acquistato? Scarica" — link discreti
|
||||
============================================================ */
|
||||
.hero-customer {
|
||||
margin: 18px 0 0;
|
||||
font-size: 13.5px;
|
||||
color: var(--text-dim);
|
||||
}
|
||||
|
||||
.hero-customer a {
|
||||
color: var(--accent);
|
||||
font-weight: 700;
|
||||
text-decoration: none;
|
||||
}
|
||||
.hero-customer a:hover { text-decoration: underline; }
|
||||
|
||||
.price-already {
|
||||
margin: 10px 0 0 !important;
|
||||
font-size: 13px !important;
|
||||
color: var(--text-muted) !important;
|
||||
}
|
||||
.price-already a {
|
||||
color: var(--accent);
|
||||
font-weight: 700;
|
||||
text-decoration: none;
|
||||
}
|
||||
.price-already a:hover { text-decoration: underline; }
|
||||
Reference in new issue
Block a user