MakeupStudio / Makeup

Swift DSL for html rendering.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Makeup πŸ’‹

Bitrise SwiftPM Mac & Linux Twitter: @maximkrouk

Swift DSL for rendering WebPages. Not the first, but the best (will become, one day... 😌)

Usage

// Swift
document {
    html {
        head {
            title("My first Site")
        }
        body {
            header {
                h1("Hello, world!")
            }
            main {
                h2("Rendered by Makeup.")
                a("GitHub")
                    .href("https://github.com/maximkrouk/Makeup")
                    .foreground(color: .livingCoral)
            }
            footer {
                h6("Makeup. Swift HTML-rendering framework.")
            }
        }
        .font(name: .arial)
        .foreground(color: .white)
        .background(color: .ultraviolet)
    }
}

is rendered to:

<!DOCTYPE HTML>
<html>
    <head>
        <title>
            My first Site
        </title>
    </head>
    <body style="font-family:'arial';color:rgba(255.0,255.0,255.0,255.0);background-color:rgba(100.0,83.0,148.0,255.0);">
        <header>
            <h1>
                Hello, world!
            </h1>
        </header>
        <main>
            <h2>
                Rendered by Makeup.
            </h2>
            <a href="https://github.com/maximkrouk/Makeup", style="color:rgba(250.0,114.0,104.0,255.0);">
                GitHub
            </a>
        </main>
        <footer>
            <h6>
                Makeup. Swift HTML-rendering framework.
            </h6>
        </footer>
    </body>
</html>

and looks like:

Example-iPhone5

Installation

Add the package to Your SwiftPM package dependencies:

.package(url: "https://github.com/MakeupStudio/Makeup.git", .branch("master"))

then add Makeup dependency to your target.

.product(name: "Makeup", package: "Makeup")

Still in Beta

Not recommended for production use before the first release, but you are welcome to test it out πŸ˜‰

Sites using Makeup

makeupstudio.dev

Thanks for inspiration and ideas

----

You may contact me here if You want to contribute before the guide is provided or if You have any other questions or ideas.

About

Swift DSL for html rendering.

License:MIT License


Languages

Language:Swift 75.7%Language:Dockerfile 24.3%