snowcap

Crates.iosnowcap
lib.rssnowcap
version0.1.3
sourcesrc
created_at2024-09-26 03:14:47.676904
updated_at2024-09-28 02:58:56.948307
descriptionA simple markup language for iced
homepagehttps://github.com/boondocklabs/snowcap
repositoryhttps://github.com/boondocklabs/snowcap
max_upload_size
id1386923
size241,688
Matt Thompson (boondocklabs)

documentation

README

Snowcap

Early stage markup for iced using pest

There is a simple viewer in bin/snowcap-viewer.rs with hot reloading. To run it, use cargo run samples/test.iced from the root of the project.

Here's an example of how the test.iced file renders.

Screenshot 2024-09-27 at 7 56 55 PM

Grammar

The grammar is specified in snowcap.pest and an example layout is in test.iced.

Iced Element Snowcap Syntax
Container {<attr:val,...> ...}
Row -<attr:val,...>[ element, ...]
Column |<attr:val,...>[ element, ...]
Stack ^<attr:val,...>[ element, ...]
Rule (horiz) rule-horizontal<height:2>()
Rule (vert) rule-vertical<width:2>()
Text text<attr:val,...>("Content")
Button button<attr:val,...>(element)
Toggler toggler<attr:val,...>(element)
QRCode qrcode<cell-size:10>(qr!("https://iced.rs"))
Markdown markdown(file!("README.md"))
Image image(file!("samples/ferris.png"))
Svg svg(file!("samples/coder.svg"))

For example, creating a container with a column would look like

{<width:"fill", align-x:"center">
	|<align:"center">[
		text<size:19>("Hello"),
		text<size:24>("Snowcap")
	]
}
Screenshot 2024-09-25 at 8 36 26 PM
Commit count: 30

cargo fmt