calima-solutions / calima-genesis
Calima 开发者的 CLI 工具。
Requires
- php: ^8.1
- guzzlehttp/guzzle: ^7.4
- illuminate/http: ^9.0
- laminas/laminas-text: ^2.9
- laravel-zero/phar-updater: ^1.2
- nunomaduro/termwind: ^1.13
Requires (Dev)
- laravel-zero/framework: ^9.1.3
- laravel/pint: ^1.1
- mockery/mockery: ^1.4.4
- pestphp/pest: ^1.21.3
README
Genesis 是 Calima 为其工作流程构建的 CLI 工具。它是一个 CLI 工具,提供了一个优雅且自动化的起点,用于您的项目,并提供不同模块,可以在您的应用程序中安装,以使开发更简单、更快速。
要求
- 需要 PHP8.1+
安装
可以通过运行以下命令使用 Composer 安装 Genesis
composer global require calima-solutions/calima-genesis
如果遇到错误,请尝试运行
composer global update
,然后再次尝试安装。
更新
要更新 CLI 工具,只需运行 genesis self-update
,如果本地副本未更新,它将下载新版本。
认证
安装 Genesis 后,您可以使用 Calima 提供的凭据使用以下命令登录
genesis authenticate
您将被提示输入您的电子邮件和密码,并将令牌存储在您的计算机上以实现快速访问。
创建新项目
Genesis 从 CLI 提供了后端和前端项目的快速起点。只需运行 genesis start <project>
并遵循向导以创建符合 Calima 标准的项目。
可用项目
Laravel
运行 genesis start laravel
,Genesis 将引导您完成流程。以下元素是可选的,您将在安装过程中被提示
- Filament:基于 TALL Stack 的管理面板
- Breeze:提供身份验证并安装 TailwindCSS
- Actions:一个使用新的方式组织 Laravel 应用程序逻辑的包,专注于应用程序提供的操作
除此之外,此命令还将安装以下元素
- Pint:遵循 Laravel 标准的代码格式化工具
- Laravel Log Viewer:一个漂亮的日志查看器,已受保护,因此只能由 Calima 员工查看
- Larastan:Laravel 的静态代码分析
- 拉取请求模板:遵循 Calima 标准的 PR 模板
Ionic 应用
运行 genesis start ionic
,Genesis 将引导您完成流程。以下元素是可选的,您将在安装过程中被提示
- Tailwind:快速原型设计的 CSS 框架
- API 服务:为在您的应用程序中使用 API 提供起点
自定义命令
Genesis 不仅仅是一个启动项目的优秀工具,还可以在项目已运行时使用。自定义命令自动化了一些我们日常工作中的常见操作
- 安装有用的包
- 执行测试
- 代码检查
- 还有更多即将到来
列出自定义命令
要列出可用的命令,请在 CLI 上执行以下行
genesis commands
执行自定义命令
一旦找到您要查找的命令,您可以像这样执行它
genesis run <signature>
例如,如果我想要在我的 Ionic 应用程序上运行 install:tailwind-angular
,我会运行
genesis run install:tailwind-angular
此命令将安装TailwindCSS以及Typography和Forms插件,创建包含主色和副色的tailwind.config.js
文件,并在CSS文件中添加@tailwind
调用。
模块
模块是Genesis在项目之间共享代码的方式。当我们创建一个集成或工具时,我们可以将其转换为模块,并且所有Calima同事都可以在自己的项目中使用它。
每个模块可以为每种技术或集成类型提供不同的风味。例如,如果我们正在为博客系统构建一个模块,它可能具有以下风味
- Blade
- Inertia Vue
- Inertia React
- Livewire
- Filament面板
- API
虽然理想的情况是每个模块都有所有风味,但并非每个模块都提供所有风味。Genesis提供了快速访问所有模块及其风味的途径。
列出模块
运行genesis modules
命令以在控制台上打印可用的模块列表。列模块ID
和版本
特别重要,因为它们是在之后安装模块时使用的。
安装模块
要安装模块,您可以执行以下命令
genesis module {identifier?} {flavor?}
如果您已经知道要安装的标识符和风味,可以直接将其添加到命令中。如果您都不知道,可以简单地运行genesis module
,CLI将提供一些自动完成帮助。
创建模块
创建模块的过程尚未文档化,尽管接受模块的要求已在以下几行中定义。
要求和指南
- 风味应尽可能小(例如,一个模块用于迁移和模型,另一个模块用于管理面板,另一个模块用于Blade视图,另一个模块用于API...),以便可以堆叠
- 模块代码应转移到
calima-solutions
GitHub帐户,以便Genesis可以访问 - 模块应放置在一个全新的项目中,以确保它可以独立运行
- 尽可能使用单元/功能测试测试后端代码,并且测试必须通过。如果无法提供测试,README应提供有关如何测试的信息
- 它应该有一个README.md文件,解释如何使用足够的文档