Swiftpack.co - pointfreeco/swift-html-kitura as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
pointfreeco/swift-html-kitura
☁️ Kitura plugin for type-safe, transformable HTML views.
.package(url: "https://github.com/pointfreeco/swift-html-kitura.git", from: "0.3.0")

swift-html-kitura has been deprecated

With IBM discontinuing its involvement in server-side Swift, we are choosing to deprecate support for this library. It will remain in an archived state as an example of how to integrate with swift-html.


swift-html-kitura

Swift 5 [Linux CI](https://trav is-ci.org/pointfreeco/swift-html-kitura) @pointfreeco

Kitura plugin for type-safe, transformable HTML views using swift-html.

Motivation

The most popular choice for rendering HTML in a Kitura web app is to use the Stencil templating language, but it exposes your application to runtime errors and invalid HTML. Our plugin prevents these runtime issues at compile-time by embedding HTML directly into Swift’s powerful type system. It uses the swift-html DSL for constructing HTML documents using plain Swift data structures.

Usage

To use the plugin all you have to do is return a Node value from your router callback:

import HtmlKituraSupport
import Kitura

let router = Router()

router.get("/") { request, response, next in
  response.send(
    Node.h1("Hello, type-safe HTML on Kitura!")
  )
  next()
}

Kitura.addHTTPServer(onPort: 8080, with: router)
Kitura.run()

Take it for a spin

We've included a sample Kitura application in this repo to show off its usage. To run the app immediately, simply do:

  • swift run HtmlKituraSupportExample
  • Open your browser to http://localhost:8080

The HTML for that page is constructed and rendered with swift-html!

If you want to run the app in Xcode so that you can play around with the HTML, try this:

  • git clone https://github.com/pointfreeco/swift-html-kitura
  • cd swift-html-kitura
  • make xcodeproj
  • Select the HtmlKituraSupportExample target
  • Build and run cmd+R
  • Open your browser to http://localhost:8080

Installation

If you want to use swift-html-kitura in a project that uses SwiftPM, it's as simple as adding a dependencies clause to your Package.swift:

dependencies: [
  .package(url: "https://github.com/pointfreeco/swift-html-kitura.git", from: "0.3.0")
]

Xcode Sub-project

Submodule, clone, or download swift-html-kitura, and drag HtmlKituraSupport.xcodeproj into your project.

License

All modules are released under the MIT license. See LICENSE for details.

GitHub

link
Stars: 11
Last commit: 5 weeks ago

Ad: Job Offers

iOS Software Engineer @ Perry Street Software
Perry Street Software is Jack’d and SCRUFF. We are two of the world’s largest gay, bi, trans and queer social dating apps on iOS and Android. Our brands reach more than 20 million members worldwide so members can connect, meet and express themselves on a platform that prioritizes privacy and security. We invest heavily into SwiftUI and using Swift Packages to modularize the codebase.

Submit a free job ad (while I'm testing this). The analytics numbers for this website are here.

Release Notes

Html 0.3.0 / Swift 5 Support
2 years ago

This release brings in support for Html 0.3.0 and Swift 5!

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics