这个项目能做什么

Create Go App CLI (cgapp) 是一款用于生成新项目的命令行工具,它将 Go 后端、JavaScript 或 TypeScript 前端以及部署自动化相结合。其目标是通过处理项目脚手架和部署设置,让开发者能够专注于应用程序代码和业务逻辑。 安装选项包括: - go install github.com/create-go-app/cli/v4/cmd/cgapp@latest(需要 Go 1.21 或更高版本) - Homebrew (brew tap create-go-app/tap; brew install create-go-app/tap/cgapp) - 从发布页面获取预构建的 deb, rpm, apk 或 Arch Linux 软件包 - 用于隔离使用的 Docker 镜像(该镜像中不可用 deploy 命令) 主要命令: - cgapp create [OPTION]:通过交互式控制台 UI 创建新项目。-t 选项可启用自定义后端和前端模板。 - cgapp deploy [OPTION]:通过 Ansible 将 Docker 容器部署到远程服务器。本地机器需要安装 Python 3.8+ 和 Ansible 2.9+。-k 选项会提示输入远程用户的 sudo 密码。 后端模板: - net/http:包含 CRUD 和 JWT 认证的简单 REST API - Fiber:包含 CRUD、带令牌续期的 JWT 认证、数据库和缓存的复杂 REST API - go-chi:带有健康检查的基础应用程序 前端模板: 前端使用 Vite.js 生成,因此可以使用当前版本的 React, Preact, Vue, Svelte, Solid, Lit, Qwik 或纯 JavaScript/TypeScript。Next.js 和 Nuxt 则通过 create-next-app 和 nuxi 生成。大多数选项均提供 JavaScript 和 TypeScript 变体,包括 react, react-swc, preact, vue, svelte, solid, lit, qwik, vanilla, next, nuxt 和 sveltekit。前端生成需要 npm 7 或更高版本。 预配置的 Ansible 角色: - Web/代理服务器:Traefik (traefik, traefik-acme-dns) 和 Nginx (nginx)。自 v2.0.0 起推荐使用 Traefik,因为它支持 Let's Encrypt 自动 SSL 证书和 Web UI。 - 数据库:PostgreSQL (postgres),并应用后端迁移。 - 缓存:用于后端的 Redis (redis)。 项目文档、常见问题解答 (FAQ)、讨论和问题可通过 GitHub wiki 和仓库获取。该项目采用 Apache 2.0 许可证。