[verdetto][prompt curato][fonte: showtrust.to]
Posso vibecodare ShowTrust?
// una sessione, versione personale usabile
Un form di invio, una coda di approvazione, una griglia di card da incorporare: nessun algoritmo, un agent ne fa una versione funzionante in una sessione. La fregatura è che la versione hosted è gratis per un singolo sito, senza tetto sulle testimonianze: spenderesti un weekend per sostituire zero dollari.
confidenza: media
cos’è: Un link condivisibile che raccoglie testimonianze e un widget che un agent può installarti da solo
Indice di costruibilità · gioco editoriale
- Prezzo 4,99 $/mese peso: zero
- Tempo una sessione peso: più 3
- Categoria testimonianze non pesa
- Moat qualità di esecuzione peso: meno 1
- Confidenza media peso: zero
- Cosa perdi 5 voci peso: meno 2
- Sito showtrust.to (si apre in una nuova scheda) non pesa
Si pareggiano. È il caso in cui decide quanto ti sta antipatico l’abbonamento.
Gioco editoriale: il verdetto dice se un agente può, l’indice se conviene.
Cosa costruisci
Una pagina pubblica raccoglie nome, foto, voto in stelle e citazione; tu le approvi; quelle approvate finiscono in un wall incorporabile sul tuo sito.
cosa ti serve
- un piccolo host sempre acceso
- un posto dove mettere gli avatar caricati (va bene il disco locale)
Gratis e senza limiti per un sito, quindi costruirselo è un hobby più che un risparmio · il badge sulla pagina di raccolta è l'unico vero motivo per fare self-hosting.
Il prompt
Una sessione con un agente di coding e la tua versione gira.
Build me a testimonial collection and display tool. Requirements:
- Stack: one Node + TypeScript service (Fastify) with SQLite via better-sqlite3 and local disk
for uploads. No Docker, no separate frontend build, no customer accounts.
- A public collection page at /c/:slug · name, role, company, avatar upload, 1-5 star rating,
and the quote. Each field individually toggleable per project from a config row. Submissions
land as pending. Show a thank-you state after submit.
- An /admin page behind basic auth from .env: pending queue with approve/reject, plus pin and
delete on approved ones. Nothing is public until approved.
- An embeddable wall: GET /widget.js injects the approved testimonials into any page via one
script tag plus a div, rendered into a shadow DOM so the host page's CSS can't leak in.
No iframe.
- Offer three layouts (masonry, single-column list, horizontal carousel) and read layout,
accent colour, light/dark theme and card corner radius from data- attributes on the tag.
- Server-render the widget HTML and have the script fetch it, so the testimonials are in the
response rather than assembled client-side. Cache it with a short max-age plus
stale-while-revalidate.
- Render every approved card in that response and hide the ones past a configurable initial
count, then have Load More just unhide them · no second request, one paint, and the full set
is in the HTML for crawlers.
- Drive all sizing from CSS custom properties on the container rather than per-element inline
styles, so one stylesheet covers every layout and card style.
- Avatars resized server-side to 128px squares on upload with sharp; reject files over 5MB.
- Count impressions and click-throughs in SQLite · fire an impression only after the wall has
been intersecting for one second, latch it so it can't fire twice per page load, and filter
obvious bot user agents server-side.
- Rate-limit submissions per IP and add a honeypot field, because a public form will get spam.
- Ship a README with the paste-in snippet and VPS deploy steps behind TLS.
- Deliberately out of scope: video testimonials, importing from other platforms, team seats,
and email notifications. Prompt curato: scritto e rivisto a mano per questa app. In inglese di proposito — è la lingua in cui gli agenti di coding rendono meglio.
Cosa perdi
- un piano gratuito · un sito con testimonianze illimitate in versione hosted non costa nulla, quindi la build DIY parte già in svantaggio sul prezzo
- l'installazione stessa · un agent può creare l'account dalla sola email, ottenere credenziali funzionanti nella stessa risposta, creare il progetto e incollare lo snippet nel tuo framework, lasciando all'umano solo un link di conferma da cliccare · la tua build invece devi andartela a deployare
- la superficie di personalizzazione che altrimenti costruiresti a mano · più layout, otto stili di card, palette di colori e slider per larghezza, spaziatura e raggio, tutti con anteprima invece che ritoccati a mano nel CSS
- i dati su cosa ha funzionato · tracciamento di impression e click sulle CTA, con click-through rate e i domini su cui il tuo wall viene davvero visto
- le testimonianze verificate su X · un flusso OAuth che legge lo stato di verifica di X, così la citazione è legata in modo dimostrabile a un handle e a un avatar reali
Perché pagano ancora
Per un solo sito non pagano · è gratis, senza limiti e senza funzioni bloccate, quindi il piano a pagamento esiste solo per aggiungere un secondo progetto. Quello a cui rinunci facendo self-hosting è più piccolo e più noioso dei soldi: i controlli di layout e stile sono una bella fetta di frontend fastidioso, e il tracciamento delle impression ti dice se il wall stia facendo qualcosa, cosa che una versione fatta in casa tace. Un appunto onesto contro la versione hosted · la pagina di raccolta porta la scritta «Powered by ShowTrustTo» su ogni piano, a pagamento compreso, e non c'è nessun interruttore per toglierla. Se quel badge su una pagina che mandi ai clienti ti dà fastidio, già solo questo è un motivo legittimo per costruirti il tuo.
moat: Qualità di esecuzione cos’è un moat
piano gratuito e rifinitura
Alternative gratuite
Non hai voglia di costruirtelo? Queste esistono già, sono gratis o open source, e le abbiamo controllate una per una.
Scartate (2) — e perché
- Reviewskits (si apre in una nuova scheda) — Uno stack headless giovane, con 52 stelle, nessuna release e un buco a forma di SDK dove dovrebbe esserci il widget no-code.
- Senja (si apre in una nuova scheda) — Curato e davvero gratuito, fino alla sedicesima testimonianza; dopo, il lavoro principale di raccolta diventa a pagamento.
Sei d’accordo?
La bilancia dei voti
Ancora nessun voto: il tuo è il primo.
Nessun voto ancora — il primo pesa.