Update app.py
Browse files
app.py
CHANGED
@@ -7,23 +7,34 @@ jshint_path = shutil.which("jshint")
|
|
7 |
print(f"✅ JSHint está instalado en: {jshint_path}")
|
8 |
|
9 |
def analizar_codigo_js(codigo_js):
|
|
|
10 |
with open("codigo.js", "w") as f:
|
11 |
f.write(codigo_js)
|
12 |
|
13 |
try:
|
|
|
|
|
14 |
result = subprocess.run(
|
15 |
["jshint", "codigo.js"],
|
16 |
stdout=subprocess.PIPE,
|
17 |
stderr=subprocess.PIPE,
|
18 |
text=True
|
19 |
)
|
|
|
|
|
|
|
|
|
|
|
20 |
if result.returncode == 0:
|
21 |
return "✅ No se encontraron errores en el código."
|
22 |
else:
|
23 |
-
|
|
|
|
|
24 |
except Exception as e:
|
25 |
return f"❌ Error al ejecutar JSHint: {str(e)}"
|
26 |
|
|
|
27 |
demo = gr.Interface(
|
28 |
fn=analizar_codigo_js,
|
29 |
inputs=gr.Textbox(lines=10, label="Código JavaScript"),
|
@@ -32,4 +43,5 @@ demo = gr.Interface(
|
|
32 |
description="Pega tu código JavaScript para revisarlo automáticamente."
|
33 |
)
|
34 |
|
|
|
35 |
demo.launch()
|
|
|
7 |
print(f"✅ JSHint está instalado en: {jshint_path}")
|
8 |
|
9 |
def analizar_codigo_js(codigo_js):
|
10 |
+
# Guardamos el código JS en un archivo temporal
|
11 |
with open("codigo.js", "w") as f:
|
12 |
f.write(codigo_js)
|
13 |
|
14 |
try:
|
15 |
+
# Ejecutar JSHint en el archivo de código JavaScript
|
16 |
+
print("Ejecutando JSHint en el archivo 'codigo.js'...")
|
17 |
result = subprocess.run(
|
18 |
["jshint", "codigo.js"],
|
19 |
stdout=subprocess.PIPE,
|
20 |
stderr=subprocess.PIPE,
|
21 |
text=True
|
22 |
)
|
23 |
+
|
24 |
+
print(f"Salida estándar: {result.stdout}")
|
25 |
+
print(f"Salida de error: {result.stderr}")
|
26 |
+
|
27 |
+
# Si el código es válido (sin errores), el código de retorno será 0
|
28 |
if result.returncode == 0:
|
29 |
return "✅ No se encontraron errores en el código."
|
30 |
else:
|
31 |
+
# Si hay errores, los mostramos
|
32 |
+
return f"⚠️ Errores encontrados:\n{result.stderr or result.stdout}"
|
33 |
+
|
34 |
except Exception as e:
|
35 |
return f"❌ Error al ejecutar JSHint: {str(e)}"
|
36 |
|
37 |
+
# Interfaz Gradio
|
38 |
demo = gr.Interface(
|
39 |
fn=analizar_codigo_js,
|
40 |
inputs=gr.Textbox(lines=10, label="Código JavaScript"),
|
|
|
43 |
description="Pega tu código JavaScript para revisarlo automáticamente."
|
44 |
)
|
45 |
|
46 |
+
# Lanzar la interfaz Gradio
|
47 |
demo.launch()
|