creactiviti/jiccup
github.comJiccup
Jiccup is a Hiccup-inpsired library for representing HTML in Java.
Warning: This project is still in an experimental phase.
Requirements
Java 1.8+
Install
<dependency> <groupId>com.creactiviti</groupId> <artifactId>jiccup</artifactId> <version>0.0.1-SNAPSHOT</version> </dependency> <repositories> <repository> <id>maven-snapshots</id> <url>http://oss.sonatype.org/content/repositories/snapshots</url> <layout>default</layout> <releases> <enabled>false</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories>
Syntax
Hello World
Here is a basic example of Jiccup's syntax:
import static com.creactiviti.jiccup.Elements.*; ... html ( body( h1(content("Hello World")) ) );
Which will render the following HTML:
<html> <body> <h1>Hello World</h1> </body> </html>
Bootstrap Example
import static com.creactiviti.jiccup.Elements.*; ... html ( head ( stylesheet("https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"), stylesheet("/starter-template.css"), title("Starter Template for Bootstrap") ), body( nav( css("navbar","navbar-inverse","navbar-fixed-top"), div( css("container"), div( css("navbar-header"), button(css("navbar-toggle","collapsed"),span(css("sr-only"),content("Toggle navigation")),attr("type", "button")), a(href("/"),content("Project name"),css("navbar-brand")) ), div( id("navbar"), css("collapse","navbar-collapse"), ul( css("nav","navbar-nav"), li(a(href("/"),css("active"),content("Home"))), li(a(href("#about"),content("About"))), li(a(href("#contact"),content("Contact"))) ) ) ) ) div( css("container"), div(css("starter-template"), h1(content("Bootstrap starter template")), p(css("lead"),content("Use this document as a way to quickly start any new project.<br> All you get is this text and a mostly barebones HTML document.")) ) ) ) )
Which renders bootstrap's starter template.
Spring Integration
See Spring Boot Starter Jiccup
License
Jiccup is released under version 2.0 of the Apache License.
Source github.com