Home

Awesome

<div align="center"> <img src="https://user-images.githubusercontent.com/37006668/210620713-562cda3d-9eaa-40c6-a22a-e5d9bd11b425.svg" width="200" /> <h1>Sycamore</h1> </div> <div align="center">

Crates.io docs.rs GitHub contributors Discord

</div>

Sycamore is a reactive library for creating web apps in Rust and WebAssembly.

#[component]
fn Hello() -> View {
    view! {
        p { "Hello World!" }
    }
}

Documentation

Sycamore is extensively documented:

Still have questions? Don't hesitate to stop by our friendly Discord server.

Examples

Sycamore has many examples for your reference in the examples/ directory. Be sure to check them out!

Viewing on examples.sycamore.dev

All the examples are hosted under examples.sycamore.dev/<example_name> with <example_name> being the name of the example you want to view. For instance, the todomvc example is hosted on examples.sycamore.dev/todomvc.

Building Locally

All the examples can also be built locally using Trunk. For instance, the following command builds and serves the todomvc example:

cd examples/todomvc
trunk serve

Now open up http://localhost:8080 in your browser to see the example running in action.

Alternatives?

Don't think Sycamore is for you? Thankfully, there are plenty of alternatives!

Contributing

Sycamore would not have been possible without the wonderful contributions from the community. Thank you!

<a href="https://github.com/sycamore-rs/sycamore/graphs/contributors"> <img src="https://contrib.rocks/image?repo=sycamore-rs/sycamore" /> </a>

Special thanks to @nate-sys for designing the Sycamore logo!