Jon Kelley 8ea61e1b3e feat: simple iterators and conditionals in rsx (#564) há 2 anos atrás
..
assets 430cde7068 feat: default asset server há 3 anos atrás
README.md f89cd20455 fix tui example links (#607) há 2 anos atrás
all_css.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
all_events.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
borrowed.rs d734dc5b46 Remove argument from `use_hook` closure (#496) há 3 anos atrás
calculator.rs 540e785d8b Less clumsy configuration for desktop and mobile (#553) há 2 anos atrás
crm.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
custom_assets.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
custom_element.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
custom_html.rs 540e785d8b Less clumsy configuration for desktop and mobile (#553) há 2 anos atrás
disabled.rs 41b450eedf chore: remove unnecessary brackets from examples (#552) há 2 anos atrás
dog_app.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
error_handle.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
eval.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
fermi.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
file_explorer.rs 28fba42e7e feat: add an unhygenic render macro (#556) há 2 anos atrás
filedragdrop.rs 540e785d8b Less clumsy configuration for desktop and mobile (#553) há 2 anos atrás
flat_router.rs 540e785d8b Less clumsy configuration for desktop and mobile (#553) há 2 anos atrás
form.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
framework_benchmark.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
heavy_compute.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
hello_world.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
hydration.rs 540e785d8b Less clumsy configuration for desktop and mobile (#553) há 2 anos atrás
inlineprops.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
inputs.rs 41b450eedf chore: remove unnecessary brackets from examples (#552) há 2 anos atrás
link.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
login_form.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
nested_listeners.rs 41b450eedf chore: remove unnecessary brackets from examples (#552) há 2 anos atrás
optional_props.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
pattern_model.rs 540e785d8b Less clumsy configuration for desktop and mobile (#553) há 2 anos atrás
pattern_reducer.rs 41b450eedf chore: remove unnecessary brackets from examples (#552) há 2 anos atrás
readme.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
router.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
rsx_compile_fail.rs 41b450eedf chore: remove unnecessary brackets from examples (#552) há 2 anos atrás
rsx_usage.rs 41b450eedf chore: remove unnecessary brackets from examples (#552) há 2 anos atrás
simple_list.rs 8ea61e1b3e feat: simple iterators and conditionals in rsx (#564) há 2 anos atrás
ssr.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
suspense.rs 540e785d8b Less clumsy configuration for desktop and mobile (#553) há 2 anos atrás
svg.rs 28fba42e7e feat: add an unhygenic render macro (#556) há 2 anos atrás
svg_basic.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
tailwind.rs 540e785d8b Less clumsy configuration for desktop and mobile (#553) há 2 anos atrás
tasks.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
textarea.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
todomvc.rs 540e785d8b Less clumsy configuration for desktop and mobile (#553) há 2 anos atrás
window_event.rs 540e785d8b Less clumsy configuration for desktop and mobile (#553) há 2 anos atrás
window_zoom.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás
xss_safety.rs d9546d9504 Renderers are now packages, not features. (#387) há 3 anos atrás

README.md

Examples

These examples are fully-fledged mini Dioxus apps.

You can run them with cargo run --example EXAMPLE_NAME. Example:

cargo run --example hello_world

(Most of these examples are run through webview, so you don't need the Dioxus CLI installed)

Basic Features

hello_world - Most basic example

readme - Counter example from the Readme

custom_assets - Include images

custom_element - Render webcomponents

custom_html - Customize wrapper HTML

eval - Evaluate JS expressions

RSX

rsx_usage - Demo of all RSX features

xss_safety - You can include text without worrying about injections by default

Props

borrowed - Borrowed props

inlineprops - Demo of inline_props macro

optional_props - Optional props

CSS

all_css - You can specify any CSS attribute

tailwind - You can use a library for styling

Input Handling

all_events - Basic event handling demo

filedragdrop - Handle dropped files

form - Handle form submission

inputs - Input values

nested_listeners - Nested handlers and bubbling

textarea - Text area input

State Management

fermi - Fermi library for state management

pattern_reducer - The reducer pattern with use_state

rsx_compile_fail

Async

login_form - Login endpoint example

suspense - Render placeholders while data is loading

tasks - Continuously run future

SVG

svg_basic

svg

Performance

framework_benchmark - Renders a huge list

Note: The benchmark should be run in release mode:

cargo run --example framework_benchmark --release

heavy_compute - How to deal with expensive operations

Server-side rendering

ssr - Rendering RSX server-side

hydration - Pre-rendering with hydration

Common Patterns

disabled - Disable buttons conditionally

error_handle - Handle errors with early return

Routing

flat_router - Basic, flat route example

router - Router example

link - Internal, external and custom links

Platform Features

window_event - Window decorations, fullscreen, minimization, etc.

window_zoom – Zoom in or out

Example Apps

calculator - Simple calculator

pattern_model - Simple calculator, but using a custom struct as the model

crm - Toy multi-page customer management app

dog_app - Accesses dog API

file_explorer - File browser that uses use_ref to interact with the model

todomvc - Todo task list example

Terminal UI

tui_all_events - All of the terminal events

tui_border - Different styles of borders and corners

tui_buttons - A grid of buttons that work demonstrate the focus system

tui_color_test - Grid of colors to demonstrate compatablility with different terminal color rendering modes

tui_colorpicker - A colorpicker

tui_components - Simple component example

tui_flex - Flexbox support

tui_hover - Detect hover and mouse events

tui_list - Renders a list of items

tui_margin - Margins around flexboxes

tui_quadrants - Four quadrants

tui_readme - The readme example

tui_task - Background tasks

tui_text - Simple text example

TODO

Missing Features

  • Fine-grained reactivity
  • Refs - imperative handles to elements
  • Function-driven children: Pass functions to make VNodes

Missing examples

  • Shared state
  • Root-less element groups
  • Spread props
  • Custom elements
  • Component Children: Pass children into child components
  • Render To string: Render a mounted virtualdom to a string
  • Testing and Debugging