Servicio para webs, blogs y aulas virtuales
Insertador de reacciones químicas
Muestra en tu página una reacción química analizada por ChemModel: la ecuación con fórmulas, si está balanceada, los coeficientes sugeridos, el tipo de reacción y cada reactivo y producto en 3D. Gratis, sin registro y sin instalar nada: solo pegas un código.
Vista previa en vivo
Qué ve tu lector
- La ecuación con fórmulas y el título de la reacción.
- Si está balanceada y, si no, los coeficientes que la balancean (con un botón para aplicarlos).
- El tipo de reacción (combustión, neutralización, esterificación, adición…) con una explicación breve.
- Cada especie en un visor 3D interactivo, con nombre, fórmula y masa molar.
- Exportar la reacción como imagen PNG y un enlace para abrirla en ChemModel.
Tres formas de insertar una reacción
A · Desde el editor (recomendado para publicar)
- Abre el editor de reacciones de ChemModel.
- Busca la reacción por su nombre, elige una plantilla o dibújala.
- Revisa el análisis: que sea la reacción que quieres mostrar.
- Pulsa «</> Insertar»: se copia el código con la reacción ya fijada. Pégalo en tu página.
<iframe src="https://chemmodel.com/embed/reaccion?rxn=CC(%3DO)O.CCO%3E%3ECCOC(C)%3DO.O&label=Esterificaci%C3%B3n%20de%20Fischer&lang=es" width="100%" height="560" style="border:none" loading="lazy" title="ChemModel — Esterificación de Fischer"></iframe>
B · Por nombre
Escribe el nombre de la reacción en la dirección. ChemModel la reconoce entre sus plantillas o la interpreta con IA, comprueba que sea químicamente válida (que se pueda balancear) y la recuerda, para que tu página muestre siempre la misma.
<iframe src="https://chemmodel.com/embed/reaccion?q=bromaci%C3%B3n%20del%20propanol&lang=es" width="100%" height="560" style="border:none" loading="lazy" title="ChemModel"></iframe>
⚠ Los nombres pueden ser ambiguos («bromación del propanol» puede hacerse con HBr o con PBr₃). Para un artículo publicado, usa la forma A o C: fijan la reacción exacta.
C · Con reaction SMILES
Si conoces la notación SMILES: reactivos>>productos, con las moléculas separadas por punto. Para indicar coeficientes, repite la molécula. Codifica el texto para la URL (encodeURIComponent: > → %3E, = → %3D).
CC(=O)O.CCO>>CCOC(C)=O.O → rxn=CC(%3DO)O.CCO%3E%3ECCOC(C)%3DO.O
Parámetros
rxn=Reacción exacta en reaction SMILES (codificada). Tiene prioridad sobre q.q=Nombre o descripción de la reacción (p. ej. «bromación del propanol»).label=Título que se muestra encima de la ecuación (opcional).lang=Idioma de la interfaz: es (por defecto) o en.h=Alto del recuadro en píxeles: de 300 a 1000 (por defecto 520). Recomendado: 560.En tu plataforma
- HTML / cualquier web: pega el código <iframe> donde quieras que aparezca.
- WordPress: bloque «HTML personalizado» con el <iframe>, o el shortcode de abajo.
- Moodle / Google Classroom / Canvas: en el editor, botón «HTML» o «Insertar código», y pega el <iframe>.
- Blogger / Google Sites: «Insertar» → «Insertar código».
Shortcode para WordPress
Añade este código al plugin de ChemModel o al functions.php de tu tema. Después podrás escribir en cualquier entrada: [chemmodel-reaccion nombre="bromación del propanol"]
// [chemmodel-reaccion nombre="bromación del propanol"]
// [chemmodel-reaccion rxn="CC(=O)O.CCO>>CCOC(C)=O.O" titulo="Esterificación de Fischer" alto="560"]
add_shortcode('chemmodel-reaccion', function ($atts) {
$a = shortcode_atts(['rxn' => '', 'nombre' => '', 'titulo' => '',
'alto' => '560', 'lang' => 'es'], $atts);
if ($a['rxn'] === '' && $a['nombre'] === '') return '';
$q = $a['rxn'] !== '' ? 'rxn=' . rawurlencode($a['rxn'])
: 'q=' . rawurlencode($a['nombre']);
if ($a['titulo'] !== '') $q .= '&label=' . rawurlencode($a['titulo']);
$src = 'https://chemmodel.com/embed/reaccion?' . $q
. '&lang=' . ($a['lang'] === 'en' ? 'en' : 'es');
return '<iframe src="' . esc_url($src) . '" width="100%" height="' . intval($a['alto'])
. '" style="border:none" loading="lazy" title="ChemModel"></iframe>';
});Buenas prácticas
- Para contenido publicado, fija la reacción con rxn= (forma A o C).
- Revisa siempre la reacción interpretada por nombre antes de enseñarla.
- Usa label= para dar un título claro («Esterificación de Fischer»).
- Deja el alto en 520–600 px para que se vean las moléculas en 3D sin desplazarse.
Privacidad y rendimiento
El recuadro insertado no muestra publicidad ni usa cookies ni analítica. Se carga solo cuando el lector llega a él (loading="lazy") y se adapta al ancho de la página y a móviles.
API para desarrolladores
Las mismas funciones están disponibles como API pública en JSON:
GET https://chemmodel.com/api/reaction-by-name?q=bromaci%C3%B3n%20del%20propanol
→ { "rxn": "CCCO.Br>>CCCBr.O", "title": { "es": "…", "en": "…" }, "source": "ai" }
GET https://chemmodel.com/api/reaction?rxn=CC(%3DO)O.CCO%3E%3ECCOC(C)%3DO.O
→ { "reactants": […], "products": […], "balance": {…}, "suggested": […], "type": "esterification" }Uso y límites
El servicio es gratuito para uso educativo y divulgativo. Para proteger el servidor hay límites por visitante (30 análisis por minuto) y las interpretaciones nuevas por nombre son limitadas; las reacciones ya conocidas no cuentan. La clasificación de reacciones es automática: acierta en los casos de libro de texto, pero no en todos. Si encuentras un error o quieres un uso intensivo, escríbenos.