Gower

screenshot of Gower
laravel
vite
vue
tailwind
daisyui

Go 语言开发 Web 的一种快速启动目录,默认使用模板集成模式。Go language development Web a quick start directory, the default use of template integration mode.

Overview:

Go/Gin Gower Web is a fast-starting framework for web development based on Go and Gin. It is inspired by the design philosophy of Laravel and has a similar directory structure and functionality. It focuses on maintaining good performance while improving code development by using Go's reflection and type assertion mechanisms. Gower offers several key features such as command-line tools, dynamic service construction, dependency injection, customizable controller methods, and support for non-separation of front-end and back-end. It also provides a Dockerized environment for easy deployment.

Features:

  • Command-line tools: Gower integrates command-line tools with the built program to provide convenient functionalities.
  • Dynamic service construction: Services and service providers are bound through keys and functions, allowing for dynamic service construction.
  • Dependency injection: Gower uses dependency injection to avoid circular dependencies between services.
  • Customizable controller methods: Gower allows for injecting request structures, enabling automatic validation of request parameters.
  • Non-separation of front-end and back-end: Gower supports both front-end and back-end development modes, providing a holistic environment.
  • Dockerized environment: Gower offers containerized deployment using Docker, ensuring consistent environments across different systems.

Source code installation [Recommended]

  1. Execute the following command to compile and install Gower: $ gower --version
  2. Create a project and automatically initialize it, including files, environments, repositories, and dependencies. Perform benchmark testing.
  3. Use Docker to run Gower.
  4. Use Goland IDE for debugging. Right-click the main.go file, select debug, and configure the run program arguments.
  5. Use Git to install Gower. Download the source code, switch to the release version, and install back-end and front-end dependencies.

Docker deployment of dev environment

  1. Install Docker on your system. Make sure you have the required versions of Go, Node.js, pnpm, Docker, Docker Compose, and Git.
  2. Use Docker to run the development environment. The process has been tested on Windows.

Building front-end without Docker

  • To build static resources, go to the public/static directory and execute go install -tags tmpl,statictags. This will package the content into the program.

Building back-end and running

  • If you need to package static resources, use go install -tags tmpl,statictags. This ensures all necessary content is included in the program.

Summary:

Go/Gin Gower Web is a powerful web framework for fast development using Go and Gin. It offers a range of features to simplify the development process, including command-line tools, dynamic service construction, dependency injection, customizable controller methods, and support for both combined and separated front-end and back-end development. With easy installation and deployment options, Gower provides a flexible and efficient solution for web development projects.

laravel
Laravel

Laravel is a powerful and elegant PHP framework that provides developers with a comprehensive set of tools and features to build robust web applications. It follows the Model-View-Controller (MVC) architectural pattern, offering a clean and organized structure for writing efficient and maintainable code.

vite
Vite

Vite is a build tool that aims to provide a faster and leaner development experience for modern web projects

vue
Vue

Vue.js is a lightweight and flexible JavaScript framework that allows developers to easily build dynamic and reactive user interfaces. Its intuitive syntax, modular architecture, and focus on performance make it a popular choice for modern web development.

tailwind
Tailwind

Tailwind CSS is a utility-first CSS framework that provides pre-defined classes for building responsive and customizable user interfaces.

daisyui
daisyUI

daisyUI adds classes to Tailwind CSS for all common UI components. Classes like btn, card, etc. This allows us to focus on important things instead of making basic elements for every project.

postcss
Postcss

PostCSS is a popular open-source tool that enables web developers to transform CSS styles with JavaScript plugins. It allows for efficient processing of CSS styles, from applying vendor prefixes to improving browser compatibility, ultimately resulting in cleaner, faster, and more maintainable code.