logicent / crudle
Crudle
1.0.0-beta
2022-05-14 14:33 UTC
Requires
- php: ^7.4.0
- bizley/migration: ^4.1
- bizley/quill: ^3.3
- imaginary/yii2-fomantic-ui: ~2
- kint-php/kint: ^1.1
- knplabs/knp-snappy: ^1.2
- league/csv: ^9.7
- league/flysystem: ^1.0
- mikehaertl/phpwkhtmltopdf: ^2.2
- myclabs/php-enum: ^1.8
- phpoffice/phpspreadsheet: ^1.17
- phpoffice/phpword: ^0.18.1
- schmunk42/yii2-giiant: @stable
- spatie/db-dumper: ^2.21
- thamtech/yii2-uuid: ^1.2
- thamtech/yii2-yaml: ^0.3.2
- vlucas/phpdotenv: ^5.3
- yidas/phpspreadsheet-helper: ^1.3
- yii2mod/yii2-enum: *
- yiisoft/yii2: ~2.0.14
- yiisoft/yii2-bootstrap: ~2.0.0
- yiisoft/yii2-imagine: ^2.3
- yiisoft/yii2-jui: ^2.0
- yiisoft/yii2-redis: ^2.0
- yiisoft/yii2-shell: ^2.0
- yiisoft/yii2-swiftmailer: ~2.0.0
- zelenin/yii2-semantic-ui: ~2
Requires (Dev)
- codeception/specify: ~0.4.3
- codeception/verify: ~0.3.1
- yiisoft/yii2-debug: ~2.0.0
- yiisoft/yii2-faker: ~2.0.0
- yiisoft/yii2-gii: ~2.0.0
This package is auto-updated.
Last update: 2024-09-10 12:07:07 UTC
README
注意:这是该软件的测试版。请谨慎使用!
介绍
概述
一款免费开源的Web开发入门套件,用于构建现成企业级应用程序。
安装
先决条件
- Git
- Composer
- NPM
选项1:通过Composer
- 运行
composer create-project logicent/crudle:dev-main && cd crudle
选项2:通过CLI
- 运行
git clone git@github.com:logicent/crudle.git && cd crudle
- 运行
composer install
继续
- 创建数据库并更新
sites/.env
设置 - 运行
./crudle migrate --migrationPath sites/database/migrations'
- 运行
cat sites/database/scripts/crdl_People.sql | mysql -u <my_root_user> -p <my_db_name>
- 运行
./crudle user/user/create-superuser 'my_password'
和./crudle user/rbac/init
- 在本地环境运行
./crudle serve -t sites/web
或在生产环境中使用首选的Web服务器
系统架构
上下文
Crudle(CRUD逻辑扩展)是一个使用修改后的项目模板、一些预定义的编码约定和用Fomantic UI构建的完整后端构建的元框架,用于快速应用程序开发和定制。
容器
- backend (App)
- codegen (Kit)
- modules (Ext)
组件
主页 - 提供为最终用户构建的自定义交互组件
- 工作空间 - 查看创建的工作空间以显示喜爱的菜单和小部件
- 仪表板 - 查看使用仪表板+小部件工具创建的仪表板
- 报告 - 查看使用报告构建器创建的报告以显示查询结果
设置页面 - 提供为最终用户提供的可见性和自定义工具
- 系统 - 配置常规设置和布局(UI)首选项和菜单
- 数据工具 - 导入/导出数据,创建/修改域主模型
- 发送邮件 - 创建电子邮件通知,模板,检查电子邮件队列
- 数据存储 - 配置备份并管理文件存储和系统缓存
- 人员 - 添加用户,用户组,角色和权限,并查看用户日志
- 打印 - 创建打印样式,打印格式并配置打印设备
应用程序模块 - 包含核心应用程序功能,如身份验证,CRUD,电子邮件,地图等
- backend/database 提供与数据库连接和存储交互的工具
- backend/main 用于定义应用程序级别的枚举并提供可重用的应用程序功能
- backend/listing 用于在多记录可视化中显示一组记录
- backend/workflow 用于定义审批路由,更改触发器和状态
扩展模块
- modules/web_cms - 用于设置数据发布和交互的网站
站点
- sites/config 用于定义全局配置设置
- sites/database 用于定义数据库脚本和种子
- sites/storage 用于存储共享数据和资源
- sites/web 用于定义全局JS和CSS脚本
技术堆栈
编程语言和框架
- PHP 8.0 使用 Yii2 和 JavaScript 使用 jQuery
- Yii2-crudle dockerized (可选 - 待办事项)
- 通过 deployer 部署 (可选 - 待办事项)
模板
- Twig (考虑)
支持的数据库
- MySQL 8.0(或等效的 MariaDB 版本)
- SQLite (待测试)
- PostgreSQL (待办事项)
- SQLite(离线)(待办事项)
UI 框架、组件和库
- Fomantic UI 2.9
- HTMX 2
- Fullcalendar 5.11
- LeafletJS 1.9
Web 服务器
- PHP 内置 Web 服务器通过
./crudle serve -t sites/web
(开发环境) - Nginx 通过 PHP-FPM(生产环境)
- RoadRunner 2 (稍后处理)
进程管理器 (考虑中)
- 开发
- 生产
工作队列
- Redis (稍后处理)
缓存
- Redis (稍后处理)
实时性
- 使用 HTMX 2 的 Web sockets(稍后处理)
命令行
- 通过控制台应用程序使用内置命令
路线图
现在
- 增加 UI 布局宽度,添加可固定的侧边栏和可编辑菜单
- 改进所有终端用户系统工具、应用首选项和性能
- 升级到使用 PHP 8.0 和 MySQL 8.0 以及 Fomantic UI 2.9 的最新 Yii2
下一个
- 在模板中添加多租户(站点)支持,并为实例添加初始化脚本
- 发送邮件的电子邮件模板,以及文档和报告的附件
- 为文档和报告创建打印模板和格式化样式(脚本)
- 将工具和入门套件创建为 composer 包的 Yii 扩展
稍后
- 使用 PestPHP 或 PHPUnit 编写 UI、工作流和 DB 测试
- 使用 Php Auth Manager (预定义) 和 Db Auth Manager (用户定义) 的混合体
- 使用 Bulma 和 Buefy 升级到 Yii3(带有 CycleORM 数据映射器)
想要贡献? 感谢您考虑为 Crudle 做出贡献。欢迎新贡献者进一步改进解决方案或帮助提供支持。
许可协议 Crudle 在 BSD-3-Clause 许可协议下发布。