Skip to content

¿Cómo funciona?

Esta sección te ayudará a entender cómo funciona la CLI de Gowebly.

💭 ¿Quiere probar?

No hay problema. Ve a la Guía de inicio rápido y sigue las instrucciones.

La CLI de Gowebly está construida sobre el lenguaje de programación Go.

Por lo tanto, puede ejecutarse en cualquier sistema y arquitectura que soporte dicho lenguaje. Todas las plantillas del proyecto (tanto backend como frontend) ya están incluidas en el ejecutable. Es decir, no necesita ningún archivo adicional para trabajar con la CLI.

Backend

Los templates por el lado del backend han sido testeados de manera exhaustiva y contienen solo las características y parámetros necesarios para comenzar. Puedes utilizarlos como un buen comienzo e irlos mejorando a medida que tu proyecto crezca.

Por el momento, la CLI soporta los siguientes frameworks web de Go: Fiber, Gin, Echo, Chi, HttpRouter, Gorilla/Mux y PocketBase. Por defecto, el proyecto creado utilizará el paquete net/http.

Capa del Servidor para htmx

La CLI utiliza el paquete htmx-go, que proporciona una API más conveniente para usar la capa de servidor htmx en la parte del backend de tu proyecto.

Tener en cuenta

Todos los frameworks web soportan este paquete, excepto Fiber. Por lo pronto hay que esperar a que los desarrolladores proporcionen soporte o puedes escribir tu propio wrapper para trabajar con él.

Templ

Para ser más eficiente, la CLI soporta el motor de plantillas Templ. Con su ayuda, puedes crear rápidamente interfaces de usuario para tu proyecto sin salir del entorno tradicional de Go.

Todos los templates son simples funciones de Go, sin necesidad de crear plantillas HTML adicionales y sin lidiar con el motor de plantillas incorporado de Go (del paquete html/template).

Linter para Go

Con el propósito de mantener el código limpio, damos la opción de generar el archivo de configuración de golangci-lint con las configuraciones recomendadas. Esto es opcional, pero altamente recomendado.

Frontend

Para crear una compilación del frontend, se eligió el rápido y fácil de usar Parcel bundler versión 2. Esto nos permitió reducir al máximo el estrés de la construcción del frontend.

Ya no es necesario entender configuraciones, el CLI ya lo tiene todo preparado.

En este momento, el CLI soportaba los siguientes frameworks CSS: Tailwind CSS, UnoCSS, Bootstrap, Bulma, daisyUI, Flowbite y Preline UI. Por defecto, el proyecto utilizará los estilos CSS mínimos para la demo.

Entorno de ejecución del frontend

Nos mantenemos al día con las últimas actualizaciones de herramientas de desarrollo frontend, por lo que el CLI soporta dos entornos de ejecución JavaScript: a través del estándar Node.js y el nuevo y extremadamente rápido Bun (que es compatible con Node.js).

Puedes elegir el que más te guste para tu proyecto.

htmx, hyperscript y Alpine.js

Las librerías htmx, hyperscript y Alpine.js están disponibles como paquetes NPM normales en package.json y se añadirán al proyecto «tal cual» en el archivo ./assets/scripts.js.

Prettier

Desde la versiòn v2.0.0, la CLI de Gowebly soporta el formateador Prettier para formatear tus archivos.

Live-reload

La CLI de Gowebly soporta la función live-reload de la herramienta Air. Esto funciona tanto para los archivos del backend (Go) como para los archivos del frontend (JavaScript, CSS, etc.).

Despliegue

Para desplegar con éxito tu proyecto en un servidor remoto (o en la nube), el CLI tiene archivos Docker listos para ser desplegados (docker-compose.yml y Dockerfile). Ya contienen todas las configuraciones necesarias para crear un contenedor aislado.

Conclusión

Todo esto nos da la confianza para decir que disfrutarás trabajando con la CLI de Gowebly, ¡sin importar cuál sea tu nivel de experiencia como desarrollador! 😉

Gowebly CLI is 100% free and Open Source project under the Apache 2.0 license.
Official logo distributed under the Creative Commons License (CC BY-SA 4.0 International).