├── examples
└── basic_usage
│ ├── .gitignore
│ ├── index.html
│ ├── README.md
│ ├── src
│ └── main.rs
│ └── Cargo.toml
├── .gitignore
├── package.json
├── Cargo.toml
├── .github
└── workflows
│ └── main.yml
└── README.md
/examples/basic_usage/.gitignore:
--------------------------------------------------------------------------------
1 | /dist/
2 | /target/
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /target
2 | /node_modules
3 | Cargo.lock
4 | pnpm-lock.yaml
5 | yarn.lock
6 | package-lock.json
7 |
--------------------------------------------------------------------------------
/examples/basic_usage/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Yew-Feather example
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/basic_usage/README.md:
--------------------------------------------------------------------------------
1 | ## yew-feather basic usage
2 |
3 | This example can be built with [`trunk`](https://trunkrs.dev) and served by executing `trunk serve` from this directory.
--------------------------------------------------------------------------------
/examples/basic_usage/src/main.rs:
--------------------------------------------------------------------------------
1 | use yew::{function_component, html, Html};
2 | use yew_feather::Camera;
3 |
4 | #[function_component(App)]
5 | fn app() -> Html {
6 | html! { }
7 | }
8 |
9 | fn main() {
10 | yew::start_app::();
11 | }
12 |
--------------------------------------------------------------------------------
/examples/basic_usage/Cargo.toml:
--------------------------------------------------------------------------------
1 | [package]
2 | name = "basic-usage"
3 | version = "0.1.0"
4 | authors = [
5 | "Pedro Ferreira ",
6 | "Martin Molzer ",
7 | ]
8 | license = "MIT"
9 | edition = "2021"
10 |
11 | [dependencies]
12 | yew = "0.20.0"
13 | yew-feather = { path = "../../" }
14 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "yew-feather",
3 | "version": "1.0.0",
4 | "description": "Yew components for Feather icons",
5 | "author": "pedrodesu ",
6 | "contributors": [
7 | "Martin Molzer "
8 | ],
9 | "repository": {
10 | "type": "git",
11 | "url": "https://github.com/pedrodesu/yew-feather.git"
12 | },
13 | "license": "MIT",
14 | "devDependencies": {
15 | "feather-icons": "^4.29.0"
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Cargo.toml:
--------------------------------------------------------------------------------
1 | [package]
2 | name = "yew-feather"
3 | version = "1.0.0"
4 | authors = [
5 | "Pedro Ferreira ",
6 | "Martin Molzer ",
7 | ]
8 | categories = ["wasm", "web-programming"]
9 | keywords = ["wasm", "yew", "feather"]
10 | description = "Yew components for Feather icons"
11 | license = "MIT"
12 | readme = "./README.md"
13 | repository = "https://github.com/pedrodesu/yew-feather.git"
14 | homepage = "https://github.com/pedrodesu/yew-feather"
15 | documentation = "https://github.com/pedrodesu/yew-feather"
16 | edition = "2021"
17 | include = ["/src"]
18 |
19 | [lib]
20 | path = "src/lib.rs"
21 |
22 | [dependencies]
23 | yew = "0.20.0"
24 |
25 | [build-dependencies]
26 | which = "4.3.0"
27 | serde_json = "1.0.91"
28 | convert_case = "0.6.0"
29 |
--------------------------------------------------------------------------------
/.github/workflows/main.yml:
--------------------------------------------------------------------------------
1 | name: Publish yew-feather
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 |
8 | jobs:
9 | publish:
10 | runs-on: ubuntu-latest
11 | steps:
12 | - name: Checkout sources
13 | uses: actions/checkout@v2
14 |
15 | - name: Install node
16 | uses: actions/setup-node@v2
17 | with:
18 | node-version: 16
19 |
20 | - name: Install rust
21 | uses: actions-rs/toolchain@v1.0.6
22 | with:
23 | toolchain: stable
24 | override: true
25 | profile: minimal
26 |
27 | - name: Build release
28 | run: cargo build --release
29 |
30 | - name: Publish
31 | uses: katyo/publish-crates@v1
32 | with:
33 | registry-token: ${{ secrets.cargo_token }}
34 | args: --allow-dirty
35 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ## yew-feather
2 |
3 | [](https://crates.io/crates/yew-feather)
4 | [](https://crates.io/crates/yew-feather)
5 |
6 | #### What is yew-feather?
7 |
8 | yew-feather is a collection of simply beautiful open source icons for Yew. Each icon is designed on a 24x24 grid with an emphasis on simplicity, consistency and readability.
9 |
10 | #### Based on Feather Icons `v4.29.0`
11 |
12 | https://feathericons.com/
13 |
14 | ### Usage
15 |
16 | ```rust
17 | use yew::{function_component, html, Html};
18 | use yew_feather::Camera;
19 |
20 | #[function_component(App)]
21 | fn app() -> Html {
22 | html! { }
23 | }
24 |
25 | fn main() {
26 | yew::start_app::();
27 | }
28 | ```
29 |
30 | Icons can be configured with inline props:
31 |
32 | ```rust
33 |
34 | ```
35 |
--------------------------------------------------------------------------------