@jjlmoya/utils-social 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +60 -0
- package/src/category/i18n/en.ts +23 -0
- package/src/category/i18n/es.ts +23 -0
- package/src/category/i18n/fr.ts +23 -0
- package/src/category/index.ts +13 -0
- package/src/category/seo.astro +15 -0
- package/src/components/PreviewNavSidebar.astro +116 -0
- package/src/components/PreviewToolbar.astro +143 -0
- package/src/data.ts +11 -0
- package/src/env.d.ts +5 -0
- package/src/index.ts +27 -0
- package/src/layouts/PreviewLayout.astro +117 -0
- package/src/pages/[locale]/[slug].astro +146 -0
- package/src/pages/[locale].astro +251 -0
- package/src/pages/index.astro +4 -0
- package/src/tests/faq_count.test.ts +19 -0
- package/src/tests/locale_completeness.test.ts +42 -0
- package/src/tests/mocks/astro_mock.js +2 -0
- package/src/tests/no_h1_in_components.test.ts +48 -0
- package/src/tests/seo_length.test.ts +22 -0
- package/src/tests/tool_validation.test.ts +17 -0
- package/src/tool/redditFormatter/bibliography.astro +14 -0
- package/src/tool/redditFormatter/component.astro +246 -0
- package/src/tool/redditFormatter/i18n/en.ts +193 -0
- package/src/tool/redditFormatter/i18n/es.ts +193 -0
- package/src/tool/redditFormatter/i18n/fr.ts +193 -0
- package/src/tool/redditFormatter/index.ts +34 -0
- package/src/tool/redditFormatter/logic.ts +24 -0
- package/src/tool/redditFormatter/seo.astro +14 -0
- package/src/tool/redditFormatter/ui.ts +13 -0
- package/src/tool/safeZones/bibliography.astro +14 -0
- package/src/tool/safeZones/component.astro +857 -0
- package/src/tool/safeZones/i18n/en.ts +244 -0
- package/src/tool/safeZones/i18n/es.ts +244 -0
- package/src/tool/safeZones/i18n/fr.ts +244 -0
- package/src/tool/safeZones/index.ts +34 -0
- package/src/tool/safeZones/logic.ts +137 -0
- package/src/tool/safeZones/seo.astro +14 -0
- package/src/tool/safeZones/ui.ts +34 -0
- package/src/tool/socialImageResizer/bibliography.astro +14 -0
- package/src/tool/socialImageResizer/component.astro +498 -0
- package/src/tool/socialImageResizer/i18n/en.ts +211 -0
- package/src/tool/socialImageResizer/i18n/es.ts +211 -0
- package/src/tool/socialImageResizer/i18n/fr.ts +211 -0
- package/src/tool/socialImageResizer/index.ts +34 -0
- package/src/tool/socialImageResizer/logic.ts +133 -0
- package/src/tool/socialImageResizer/seo.astro +14 -0
- package/src/tool/socialImageResizer/ui.ts +7 -0
- package/src/tool/socialValueCalculator/bibliography.astro +14 -0
- package/src/tool/socialValueCalculator/component.astro +829 -0
- package/src/tool/socialValueCalculator/i18n/en.ts +310 -0
- package/src/tool/socialValueCalculator/i18n/es.ts +310 -0
- package/src/tool/socialValueCalculator/i18n/fr.ts +310 -0
- package/src/tool/socialValueCalculator/index.ts +34 -0
- package/src/tool/socialValueCalculator/logic.ts +60 -0
- package/src/tool/socialValueCalculator/seo.astro +14 -0
- package/src/tool/socialValueCalculator/ui.ts +31 -0
- package/src/tool/tinderPhotoOptimizer/bibliography.astro +14 -0
- package/src/tool/tinderPhotoOptimizer/component.astro +1514 -0
- package/src/tool/tinderPhotoOptimizer/i18n/en.ts +248 -0
- package/src/tool/tinderPhotoOptimizer/i18n/es.ts +248 -0
- package/src/tool/tinderPhotoOptimizer/i18n/fr.ts +248 -0
- package/src/tool/tinderPhotoOptimizer/index.ts +34 -0
- package/src/tool/tinderPhotoOptimizer/logic.ts +199 -0
- package/src/tool/tinderPhotoOptimizer/seo.astro +14 -0
- package/src/tool/tinderPhotoOptimizer/ui.ts +37 -0
- package/src/tool/youtubeThumbnail/bibliography.astro +14 -0
- package/src/tool/youtubeThumbnail/component.astro +419 -0
- package/src/tool/youtubeThumbnail/i18n/en.ts +207 -0
- package/src/tool/youtubeThumbnail/i18n/es.ts +207 -0
- package/src/tool/youtubeThumbnail/i18n/fr.ts +207 -0
- package/src/tool/youtubeThumbnail/index.ts +34 -0
- package/src/tool/youtubeThumbnail/logic.ts +7 -0
- package/src/tool/youtubeThumbnail/seo.astro +14 -0
- package/src/tool/youtubeThumbnail/ui.ts +13 -0
- package/src/tool/youtubeThumbnailPreviewer/bibliography.astro +14 -0
- package/src/tool/youtubeThumbnailPreviewer/component.astro +791 -0
- package/src/tool/youtubeThumbnailPreviewer/i18n/en.ts +321 -0
- package/src/tool/youtubeThumbnailPreviewer/i18n/es.ts +321 -0
- package/src/tool/youtubeThumbnailPreviewer/i18n/fr.ts +321 -0
- package/src/tool/youtubeThumbnailPreviewer/index.ts +34 -0
- package/src/tool/youtubeThumbnailPreviewer/seo.astro +14 -0
- package/src/tool/youtubeThumbnailPreviewer/ui.ts +19 -0
- package/src/tools.ts +10 -0
- package/src/types.ts +72 -0
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { TinderPhotoOptimizerUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'tinder-photo-optimizer';
|
|
6
|
+
const title = 'Tinder Photo Optimizer: Face Analysis and Composition';
|
|
7
|
+
const description =
|
|
8
|
+
'Optimize your Tinder photos with algorithmic face analysis. Simulates the 2026 interface, analyzes scientific framing and eye-line, exports perfect 9:16 portrait photos to maximize matches.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'How does this tool improve my Tinder matches?',
|
|
13
|
+
answer:
|
|
14
|
+
'The tool analyzes key technical factors: face size ratio (ideal 30-50%), eye line position relative to the upper third, frame coverage and Tinder interface dead zones. By adjusting these parameters, your photo projects more confidence and passes the visual filters of the algorithm.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: 'Is it safe to upload my photos here?',
|
|
18
|
+
answer:
|
|
19
|
+
'Completely safe. All processing happens in your browser via the Canvas API. Your photos are never sent to any server or stored anywhere.',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: 'What exactly does the AI face detection do?',
|
|
23
|
+
answer:
|
|
24
|
+
'It uses face-api.js to detect 68 facial landmarks, analyze expression (smile, serious look), evaluate eye position and measure head tilt. All analysis happens locally on your device.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Why does it recommend 1.2x zoom?',
|
|
28
|
+
answer:
|
|
29
|
+
'Smartphone front cameras use wide-angle optics (24mm) that distort faces with barrel aberration. A 1.2x zoom simulates a 50-85mm focal length, eliminating distortion and providing more natural and attractive facial proportions.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Upload your photo',
|
|
36
|
+
text: 'Drag or click the Tinder simulator to load your image.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Analyze the composition',
|
|
40
|
+
text: 'AI automatically detects your face and shows metrics for face size, eye line, coverage and expression.',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Fine-tune',
|
|
44
|
+
text: 'Use the zoom and brightness controls, activate auto-focus or manually drag the image inside the simulator.',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'Download optimized',
|
|
48
|
+
text: 'Export your photo in native 1080x1920 format optimized for Tinder, with clean metadata.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'UtilityApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'USD' },
|
|
83
|
+
inLanguage: 'en',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export const content: ToolLocaleContent<TinderPhotoOptimizerUI> = {
|
|
87
|
+
slug,
|
|
88
|
+
title,
|
|
89
|
+
description,
|
|
90
|
+
faqTitle: 'Frequently Asked Questions',
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliographyTitle: 'References',
|
|
93
|
+
bibliography: [
|
|
94
|
+
{
|
|
95
|
+
name: 'face-api.js: JavaScript Face Recognition in the Browser',
|
|
96
|
+
url: 'https://github.com/justadudewhohacks/face-api.js',
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
name: 'MDN Web Docs: Canvas API',
|
|
100
|
+
url: 'https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API',
|
|
101
|
+
},
|
|
102
|
+
],
|
|
103
|
+
howTo: howToData,
|
|
104
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
105
|
+
seo: [
|
|
106
|
+
{
|
|
107
|
+
type: 'title',
|
|
108
|
+
text: 'Tinder Photo Optimizer: The Definitive Scientific and Technical Guide (2026)',
|
|
109
|
+
level: 2,
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
type: 'paragraph',
|
|
113
|
+
html: "In the digital dating ecosystem, your Tinder profile is processed by two algorithms simultaneously: the platform's own advanced vision algorithm and the human brain of the user swiping. Our tool integrates principles of <strong>evolutionary psychology</strong>, <strong>facial biometrics</strong> and <strong>digital signal processing</strong> to ensure your image projects maximum social value and technical appeal.",
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
type: 'title',
|
|
117
|
+
text: 'The Psychology of First Impression: The 1.2-Second Effect',
|
|
118
|
+
level: 3,
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
type: 'paragraph',
|
|
122
|
+
html: 'Neuroscientific studies indicate that the human brain takes approximately 1/10 of a second to form an initial impression about how trustworthy someone appears. On Tinder, you have just over one second before the next swipe. Our tool analyzes the factors that accelerate positive decision-making:',
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
type: 'list',
|
|
126
|
+
items: [
|
|
127
|
+
'<strong>Eye Contact and Gaze Line:</strong> Direct eye contact activates brain regions related to social reward. Positioning your eyes in the upper third maximizes the chance the user will pause at your gaze before reading your name.',
|
|
128
|
+
'<strong>Asymmetry and Posture:</strong> A slight tilt can soften aggressive features, but excessive head roll conveys instability. Our algorithm measures the exact angle to keep you in the confidence range.',
|
|
129
|
+
'<strong>Figure-Ground Contrast:</strong> The system rewards photos where the subject is clearly separated from the background. A well-defined technical profile helps the rendering engine highlight your face over competitors.',
|
|
130
|
+
],
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
type: 'title',
|
|
134
|
+
text: 'Technical Lens Analysis: The Wide-Angle Problem',
|
|
135
|
+
level: 3,
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
type: 'paragraph',
|
|
139
|
+
html: 'Almost all profile photos are taken with smartphones, whose front cameras are wide-angle. The most common mistake is getting too close to the device.',
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
type: 'paragraph',
|
|
143
|
+
html: '<strong>Barrel Aberration:</strong> At less than one meter distance, a 24mm lens (standard on phones) expands the center of the image. This makes noses look bigger and faces rounder than they really are. Our <strong>1.2x Zoom</strong> recommendation is corrective: by applying a slight digital crop, you simulate a 50mm to 85mm focal length — the golden focal length photographers use to slim the face and maintain real proportions.',
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'title',
|
|
147
|
+
text: "Tinder's Interface: The Science of Dead Zones",
|
|
148
|
+
level: 3,
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
type: 'paragraph',
|
|
152
|
+
html: 'Many excellent photos fail because they ignore the software layer (UI) that Tinder places on top. An average user does not see your clean photo; they see an amalgam of buttons, gradients and text.',
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
type: 'list',
|
|
156
|
+
items: [
|
|
157
|
+
'<strong>Title Zone (Top 15%):</strong> This is where progress indicators and the status bar reside. If your forehead or eyes are here, the interface visually cuts your head.',
|
|
158
|
+
'<strong>Action Zone (Buttons):</strong> Like, Nope and Boost icons occupy the lower sides. If your hands or style elements are there, they are completely lost.',
|
|
159
|
+
"<strong>Readability Gradient (Bottom 28%):</strong> Tinder applies a black fade so your name and age are readable in white. If your face falls in this zone, the text overlaps your features, ruining the profile's aesthetics.",
|
|
160
|
+
],
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
type: 'title',
|
|
164
|
+
text: 'Real-Time Vision Analysis: Decoding the Algorithm',
|
|
165
|
+
level: 3,
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
type: 'paragraph',
|
|
169
|
+
html: "Our tool uses <strong>state-of-the-art Computer Vision models</strong> to audit your image the way Tinder's automatic moderators would:",
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
type: 'list',
|
|
173
|
+
items: [
|
|
174
|
+
'<strong>Landmark Detection:</strong> We map 68 facial points to analyze symmetry and eye openness. Well-open and visible eyes correlate with higher perceived extroversion levels.',
|
|
175
|
+
"<strong>Mood Evaluation:</strong> A light smile activates mirror neurons in the viewer. We detect facial expression intensity to ensure you don't appear too serious or unapproachable.",
|
|
176
|
+
'<strong>Lighting Quality:</strong> The system evaluates detection confidence. A low score means the photo has visual noise or harsh shadows that the Tinder algorithm might flag as low-quality content.',
|
|
177
|
+
],
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
type: 'title',
|
|
181
|
+
text: 'Metadata and Optimized Export for Tinder',
|
|
182
|
+
level: 3,
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
type: 'paragraph',
|
|
186
|
+
html: 'Did you know the weight of your image influences the algorithm? Dating apps prioritize fast-loading content to avoid interrupting user flow.',
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
type: 'list',
|
|
190
|
+
items: [
|
|
191
|
+
'<strong>Metadata Stripping (Privacy and SEO):</strong> We remove EXIF records. A clean photo gives the platform algorithm a fresh slate.',
|
|
192
|
+
"<strong>Smart Lossless Compression:</strong> We reduce the JPG file size while maintaining the native sRGB color space of iOS and Android. Your photo will look vibrant even with poor signal.",
|
|
193
|
+
'<strong>9:16 Immersive Format:</strong> By delivering exactly 1080x1920 pixels, we prevent Tinder from applying its own aggressive compression algorithm that generates image artifacts.',
|
|
194
|
+
],
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
type: 'tip',
|
|
198
|
+
title: 'Expert Tip',
|
|
199
|
+
html: '<p>Your first photo should ALWAYS be a clear portrait from the shoulders up. Save full-body shots or activity photos for the 3rd or 4th position. Make sure your gaze is unobstructed and your face has the optimal size (30-50%).</p>',
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
type: 'title',
|
|
203
|
+
text: 'Security and Processing Ethics',
|
|
204
|
+
level: 3,
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
type: 'paragraph',
|
|
208
|
+
html: 'We understand your photos are private. This optimizer uses <strong>Client-Side technology</strong>: images are processed via a canvas engine in your local browser. No data leaves your device. It is the safest and fastest way to optimize your profile without compromising your privacy.',
|
|
209
|
+
},
|
|
210
|
+
],
|
|
211
|
+
ui: {
|
|
212
|
+
uploadTitle: 'Optimize Photo',
|
|
213
|
+
uploadSubtitle: 'Drag or click to start',
|
|
214
|
+
btnDownload: 'Download Optimized Photo',
|
|
215
|
+
btnRescan: 'Rescan Face',
|
|
216
|
+
btnAutoFocus: 'Auto-Frame',
|
|
217
|
+
btnMarkFace: 'Mark Face',
|
|
218
|
+
panelManual: 'Manual Adjustments',
|
|
219
|
+
panelVisualization: 'Advanced Visualization',
|
|
220
|
+
panelMetrics: 'Composition Analytics',
|
|
221
|
+
panelExport: 'Export for Tinder 2026',
|
|
222
|
+
panelExportDesc: 'Auto crop to 1080x1920 with optimized metadata.',
|
|
223
|
+
labelZoom: 'Zoom',
|
|
224
|
+
labelBrightness: 'Brightness',
|
|
225
|
+
toggleGrid: 'Rule of Thirds Grid',
|
|
226
|
+
toggleGridDesc: 'Classic composition adjustment',
|
|
227
|
+
toggleDeadzones: 'Danger Zones',
|
|
228
|
+
toggleDeadzonesDesc: 'Prevent UI from hiding your face',
|
|
229
|
+
toggleFaceBox: 'Show Detected Face',
|
|
230
|
+
toggleFaceBoxDesc: 'Landmarks and detection area',
|
|
231
|
+
metricFaceSize: 'Face Ratio',
|
|
232
|
+
metricEyeLine: 'Eye Line',
|
|
233
|
+
metricCoverage: 'Coverage',
|
|
234
|
+
metricMood: 'Expression',
|
|
235
|
+
metricQuality: 'Confidence',
|
|
236
|
+
analysisSuccess: 'Success Factors',
|
|
237
|
+
analysisWarning: 'Optimization',
|
|
238
|
+
analysisError: 'Critical Errors',
|
|
239
|
+
deadzoneTop: 'Top UI Zone',
|
|
240
|
+
deadzoneBottom: 'Info Zone',
|
|
241
|
+
loaderAnalyzing: 'Analyzing composition...',
|
|
242
|
+
loaderModels: 'Loading vision models...',
|
|
243
|
+
simulatorName: 'Your Name, 25',
|
|
244
|
+
simulatorJob: 'Your Profession',
|
|
245
|
+
simulatorCity: 'Lives in New York',
|
|
246
|
+
simulatorDistance: '5 km away',
|
|
247
|
+
},
|
|
248
|
+
};
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { TinderPhotoOptimizerUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'optimizador-fotos-tinder';
|
|
6
|
+
const title = 'Optimizador de Fotos para Tinder: Análisis de Rostro y Composición';
|
|
7
|
+
const description =
|
|
8
|
+
'Optimiza tus fotos para Tinder con análisis algorítmico de rostro. Simula la interfaz 2026, analiza el encuadre científico y la línea de ojos, exporta retratos 9:16 perfectos para maximizar matches.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: '¿Cómo mejora esta herramienta mis matches en Tinder?',
|
|
13
|
+
answer:
|
|
14
|
+
'La herramienta analiza factores técnicos clave: el ratio de tamaño facial (ideal 30-50%), la posición de la línea de ojos respecto al tercio superior, la cobertura del encuadre y las zonas muertas de la interfaz de Tinder. Ajustando estos parámetros, tu foto proyecta más confianza y supera los filtros visuales del algoritmo.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: '¿Es seguro subir mis fotos aquí?',
|
|
18
|
+
answer:
|
|
19
|
+
'Completamente seguro. Todo el procesamiento se realiza en tu navegador mediante Canvas API. Tus fotos nunca se envían a ningún servidor ni se almacenan en ningún lugar.',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: '¿Qué hace exactamente la detección de rostro con IA?',
|
|
23
|
+
answer:
|
|
24
|
+
'Utiliza face-api.js para detectar 68 puntos de referencia facial, analizar la expresión (sonrisa, expresión seria), evaluar la posición de los ojos y medir la inclinación de la cabeza. Todo el análisis ocurre localmente en tu dispositivo.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: '¿Por qué recomienda el zoom al 1.2x?',
|
|
28
|
+
answer:
|
|
29
|
+
'Las cámaras frontales de smartphone usan ópticas gran angular (24mm) que distorsionan el rostro con la aberración de barril. Un zoom de 1.2x simula una focal de 50-85mm, eliminando la distorsión y proporcionando proporciones faciales más naturales y atractivas.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Sube tu foto',
|
|
36
|
+
text: 'Arrastra o haz clic en el simulador de Tinder para cargar tu imagen.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Analiza la composición',
|
|
40
|
+
text: 'La IA detecta tu rostro automáticamente y muestra métricas de tamaño facial, línea de ojos, cobertura y expresión.',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Ajusta con precisión',
|
|
44
|
+
text: 'Usa los controles de zoom y brillo, activa el auto-encuadre o arrastra manualmente la imagen dentro del simulador.',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'Descarga optimizada',
|
|
48
|
+
text: 'Exporta tu foto en formato nativo 1080x1920 optimizado para Tinder, con metadatos limpios.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'UtilityApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
83
|
+
inLanguage: 'es',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export const content: ToolLocaleContent<TinderPhotoOptimizerUI> = {
|
|
87
|
+
slug,
|
|
88
|
+
title,
|
|
89
|
+
description,
|
|
90
|
+
faqTitle: 'Preguntas Frecuentes',
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliographyTitle: 'Referencias',
|
|
93
|
+
bibliography: [
|
|
94
|
+
{
|
|
95
|
+
name: 'face-api.js: JavaScript Face Recognition in the Browser',
|
|
96
|
+
url: 'https://github.com/justadudewhohacks/face-api.js',
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
name: 'MDN Web Docs: Canvas API',
|
|
100
|
+
url: 'https://developer.mozilla.org/es/docs/Web/API/Canvas_API',
|
|
101
|
+
},
|
|
102
|
+
],
|
|
103
|
+
howTo: howToData,
|
|
104
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
105
|
+
seo: [
|
|
106
|
+
{
|
|
107
|
+
type: 'title',
|
|
108
|
+
text: 'Optimizador de Fotos para Tinder: La Guía Científica y Técnica Definitiva (2026)',
|
|
109
|
+
level: 2,
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
type: 'paragraph',
|
|
113
|
+
html: 'En el ecosistema de las citas digitales, tu perfil de Tinder es procesado por dos algoritmos simultáneamente: el algoritmo de visión avanzada de la propia plataforma y el cerebro humano del usuario que desliza. Nuestra herramienta integra principios de <strong>psicología evolucionista</strong>, <strong>biometría facial</strong> y <strong>procesamiento de señales digitales</strong> para garantizar que tu imagen proyecte el máximo valor social y atractivo técnico.',
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
type: 'title',
|
|
117
|
+
text: 'La Psicología de la Primera Impresión: El Efecto de los 1.2 Segundos',
|
|
118
|
+
level: 3,
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
type: 'paragraph',
|
|
122
|
+
html: 'Estudios neurocientíficos indican que el cerebro humano tarda aproximadamente 1/10 de segundo en formarse una impresión inicial sobre la confianza que alguien proyecta. En Tinder, dispones de poco más de un segundo antes del siguiente swipe. Nuestra herramienta analiza los factores que aceleran la toma de decisiones positiva:',
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
type: 'list',
|
|
126
|
+
items: [
|
|
127
|
+
'<strong>Contacto Visual y Línea de Mirada:</strong> La mirada directa activa regiones del cerebro relacionadas con la recompensa social. Posicionar los ojos en el tercio superior maximiza la probabilidad de que el usuario se detenga en tu mirada antes de leer tu nombre.',
|
|
128
|
+
'<strong>Asimetría y Postura:</strong> Una ligera inclinación puede suavizar rasgos agresivos, pero un roll excesivo transmite inestabilidad. Nuestro algoritmo mide el ángulo exacto para mantenerte en el rango de confianza.',
|
|
129
|
+
'<strong>Contraste Figura-Fondo:</strong> El sistema premia las fotos donde el sujeto está claramente separado del fondo. Un perfil técnico bien definido ayuda a que el motor de renderizado resalte tu rostro frente al de la competencia.',
|
|
130
|
+
],
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
type: 'title',
|
|
134
|
+
text: 'Análisis Técnico de la Lente: El Problema del Gran Angular',
|
|
135
|
+
level: 3,
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
type: 'paragraph',
|
|
139
|
+
html: 'Casi todas las fotos de perfil se toman con smartphones, cuyas cámaras frontales son de gran angular. El error más común es acercarse demasiado al dispositivo.',
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
type: 'paragraph',
|
|
143
|
+
html: '<strong>La Aberración de Barril:</strong> A menos de un metro de distancia, una lente de 24mm (estándar en móviles) expande el centro de la imagen. Esto hace que las narices parezcan más grandes y la cara más redonda de lo que es en la realidad. Nuestra recomendación de <strong>Zoom 1.2x</strong> es correctiva: al aplicar un ligero recorte digital, simulas una focal de 50mm a 85mm, la distancia focal dorada que los fotógrafos de moda usan para adelgazar el rostro y mantener las proporciones reales.',
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'title',
|
|
147
|
+
text: 'Interfaz de Tinder: La Ciencia de las Zonas Muertas',
|
|
148
|
+
level: 3,
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
type: 'paragraph',
|
|
152
|
+
html: 'Muchas fotos excelentes fallan porque ignoran la capa de software (UI) que Tinder coloca encima. Un usuario medio no ve tu foto limpia; ve una amalgama de botones, gradientes y texto.',
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
type: 'list',
|
|
156
|
+
items: [
|
|
157
|
+
'<strong>Zona de Títulos (Superior 15%):</strong> Aquí residen los indicadores de progreso y la barra de estado. Si tu frente o tus ojos están aquí, la interfaz corta tu cerebro visualmente.',
|
|
158
|
+
'<strong>Zona de Acción (Botones):</strong> Los iconos de Like, Nope y Boost ocupan los laterales inferiores. Si tus manos o elementos de estilo están ahí, se pierden totalmente.',
|
|
159
|
+
'<strong>El Gradiente de Legibilidad (Inferior 28%):</strong> Tinder aplica un fundido negro para que tu nombre y edad se lean. Si tu rostro cae en esta zona, el texto se superpondrá a tus facciones, arruinando la estética del perfil.',
|
|
160
|
+
],
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
type: 'title',
|
|
164
|
+
text: 'Análisis de Visión en Tiempo Real: Traduciendo el Algoritmo',
|
|
165
|
+
level: 3,
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
type: 'paragraph',
|
|
169
|
+
html: 'Nuestra herramienta utiliza modelos de <strong>Computer Vision de última generación</strong> para auditar tu imagen como lo harían los moderadores automáticos de Tinder:',
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
type: 'list',
|
|
173
|
+
items: [
|
|
174
|
+
'<strong>Landmark Detection:</strong> Mapeamos 68 puntos faciales para analizar la simetría y la apertura de los ojos. Unos ojos bien abiertos y visibles se correlacionan con niveles más altos de extroversión percibida.',
|
|
175
|
+
'<strong>Mood Evaluation:</strong> Una sonrisa ligera activa neuronas espejo en quien te mira. Detectamos la intensidad de la expresión facial para asegurarnos de que no parezcas demasiado serio o inaccesible.',
|
|
176
|
+
'<strong>Calidad de Iluminación:</strong> El sistema evalúa la confianza de detección. Si el score es bajo, la foto tiene ruido visual o sombras duras que el algoritmo de Tinder podría marcar como contenido de baja calidad.',
|
|
177
|
+
],
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
type: 'title',
|
|
181
|
+
text: 'Metadatos y Exportación Optimizada para Tinder',
|
|
182
|
+
level: 3,
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
type: 'paragraph',
|
|
186
|
+
html: '¿Sabías que el peso de tu imagen influye en el algoritmo? Las apps de citas priorizan el contenido que carga rápido para no interrumpir el flujo del usuario.',
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
type: 'list',
|
|
190
|
+
items: [
|
|
191
|
+
'<strong>Metadata Stripping (Privacidad y SEO):</strong> Eliminamos los registros EXIF. Una foto limpia te da un lienzo nuevo para el algoritmo de la plataforma.',
|
|
192
|
+
'<strong>Compresión Inteligente sin Pérdida:</strong> Reducimos el peso del archivo JPG manteniendo el espacio de color sRGB nativo de iOS y Android. Tu foto se verá vibrante incluso con poca cobertura.',
|
|
193
|
+
'<strong>Formato 9:16 Inmersivo:</strong> Al entregar exactamente 1080x1920 píxeles, evitamos que Tinder aplique su propio algoritmo de compresión agresivo que genera artefactos de imagen.',
|
|
194
|
+
],
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
type: 'tip',
|
|
198
|
+
title: 'Consejo de Experto',
|
|
199
|
+
html: '<p>La primera foto debe ser SIEMPRE un retrato claro de hombros para arriba. Guarda las fotos de cuerpo entero o de actividades para la 3ª o 4ª posición. Asegúrate de que en esa primera impresión, tu mirada esté libre de obstáculos y tu rostro tenga el tamaño óptimo (30-50%).</p>',
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
type: 'title',
|
|
203
|
+
text: 'Seguridad y Ética de Procesado',
|
|
204
|
+
level: 3,
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
type: 'paragraph',
|
|
208
|
+
html: 'Entendemos que tus fotos son privadas. Este optimizador utiliza <strong>tecnología Client-Side</strong>: las imágenes se procesan mediante un motor de canvas en tu navegador local. Ningún dato sale de tu dispositivo. Es la forma más segura y rápida de optimizar tu perfil sin comprometer tu intimidad.',
|
|
209
|
+
},
|
|
210
|
+
],
|
|
211
|
+
ui: {
|
|
212
|
+
uploadTitle: 'Optimizar Foto',
|
|
213
|
+
uploadSubtitle: 'Arrastra o haz clic para empezar',
|
|
214
|
+
btnDownload: 'Descargar Foto Optimizada',
|
|
215
|
+
btnRescan: 'Reescanear Rostro',
|
|
216
|
+
btnAutoFocus: 'Auto-Encuadre',
|
|
217
|
+
btnMarkFace: 'Marcar Rostro',
|
|
218
|
+
panelManual: 'Ajustes Manuales',
|
|
219
|
+
panelVisualization: 'Visualización Avanzada',
|
|
220
|
+
panelMetrics: 'Analítica de Composición',
|
|
221
|
+
panelExport: 'Exportar para Tinder 2026',
|
|
222
|
+
panelExportDesc: 'Recorte automático a 1080x1920 con metadatos optimizados.',
|
|
223
|
+
labelZoom: 'Zoom',
|
|
224
|
+
labelBrightness: 'Brillo',
|
|
225
|
+
toggleGrid: 'Rejilla de Tercios',
|
|
226
|
+
toggleGridDesc: 'Ajuste de composición clásica',
|
|
227
|
+
toggleDeadzones: 'Zonas de Peligro',
|
|
228
|
+
toggleDeadzonesDesc: 'Evita que la UI oculte tu cara',
|
|
229
|
+
toggleFaceBox: 'Ver Rostro Detectado',
|
|
230
|
+
toggleFaceBoxDesc: 'Landmarks y área de detección',
|
|
231
|
+
metricFaceSize: 'Ratio de Rostro',
|
|
232
|
+
metricEyeLine: 'Línea de Mirada',
|
|
233
|
+
metricCoverage: 'Cobertura',
|
|
234
|
+
metricMood: 'Expresión',
|
|
235
|
+
metricQuality: 'Confianza',
|
|
236
|
+
analysisSuccess: 'Factores de Éxito',
|
|
237
|
+
analysisWarning: 'Optimización',
|
|
238
|
+
analysisError: 'Errores Críticos',
|
|
239
|
+
deadzoneTop: 'Zona de UI Superior',
|
|
240
|
+
deadzoneBottom: 'Zona de Información',
|
|
241
|
+
loaderAnalyzing: 'Analizando composición...',
|
|
242
|
+
loaderModels: 'Cargando modelos de visión...',
|
|
243
|
+
simulatorName: 'Tu Nombre, 25',
|
|
244
|
+
simulatorJob: 'Tu Profesión',
|
|
245
|
+
simulatorCity: 'Vive en España',
|
|
246
|
+
simulatorDistance: 'A 5 km de ti',
|
|
247
|
+
},
|
|
248
|
+
};
|