|
import gradio as gr |
|
import jshint |
|
|
|
|
|
def analizar_codigo(codigo): |
|
errores = "" |
|
explicacion = "" |
|
|
|
try: |
|
|
|
result = jshint.JSHINT(codigo) |
|
|
|
if not result: |
|
errores = "❌ Errores de sintaxis o estilo detectados:\n" |
|
for error in jshint.JSHINT.errors: |
|
errores += f" Línea {error['line']}, Columna {error['character']}: {error['reason']}\n" |
|
explicacion = "Revisa los errores en tu código y corrige los problemas detectados." |
|
else: |
|
errores = "✅ No se encontraron errores de sintaxis ni estilo." |
|
explicacion = "Tu código está libre de errores detectados por JSHint." |
|
except Exception as e: |
|
errores = f"❌ Error al procesar el código: {str(e)}" |
|
explicacion = "Hubo un problema al analizar el código." |
|
|
|
return errores, explicacion |
|
|
|
|
|
demo = gr.Interface( |
|
fn=analizar_codigo, |
|
inputs=gr.Textbox(lines=15, label="Pega tu código JavaScript aquí"), |
|
outputs=[ |
|
gr.Textbox(label="Estado de la sintaxis"), |
|
gr.Textbox(label="Explicación de errores de estilo y sintaxis") |
|
], |
|
title="🔍 Analizador de sintaxis y estilo de código JavaScript con JSHint", |
|
description="Este Space utiliza JSHint para verificar errores de sintaxis y estilo en tu código JavaScript." |
|
) |
|
|
|
demo.launch() |
|
|