Documentación del widget
Incrusta tu tablero de Mejorable en cualquier sitio web con una sola línea de código. Sin dependencias, sin iframes pesados, dark mode automático y con reporte de bugs integrado.
1. Lista de solicitudes más votadas
Renderiza un mini-ranking inline donde pongas el div. Ideal para footers, landings y páginas "Roadmap". Cada clic lleva al tablero público para votar.
<div data-mejorable-board="tu-handle/tu-tablero" data-variant="list" data-limit="5"></div> <script async src="https://mejorable.chasquillaengineer.com/embed.js"></script>
Vista previa:
2. Botón flotante
Un FAB siempre visible que abre tu tablero público en una pestaña nueva. Personalizable en posición, texto, color de acento y tema.
<script async src="https://mejorable.chasquillaengineer.com/embed.js" data-mejorable-board="tu-handle/tu-tablero" data-variant="button" data-position="bottom-right" data-label="Sugerir idea"></script>
3. Badge inline
Un chip pequeño tipo "N ideas en Mejorable" ideal para footers o navbars.
<a data-mejorable-board="tu-handle/tu-tablero" data-variant="badge"></a> <script async src="https://mejorable.chasquillaengineer.com/embed.js"></script>
4. Reportar problema
Un botón flotante que abre un modal en el propio sitio. El visitante describe el problema y el widget adjunta automáticamente: URL actual, navegador, sistema operativo, tamaño de pantalla, errores de consola recientes y un registro de los últimos clics y navegaciones. Nunca se envían cookies ni valores de formularios.
<script async src="https://mejorable.chasquillaengineer.com/embed.js" data-mejorable-board="tu-handle/tu-tablero" data-variant="bug" data-position="bottom-right" data-label="Reportar problema"></script>
¿Qué se captura automáticamente?
- URL completa y referer
- Navegador y versión
- Sistema operativo
- Viewport y DPR
- Errores de consola (últimos 10)
- Últimos clics y submits (20)
- Navegaciones SPA (pushState/popState)
- Zona horaria
Solo el propietario del tablero puede ver esta evidencia técnica adjunta a cada reporte.
5. Personalización avanzada
El widget de reporte de bugs admite 12 variables de texto y 5 grupos visuales. Todas son opcionales: si no las usas, se mantienen los valores por defecto.
ATipografía y forma
data-font="system" data-font="serif" data-font="mono" data-font="inherit" data-font-family="Inter, sans-serif"
system — fuentes del sistema (default)
serif — Georgia, Times
mono — ui-monospace, Consolas
inherit — hereda del sitio padre
font-family — cualquier stack CSS
data-radius="pill" data-radius="rounded" data-radius="square"
pill — bordes redondeados al máximo
rounded — esquinas suaves (default)
square — esquinas casi rectas
data-size="sm" data-size="md" data-size="lg"
sm — botón compacto
md — tamaño medio (default)
lg — botón y modal grandes
BIcono y color del modal
data-icon="bug" data-icon="alert" data-icon="chat" data-icon="none" data-icon="🐞" data-bg="#f0fdf4"
bug / alert / chat — iconos SVG incluidos
none — sin icono
emoji — cualquier emoji como literal
bg — fondo del modal (opcional)
CTextos del modal (12 atributos)
data-modal-title="Reportar un problema" data-modal-subtitle="Cuéntanos qué pasó..." data-field-title-label="¿Qué pasó? *" data-field-title-placeholder="El botón Comprar no responde..." data-field-expected-label="¿Qué esperabas que pasara? (opcional)" data-field-expected-placeholder="Esperaba ir al checkout..." data-privacy-note="📎 Se adjuntará automáticamente..." data-submit-label="Enviar reporte" data-cancel-label="Cancelar" data-success-title="¡Gracias por avisar!" data-success-body="Recibimos tu reporte con el contexto técnico." data-success-link-label="Ver tu reporte →"
Si omites un atributo, se usa el texto por defecto en español. Puedes dejar vacío data-privacy-note para ocultar la nota de privacidad.
6. Ejemplo completo
Widget de reporte de bugs con tipografía heredada del sitio, botón cuadrado grande, icono de alerta y texto personalizado:
<script async src="https://mejorable.chasquillaengineer.com/embed.js" data-mejorable-board="tu-handle/tu-tablero" data-variant="bug" data-position="bottom-left" data-label="Feedback" data-font="inherit" data-radius="square" data-size="lg" data-icon="alert" data-bg="#fef3c7" data-modal-title="Ayúdanos a mejorar" data-submit-label="Enviar feedback" data-success-title="¡Gracias!"></script>
Tabla de atributos
| Atributo | Aplica a | Valores | Default |
|---|---|---|---|
| data-mejorable-board | todos | handle/slug | — |
| data-variant | todos | list | button | badge | bug | list |
| data-theme | todos | auto | light | dark | auto |
| data-accent | todos | #hex (3 ó 6 dígitos) | #3CB8A8 |
| data-limit | list | 1–10 | 5 |
| data-position | button, bug | bottom-right | bottom-left | top-right | top-left | bottom-right |
| data-label | button, badge, bug | texto libre | Sugerir idea |
| data-title | list | texto libre | nombre del tablero |
| data-font | bug | system | serif | mono | inherit | system |
| data-font-family | bug | stack CSS | — |
| data-radius | bug | pill | rounded | square | rounded |
| data-size | bug | sm | md | lg | md |
| data-icon | bug | bug | alert | chat | none | emoji | bug |
| data-bg | bug | #hex | — |
| data-modal-title | bug | texto libre | Reportar un problema |
| data-submit-label | bug | texto libre | Enviar reporte |
| data-success-title | bug | texto libre | ¡Gracias por avisar! |
| … y 9 más | bug | ver sección de textos |
Requisitos
- El tablero debe tener activada la opción Mostrar en /explorar desde el dashboard.
- Los widgets
list,buttonybadgeno permiten votar dentro del sitio externo: cada clic lleva al tablero público para evitar abuso. - El widget
bugsí permite enviar reportes directamente desde el sitio embebido. - Endpoint público con CORS abierto:
/api/public/embed/{handle}/{slug}. - Endpoint de reportes:
/api/public/embed/{handle}/{slug}.report(POST).