HyperSwift - HTML 和 CSS 生成器

Swift 5.2 @garrepi

关于

HyperSwift(名称待定)是一个纯粹用 Swift 编写的 DSL,旨在生成使用 CSS 样式化的 HTML。

主要特性

代码片段

来自 garrepi.dev 的 505 页面

import HyperSwift

VStack(justify: .center, align: .center) {
  HStack(justify: .spaceEvenly, align: .center) {
    Image(url: "/images/error_bomb.png")
      .width(100)
      .height(100)
    Header(.header3) { "HTTP 500" }
      .font(weight: "bold", size: 40, family: "SF Mono")
  }          
  Paragraph(fiveOfiveMessage)
}
.backgroundColor(GColors.lightRed)
.textAlign(.center)
.margin(5, .percent)
.display(.flex)
.shadow(x: 20, y: 30, color: GColors.cardShadow)
.border(width: 1, color: .black)

output

CSS

要将 CSS 添加到样式表,您必须调用在 CSSExtensions.swift 中定义的函数之一。
如果一个元素具有类名,样式将自动添加到 CSSStyleSheet.swift 的样式表中。
CSSStyleSheet.swift 上调用 .generateStyleSheet() 将返回一个包含样式表的字符串。

示例

HyperSwift 正在 garrepi.dev 上使用! 查看 这里的 源代码。

用法

在您的 Package.swift

. . .
.package(url: "https://github.com/johngarrett/HyperSwift", .branch("main")),
. . .

贡献

非常希望得到帮助——有很多事情需要完成。

我几乎没有空闲时间,而且更缺乏专注于一个项目的能力。 欢迎发送 PR,其中包含想法、建议或实际代码!

如果您有任何我可以回答的问题,请在 twitter 上联系我