corollarium / modelarium
从模式生成前端和后端脚手架
v0.5.2
2021-09-29 18:07 UTC
Requires
- php: >=7.3.0
- composer/composer: ^1.10
- corollarium/formularium: ^0.10.2
- doctrine/inflector: ^2.0
- haydenpierce/class-finder: ^0.4.2
- illuminate/console: ^8.0
- illuminate/support: ^8.0
- nette/php-generator: ^3.4
- nuwave/lighthouse: ^5.23
- thecodingmachine/safe: ^1.1
- webonyx/graphql-php: ^14.5
- zordius/lightncandy: ^1.2
Requires (Dev)
Suggests
- corollarium/formularium: Generate frontend, your own datatypes and validators easily
This package is auto-updated.
Last update: 2024-08-29 05:30:01 UTC
README
Modelarium根据您API的GraphQL描述为您的项目生成脚手架。它可以创建整个后端和前端文件,只留下逻辑和设计供您完成。
- 为您生成后端脚手架:模型、数据库迁移、种子、工厂、事件、策略。所有内容均来自您的GraphQL描述。不再需要繁琐的文件创建和重复的代码。
- 数据类型:您的数据不仅仅是字符串。您有结构模型,因此也有字段的数据类型。创建正确的数据库字段,无需思考。使用Formularium数据类型。
- 验证:基于您的数据类型自动进行透明数据验证。您的数据始终得到安全验证。
- 无性能损失:除了数据验证外,所有数据都在开发时生成。它只是自动脚手架,一切就像以前一样快。
- 无新标准:生成的代码遵循现有工具的现有标准。生成代码并自由使用。没有任何束缚。
- 前端生成:使用您喜欢的CSS框架(Bootstrap、Bulma、Materialize、Buefy)自动为您生成HTML表单、卡片、列表和视图,只需简单的声明和标准描述。之后您可以调整细节 - 它只是代码。
- 响应式框架:获取Vue和React组件(如卡片、表单、列表和表格),它们可以直接使用,并带有GraphQL调用。
- 与Laravel和Lighthouse集成。自动获取GraphQL端点。
它不做什么
- 魔法。您仍然需要在后端编写代码逻辑来处理请求,例如在突变或模型中的特殊条件。您也只得到一个基本设计,因此漂亮的CSS取决于您。
- 生成REST端点。目前仅通过Laravel和Lighthouse支持GraphQL。REST端点可能以后会支持。
- 其他后端框架。目前仅支持Laravel。
文档
查看示例项目。
赞助商
快速概述
这是一个Graphql文件,它复制了Laravel的默认User
模型。请注意Email
数据类型以及用于创建数据库的@migration
指令。
type User @migrationRememberToken @migrationSoftDeletes @migrationTimestamps @modelExtends(class: "Illuminate\\Foundation\\Auth\\User") @modelNotifiable { id: ID! name: String! @modelFillable @renderable(label: "Name", comment: "Please fill with your fullname") password: String! @modelHidden @modelFillable email_verified_at: Timestamp @casts(type: "datetime") email: Email! @migrationUniqueIndex @modelFillable }
这是一个示例Post
模型,其中包含用于验证和数据生成的自定义数据类型
type Post @migrationTimestamps { id: ID! title: Title! description: Text! user: User! @belongsTo @foreign(onDelete: "cascade", onUpdate: "cascade") }
贡献
任何贡献都受欢迎。请发送PR。