14 releases
0.3.4 | Aug 11, 2020 |
---|---|
0.3.3 | Jul 28, 2020 |
0.3.2 | May 31, 2020 |
0.2.0 | Nov 17, 2018 |
0.1.7 | Oct 13, 2018 |
#1000 in Web programming
44 downloads per month
Used in tachyons
23KB
173 lines
html-index
Generate an HTML index.
Why?
Over the years the HTML spec has added lots of new capabilities in a backwards compatible fashion. This means that even if something from the 90's might still work in today's browsers, it might not always be the most efficient.
This crate makes it easy to build performant HTML without needing to remember all boilerplate involved.
Examples
Basic
extern crate html_index;
pub fn main() {
let res = html_index::Builder::new()
.raw_body("<body>hello world</body>")
.script("/bundle.js")
.style("/bundle.css")
.build();
println!("{}", res);
}
Which generates:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="preload" as="style" href="/bundle.css" onload="this.rel='stylesheet'">
<script src="/bundle.js" defer></script>
</head>
<body>hello world</body>
</html>
Installation
$ cargo add html-index
Safety
This crate uses #![deny(unsafe_code)]
to ensure everything is implemented in
100% Safe Rust.
Contributing
Want to join us? Check out our "Contributing" guide and take a look at some of these issues:
References
None.
License
MIT OR Apache-2.0
Dependencies
~5.5MB
~122K SLoC