VetrinaPronta by Sirio Project

Il generatore di cartelli che trasforma la tua vetrina in 60 secondi.

Crea cartelli, avvisi, QR code, mini grafiche e materiali pronti da stampare per negozi, bar, ristoranti, studi, palestre, farmacie, hotel e attività locali. Scegli il bisogno, personalizza il messaggio, scarica il file oppure trasformalo in vetrofania professionale.

Non un editor complicato. Un generatore immediato.

Inserisci nome attività, città, messaggio e link QR. Il tool crea un output ordinato, leggibile, coerente e pronto per stampa, social, WhatsApp o vetrina.

45+Modelli pronti per attività locali
6Formati di esportazione e utilizzo
QRWhatsApp, recensioni, menù, sito, Maps
KitA4, post social, story e banner in ZIP

Anteprima live

Il file che vedi qui è quello che puoi scaricare e utilizzare.

A4 Cartello Signature

Consiglio per la vetrina

    Come monetizzarlo con Sirio

      Vuoi trasformarlo in vetrofania, adesivo o cartello professionale?

      Sirio Project realizza insegne, vetrofanie, adesivi, pannelli, banner e materiali coordinati per attività locali. Puoi copiare il brief e inviarlo per ricevere un preventivo personalizzato.

      Preventivo Gratuito
      Fatto
      `); win.document.close(); win.focus(); setTimeout(() => win.print(), 350); }function buildBrief() { const t = templates[els.template.value]; return `Richiesta per Sirio ProjectVorrei trasformare questo cartello in materiale professionale.Tipo cartello: ${t.label} Obiettivo: ${t.intent} Settore attività: ${els.sector.options[els.sector.selectedIndex].text} Formato scelto: ${formatData[els.format.value].label} Layout: ${els.layout.options[els.layout.selectedIndex].text} Palette: ${els.palette.options[els.palette.selectedIndex].text}Nome attività: ${els.business.value} Città: ${els.city.value}Titolo: ${els.title.value}Sottotitolo: ${els.subtitle.value}Messaggio: ${els.body.value}Nota finale: ${els.footer.value}QR code: ${els.qr.value || "Non inserito"}Etichetta QR: ${els.qrLabel.value || "Non inserita"}Mi interessa valutare: - vetrofania adesiva - adesivo removibile da vetrina - pannello/cartello rigido - banner - stampa professionale - kit coordinato vetrina + social - eventuale installazione`; }async function copyBrief() { const text = buildBrief();try { await navigator.clipboard.writeText(text); showToast("Brief copiato"); } catch (e) { const temp = document.createElement("textarea"); temp.value = text; document.body.appendChild(temp); temp.select(); document.execCommand("copy"); temp.remove(); showToast("Brief copiato"); } }function randomStyle() { const paletteKeys = Object.keys(palettes); const layoutKeys = ["signature", "bold", "editorial", "clean", "qrhero", "window"]; const densityKeys = ["balanced", "minimal", "strong"];els.palette.value = paletteKeys[Math.floor(Math.random() * paletteKeys.length)]; els.layout.value = layoutKeys[Math.floor(Math.random() * layoutKeys.length)]; els.density.value = densityKeys[Math.floor(Math.random() * densityKeys.length)];applyPalette(false); render(); showToast("Variante creata"); }function setDemoSaldi() { els.template.value = "saldi"; els.sector.value = "negozio"; els.tone.value = "urgente"; els.business.value = "Boutique Centrale"; els.city.value = "Bologna"; els.palette.value = "redsale"; els.layout.value = "bold"; els.format.value = "window"; applyPalette(false); generateBetterCopy(); els.app.scrollIntoView({ behavior: "smooth", block: "start" }); }function attachEvents() { $$(".vp-tab").forEach(btn => { btn.addEventListener("click", () => { $$(".vp-tab").forEach(b => b.classList.remove("active")); $$(".vp-tab-panel").forEach(p => p.classList.remove("active")); btn.classList.add("active"); root.querySelector(`[data-panel="${btn.dataset.tab}"]`).classList.add("active"); }); });els.search.addEventListener("input", populateTemplates); els.template.addEventListener("change", () => applyTemplate(els.template.value));[ els.sector, els.tone, els.business, els.city, els.title, els.subtitle, els.body, els.footer, els.qr, els.qrLabel, els.format, els.layout, els.density, els.accent, els.dark, els.brandMark, els.qrEnabled, els.useTexture ].forEach(el => { el.addEventListener("input", render); el.addEventListener("change", render); });els.palette.addEventListener("change", () => applyPalette(true));els.logo.addEventListener("change", function () { const file = this.files && this.files[0]; if (!file) { logoDataUrl = ""; render(); return; }const reader = new FileReader(); reader.onload = e => { logoDataUrl = e.target.result; render(); }; reader.readAsDataURL(file); });$("#vpGenerateCopy").addEventListener("click", generateBetterCopy); $("#vpRandomStyle").addEventListener("click", randomStyle); $("#vpSmartPair").addEventListener("click", applySectorDesign); $("#vpDownloadPng").addEventListener("click", downloadPng); $("#vpDownloadPdf").addEventListener("click", downloadPdf); $("#vpDownloadSvg").addEventListener("click", downloadSvg); $("#vpPrint").addEventListener("click", printSign); $("#vpDownloadKit").addEventListener("click", downloadKit); $("#vpCopyBrief").addEventListener("click", copyBrief); $("#vpDemoBtn").addEventListener("click", setDemoSaldi); $("#vpScrollToTool").addEventListener("click", () => { els.app.scrollIntoView({ behavior: "smooth", block: "start" }); }); }function init() { populateCategories(); populateTemplates(); els.template.value = "ferie"; applyTemplate("ferie", false); attachEvents(); applyPalette(false); render(); }init(); })();