Initial commit: 79+ design patterns, LLM prompts, and assets

This commit is contained in:
Neo committed 2026-06-20 17:06:07 +05:00
commit 2b42a76d6d
112 files changed
+13652

No files matched your search

+360
View File
@@ -0,0 +1,360 @@
---
name: psychology/testimonials
title: Social Proof & Testimonials
description: Trust-building patterns: testimonials, logos, reviews, trust badges.
tags: [psychology, social-proof, trust, testimonials, conversion, cialdini]
source: stripe.com, linear.app, raycast.com, resend.com, cialdini.com
---
# Social Proof & Testimonials
## Что это
Шаблоны социального доказательства: отзывы, логотипы клиентов, цифры, trust badges. Основано на законе социального доказательства Роберта Циялдини.
## Пирамида Доверия
```
[Trust Badges + Security Certifications] ← Максимальное доверие
↓
[Logos of Known Clients] ← Доверие к бренду
↓
[Statistics / Numbers] ← Доверие к цифрам
↓
[Testimonials] ← Доверие к людям
↓
[Case Studies] ← Глубокое доверие
```
## Pattern 1: Logo Cloud (Monochrome)
```html
<section class="logo-cloud">
<p class="logo-cloud-label">Нам доверяют более 500 компаний</p>
<div class="logo-grid">
<img src="/clients/airbnb.svg" alt="Airbnb" loading="lazy">
<img src="/clients/linear.svg" alt="Linear" loading="lazy">
<img src="/clients/stripe.svg" alt="Stripe" loading="lazy">
<img src="/clients/vercel.svg" alt="Vercel" loading="lazy">
<img src="/clients/raycast.svg" alt="Raycast" loading="lazy">
<img src="/clients/resend.svg" alt="Resend" loading="lazy">
</div>
</section>
```
```css
.logo-cloud {
text-align: center;
padding: 80px 0;
border-bottom: 1px solid var(--color-border);
}
.logo-cloud-label {
font-size: 14px;
color: var(--color-text-muted);
text-transform: uppercase;
letter-spacing: 0.1em;
font-weight: 600;
margin-bottom: 32px;
}
.logo-grid {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
gap: 48px;
max-width: 800px;
margin: 0 auto;
}
.logo-grid img {
height: 32px;
width: auto;
opacity: 0.4;
filter: brightness(0) invert(1);
transition: opacity 0.3s ease;
}
.logo-grid img:hover {
opacity: 0.7;
}
/* Responsive */
@media (max-width: 768px) {
.logo-grid {
gap: 24px;
}
.logo-grid img {
height: 24px;
}
}
```
## Pattern 2: Testimonial Cards
```html
<section class="testimonials">
<h2>Что говорят наши клиенты</h2>
<div class="testimonial-grid">
<article class="testimonial-card">
<div class="testimonial-stars">
<span>★</span><span>★</span><span>★</span><span>★</span><span>★</span>
</div>
<blockquote>"calls24 помог нам увеличить конверсию из звонков на 40%. Мы знали о проблемах, но не видели их." — Мария К., Руководитель отдела продаж</blockquote>
<footer class="testimonial-author">
<img src="/avatars/maria.jpg" alt="Мария К." loading="lazy">
<div>
<strong>Мария К.</strong>
<span>Руководитель отдела продаж, Agency X</span>
</div>
</footer>
</article>
<article class="testimonial-card featured">
<div class="testimonial-stars">
<span>★</span><span>★</span><span>★</span><span>★</span><span>★</span>
</div>
<blockquote>"Мы протестировали 3 инструмента аналитики. calls24 — единственный, который дал реальные инсайты, а не просто цифры." — Алексей П., CEO</blockquote>
<footer class="testimonial-author">
<img src="/avatars/alexey.jpg" alt="Алексей П." loading="lazy">
<div>
<strong>Алексей П.</strong>
<span>CEO, RealEstate Pro</span>
</div>
</footer>
</article>
<article class="testimonial-card">
<div class="testimonial-stars">
<span>★</span><span>★</span><span>★</span><span>★</span><span>★</span>
</div>
<blockquote>"Теперь каждый менеджер знает, где ошибается. Еженедельный отчёт — наш инструмент развития." — Дмитрий В., Директор"
<footer class="testimonial-author">
<img src="/avatars/dmitry.jpg" alt="Дмитрий В." loading="lazy">
<div>
<strong>Дмитрий В.</strong>
<span>Директор, Broker Plus</span>
</div>
</footer>
</article>
</div>
</section>
```
```css
.testimonial-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
gap: 24px;
margin-top: 48px;
}
.testimonial-card {
background: var(--color-surface);
border: 1px solid var(--color-border);
border-radius: 20px;
padding: 32px;
transition: all 0.3s ease;
}
.testimonial-card:hover {
border-color: var(--color-border-hover);
transform: translateY(-4px);
}
.testimonial-card.featured {
border-color: var(--color-accent);
grid-column: span 1;
}
.testimonial-stars {
display: flex;
gap: 4px;
color: #fbbf24;
font-size: 20px;
margin-bottom: 16px;
}
.testimonial-card blockquote {
font-size: 1rem;
line-height: 1.7;
color: var(--color-text-secondary);
margin-bottom: 24px;
font-style: italic;
}
.testimonial-author {
display: flex;
align-items: center;
gap: 12px;
padding-top: 20px;
border-top: 1px solid var(--color-border);
}
.testimonial-author img {
width: 44px;
height: 44px;
border-radius: 50%;
object-fit: cover;
border: 2px solid var(--color-border);
}
.testimonial-author strong {
display: block;
font-size: 0.95rem;
}
.testimonial-author span {
font-size: 0.85rem;
color: var(--color-text-muted);
}
```
## Pattern 3: Numbers/Stats Bar
```html
<section class="stats">
<div class="stats-grid">
<div class="stat-item">
<span class="stat-number">99</span>
<span class="stat-label">звонков проанализировано</span>
</div>
<div class="stat-item">
<span class="stat-number gradient-text">85%</span>
<span class="stat-label">не соответствуют скрипту</span>
</div>
<div class="stat-item">
<span class="stat-number">40%</span>
<span class="stat-label">рост конверсии с calls24</span>
</div>
<div class="stat-item">
<span class="stat-number">500+</span>
<span class="stat-label">агентств используют</span>
</div>
</div>
</section>
```
```css
.stats {
padding: 80px 0;
border-bottom: 1px solid var(--color-border);
}
.stats-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 24px;
text-align: center;
}
.stat-number {
display: block;
font-size: 3rem;
font-weight: 900;
color: var(--color-accent);
margin-bottom: 8px;
}
.stat-label {
font-size: 0.875rem;
color: var(--color-text-muted);
text-transform: uppercase;
letter-spacing: 0.1em;
font-weight: 600;
}
@media (max-width: 768px) {
.stats-grid {
grid-template-columns: repeat(2, 1fr);
}
}
```
## Pattern 4: Trust Badges
```html
<div class="trust-badges">
<div class="trust-badge">
<svg width="24" height="24">🔒</svg>
<span>SSL encrypted</span>
</div>
<div class="trust-badge">
<svg width="24" height="24">🛡️</svg>
<span>GDPR compliant</span>
</div>
<div class="trust-badge">
<svg width="24" height="24">✓</svg>
<span>30-day free trial</span>
</div>
<div class="trust-badge">
<svg width="24" height="24">⭐</svg>
<span>4.9/5 on Trustpilot</span>
</div>
</div>
```
```css
.trust-badges {
display: flex;
gap: 24px;
flex-wrap: wrap;
justify-content: center;
}
.trust-badge {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 16px;
background: var(--color-surface);
border: 1px solid var(--color-border);
border-radius: 8px;
font-size: 0.875rem;
color: var(--color-text-secondary);
}
```
## Cialdini's Principles Applied
### 1. Social Proof (Люди делают как другие)
- Логотипы клиентов
- Количество пользователей
- Отзывы с фото
### 2. Authority (Доверие к экспертам)
- Сертификаты
- Отзывы от известных лиц
- Медиа-упоминания
### 3. Consistency (Последовательность)
- "Вы уже сделали первый шаг..."
- Продолжение бесплатного аудита
## Anti-patterns
| ❌ Плохо | ✅ Хорошо |
|----------|-----------|
| Fake testimonials | Реальные отзывы с фото |
| 1000+ клиентов (без доказательств) | "500+ агентств" + логотипы |
| Без context | С именем, должностью, компанией |
| Только текст | Текст + фото + цитата + звезды |
| Без trust badges | SSL, GDPR, сертификаты |
## CV Service Validation
```bash
# Проверить social proof
curl -s -X POST http://localhost:8001/design/analyze-dom \
-H "Content-Type: application/json" \
-d '{"html": "..."}' | python3 -c "
import sys, json
d = json.load(sys.stdin)
social = d['analyzers'].get('social_proof', {})
print(f\"Social Proof: {social.get('score', 'N/A')}/10\")
print(f\" Testimonials: {social.get('testimonials', 'N/A')}\")
print(f\" Logos: {social.get('client_logos', 'N/A')}\")
"
```
Ожидается: `social_proof` > 5 (должны быть отзывы/логотипы/цифры).