#yew #component #bulma

yew_bulma_components

Yew bluma componets

2 releases

0.1.1 Jun 5, 2021
0.1.0 Jun 4, 2021

#1405 in WebAssembly

MIT license

8KB
150 lines

yew-bulma-components

Introduction

clone project and Create a new project.

git clone https://github.com/doberan/yew-bulma-components.git
cargo new --bin sample-yew-homepage
cd sample-yew-homepage
touch index.html

edit Cargo.toml.

[package]
authors = []
edition = "2018"
name = "sample_yew_homepage"
version = "0.1.0"
[dependencies]
wasm-bindgen = "0.2.74"
yew = "0.18.0"
yew_bulma_components = "0.1.0"

edit index.html.

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>Sample Yew Project.</title>
    <base data-trunk-public-url />
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@0.9.0/css/bulma.min.css" />
  </head>
</html>

edit main.rs

extern crate yew_bulma_components;
use yew::prelude::*;
use yew_bulma_components::components::atoms::h1;

pub struct Home;
impl Component for Home {
    type Message = ();
    type Properties = ();

    fn create(_props: Self::Properties, _link: ComponentLink<Self>) -> Self {
        Self
    }

    fn update(&mut self, _msg: Self::Message) -> ShouldRender {
        unimplemented!()
    }

    fn change(&mut self, _props: Self::Properties) -> ShouldRender {
        false
    }

    fn view(&self) -> Html {
        html! {
          <h1::Text classes="title" title="Sample homepage" />
        }
    }
}

fn main() {
    yew::start_app::<Home>();
}

execute serve.

trunk serve

Dependencies

~13MB
~254K SLoC