# rust-coal π
A static HTML development tool, built with Rust
![Image of Coal Mine Cart](examples/docs-source/assets/images/favicon.png)
## Who is this for?
Those that want to generate a basic static HTML site, with perhaps 1-10 pages, and do not want to maintain layouts, navigation elements, and footers across multiple files.
If you need programmatic components, then it would be better to utilize a more hands-on system like [GatsbyJS](https://www.gatsbyjs.com/), [React Static](https://github.com/react-static/react-static), or a Content Management System (CMS) such as [WordPress](https://wordpress.org/).
Just like in a typical [Jamstack](https://jamstack.org/) solution, the static HTML output can be easily served on [GitHub Pages](https://pages.github.com/), [Firebase Hosting](https://firebase.google.com/docs/hosting), and a number of other places. Also see about upcoming Docker support below.
## Documentation
See the [Coal Docs](https://camsjams.github.io/rust-coal/) for installation steps and detailed instructions.
## Features
- Blazing Fast π (Seriously - its fast)
- Zero config π
- Convention Over Configuration π
- Batteries Included π
- Standard HTML π
- HTML,CSS,JS minification ποΈ
- Asset Bundling π¦
- Supports static folder π
- Supports images/fonts π¦
- Local Dev Server βοΈ
- Basic Nested CSS ~SCSS :nail_care: [Using Grass](https://crates.io/crates/grass)
- Smart Execution During Local Dev β¨ (No need to restart server for _any_ changes)
- Leverages Locomotive Emoji π
## crate
https://crates.io/crates/coal
## Platforms / Technologies
* [Rust](https://www.rust-lang.org/)
* [Cargo](https://doc.rust-lang.org/cargo/)
## Current Version
v1.0.0
## Showcase
Sites using coal to generate simple static HTML websites - [Add yours via PR](https://github.com/camsjams/rust-coal/pulls):
* [Coal Docs](https://camsjams.github.io/rust-coal/) - [dogfooding FTW](https://en.wikipedia.org/wiki/Eating_your_own_dog_food)
* [CameronManavian.com](https://cameronmanavian.com/)
* [Rust Lang Los Angeles](https://rustlang.la/)
## Future Features
For feature requests, please see [this issue](https://github.com/camsjams/rust-coal/issues/1).
Some ideas (check issue for latest list):
- Docker build script π
- Custom reusable components (Like React or Vue) βοΈ
- Uglification of JS π§
- Option to produce external files for CSS and JS π
## Why Coal?
The name coal is just a shortened version of the word _coalesce_.
> **coΒ·aΒ·lesce**
> /ΛkΕΙΛles/
> *verb*
> _come together to form one mass or whole._