Jonathan Kelley
4f9d67fb45
feat: simple signals implementation
2023-01-01 19:57:33 -05:00
Jonathan Kelley
d3ab397ad3
chore: add transparency and overlay
2022-12-30 22:30:04 -05:00
Jonathan Kelley
c890051f87
chore: add back examples
2022-12-28 16:23:05 -05:00
Jonathan Kelley
bc3cf6501c
feat: complete html to rsx rosetta
2022-12-28 16:22:20 -05:00
Jonathan Kelley
14bc007c15
wip: refactor out translation into its own crate
2022-12-28 11:51:41 -05:00
Adrian Wannenmacher
dbbfdefc21
Merge branch 'master' of github.com:DioxusLabs/dioxus into router-2
2022-12-23 18:19:02 +01:00
Jonathan Kelley
8d7d07db56
chore: make clippy happy in workspace crate
2022-12-19 11:56:44 -08:00
Adrian Wannenmacher
a7e9b32f7e
Merge branch 'master' of github.com:DioxusLabs/dioxus into router-2
2022-12-14 17:19:37 +01:00
Jonathan Kelley
5c20e651da
fix: get rollover working
2022-12-13 14:44:47 -08:00
Adrian Wannenmacher
1d69698ec9
Merge branch 'master' of github.com:DioxusLabs/dioxus into router-2
2022-12-08 23:01:12 +01:00
Jonathan Kelley
f075a519cc
chore: prevent publishing
2022-12-07 13:21:38 -08:00
Jonathan Kelley
6184ea500b
chore: also fix native core
2022-12-07 13:20:31 -08:00
Adrian Wannenmacher
1f1c49b9c9
add router core
2022-12-03 21:49:16 +01:00
Jonathan Kelley
3b166c9edd
wip: clean up some things
2022-11-30 23:54:30 -05:00
Jonathan Kelley
18d6b1ad6f
feat: get web working properly
2022-11-30 17:21:10 -05:00
Jonathan Kelley
4a31b29703
feat: simple tests passing
2022-11-01 18:42:29 -07:00
Jonathan Kelley
90982e0ccb
wip: start to refactor out hot reloading from packages
...
Also implement alternative simpler template system
2022-10-20 09:56:09 -07:00
Demonthos
047ed1e553
Subtree memorization / reactive templates ( #488 )
...
This commit adds subtree memoization to Dioxus.
Subtree memoization is basically a compile-time step that drastically
reduces the amount of work the diffing engine needs to do at runtime by
extracting non-changing nodes out into a static "template." Templates
are then understood by the various renderers in the ecosystem as a
faster way of rendering the same items.
For example, in the web, templates are simply a set of DOM Nodes created
once and then cloned later. This is the same pattern frameworks like Lithtml
and SolidJS use to achieve near-perfect performance.
Subtree memoization adds an additional level of complexity to Dioxus. The RSX
macro needs to be much smarter to identify changing/nonchanging nodes and
generate a mapping between the Template and its runtime counterparts.
This commit represents a working starter point for this work, adding support
for templates for the web, desktop, liveview, ssr, and native-core renderers.
In the future we will try to shrink code generation, generally improve
performance, and simplify our implementation.
2022-09-30 12:03:06 -07:00
Jon Kelley
d9546d9504
Renderers are now packages, not features. ( #387 )
...
* feat: use synchronous router design
* feat: function to get router out of dom
* chore: restructure workspace to use renderers as packages, not features
2022-07-09 15:15:20 -04:00
Reinis Mazeiks
6c323e9fc5
Rework Guide ( #486 )
...
* Move getting started to Guide
* Clean up summary and getting started
* Shorten intro by moving stuff to individual platform docs
* Make intro even shorter, summarize features
* Further cleanup; move development-related docs to separate section
* Make `guide` a crate. Turn code samples into examples so that we can check if they compile
* Rewrite "Describing the UI":
* Focus on RSX syntax (interactivity covered in later chapters); make sure samples are tested; concise language
* Move some "special attribute" samples to the `examples` directory
* Simplify introduction to components
* Simplify introduction to component props
* Document Prop features; add code samples
* Simplify component children docs
* Interactivity: better introduction to events
* Hooks: better introduction
* Remove outdated doc
* Introducs use_ref
* Simplify User Input chapter
* Document event handler props
* Meme editor example
* Meme editor walkthrough
* Add dark mode example
* Guide for context; dark mode example
* Guide: custom hooks
* Guide: conditional rendering
* Guide: rendering lists
* Guide: rendering lists + keys
* Move remaining infor from Reference to guide
* Delete reference book
2022-07-07 08:50:36 +00:00
Jonathan Kelley
e627a66acc
Merge branch 'master' into jk/autofmt
2022-06-30 15:23:05 -04:00
Evan Almloff
706b6c957b
change hot_reload to hot-reload in dev-dependancies
2022-06-26 07:26:03 -05:00
Evan Almloff
041f474329
Merge remote-tracking branch 'upstream/master' into clean_up_rsx_imports
2022-06-26 07:22:55 -05:00
YuKun Liu
0af69f83f2
Rename hot_reload
to hot-reload
2022-06-26 14:23:19 +08:00
Evan Almloff
6c20d74797
finish cleanup
2022-06-25 08:48:03 -05:00
Evan Almloff
fbf8e13b8d
clean up imports
2022-06-25 08:27:10 -05:00
YuKun Liu
1c31fd0e22
Update Cargo.toml
2022-06-25 15:36:47 +08:00
Jonathan Kelley
5b9e34aadd
feat: add fork of prettyplease for autoformatting
2022-06-24 14:22:08 -04:00
Evan Almloff
9be8cc503f
restore router
2022-06-16 21:08:48 -05:00
Evan Almloff
79ddab2720
restore dev-dependancies
2022-06-16 21:07:18 -05:00
Demonthos
df4ea20bb8
create serde compatible parse error
2022-06-15 12:58:08 -05:00
Evan Almloff
017d269ca8
fix websocket error reporting
2022-06-09 09:36:28 -05:00
Evan Almloff
3cd4175e2e
remove braces from captured variables
2022-06-05 08:39:50 -05:00
Evan Almloff
0079f7d18b
WIP: expose pipe for desktop
2022-06-02 13:33:08 -05:00
Evan Almloff
3b2ac82e8d
fix spelling of interpreter
2022-05-31 12:18:22 -05:00
Evan Almloff
195dd22206
don't compile dioxus-router unless the router feature is enabled
2022-05-28 12:11:47 -05:00
Evan Almloff
f9713b2fe9
Merge remote-tracking branch 'origin/master' into jk/rsx-refactor
2022-05-27 17:56:50 -05:00
Evan Almloff
13125fef4e
restore dev dependancies
2022-05-27 17:54:36 -05:00
Evan Almloff
fb4cb1a05b
remove autoformat
2022-05-25 14:02:43 -05:00
Evan Almloff
ca10d89670
add RsxTextIndex
2022-05-25 11:20:07 -05:00
Evan Almloff
c7c84da8ab
WIP hot reload
2022-05-25 08:58:59 -05:00
Jonathan Kelley
8ab1c4d0de
feat: upgrade wry
2022-05-05 16:29:24 -04:00
Jonathan Kelley
4ef2cfaba5
fix: specify version
2022-05-03 00:05:54 -04:00
Jonathan Kelley
3febd42588
Release dioxus-core v0.2.1, dioxus-core-macro v0.2.1, dioxus-html v0.2.1, dioxus-interpreter-js v0.2.1, dioxus-desktop v0.2.3, dioxus-hooks v0.2.1, dioxus-liveview v0.1.0, dioxus-native-core v0.2.0, dioxus-native-core-macro v0.2.0, dioxus-router v0.2.3, dioxus-ssr v0.2.1, dioxus-tui v0.2.2, dioxus-web v0.2.1, fermi v0.2.1, dioxus v0.2.4
2022-05-02 23:57:20 -04:00
Evan Almloff
0b1e17c830
add native-core-macro to workspace
2022-05-02 20:25:29 -05:00
Jonathan Kelley
4fa909e864
feat: ensure parsing works with right indicies
2022-04-24 19:38:28 -04:00
Jonathan Kelley
2a1970b3a9
feat: add prettyplease vendored and get basic test working
2022-04-24 02:55:20 -04:00
Jonathan Kelley
794f43ffee
concept: move rsx out to its own crate
2022-04-24 02:35:52 -04:00
Evan Almloff
c8919ad77b
add benchmark
2022-04-20 21:44:37 -05:00
Evan Almloff
92f48169e9
WIP new api
2022-04-08 21:17:37 -05:00
Evan Almloff
5b25500c0b
finishing touches and benchmarks
2022-03-30 20:45:41 -05:00
Evan Almloff
26d92b6e51
rebase master
2022-03-26 20:27:10 -05:00
Ilya Maximov
b8573bc4dd
refactor: remove the rsx folder
...
it doesn't seem to be published anywhere or used at all
2022-03-19 20:35:53 +01:00
Jonathan Kelley
7e9d7c3ef0
feat: add feature flag for liveview
2022-03-15 01:57:40 -04:00
Jonathan Kelley
71184b51a0
feat: liveview working with warp
2022-03-15 01:02:44 -04:00
Jonathan Kelley
3f130d9bd0
fix: use updated version of stretch for layout
2022-03-09 21:42:37 -05:00
Jonathan Kelley
ed07e914d3
fix: compile router on web
2022-03-09 21:14:22 -05:00
Jonathan Kelley
1c2e5e2aea
publish: update dioxus with router fix
2022-03-09 17:53:02 -05:00
Jonathan Kelley
e7505188d6
release: make a new 0.2.0 release of Dioxus
2022-03-09 14:24:05 -05:00
Jonathan Kelley
58a20913b6
chore; make tui pass clippy
2022-03-09 13:30:44 -05:00
Jonathan Kelley
83be3df42a
cfg: expose router feature flags for web
2022-03-04 14:34:25 -05:00
Jonathan Kelley
c19995fed9
fix: debug multistage edits in desktop
2022-03-04 13:17:01 -05:00
Jonathan Kelley
e04a6d63a5
chore: move tests out of core and into the top level crate
...
This commit moves the tests out of core so rust analyzer
is happier with the workspace.
2022-03-02 22:48:22 -05:00
Jörg Kurlbaum
cc0e2c4877
Add options for compilation on systems that lack libappindicator3
2022-02-24 14:32:43 +01:00
Jonathan Kelley
45231651dd
fix: quick patch
2022-02-22 16:34:06 -05:00
Jonathan Kelley
93b4f745af
Merge pull request #132 from DioxusLabs/jk/partialexpansion
...
feat: split out rsx into its own crate
2022-02-19 00:02:10 -05:00
Jonathan Kelley
c1d692dd97
fix: dioxus must specify rust versionand edition
2022-02-18 23:33:48 -05:00
Jonathan Kelley
b93487282d
feat: move files around
2022-02-18 20:54:30 -05:00
Jonathan Kelley
7c788e59f5
Merge branch 'master' into jk/partialexpansion
2022-02-18 15:34:52 -05:00
Jonathan Kelley
b2472e3cfe
Merge branch 'master' into jk/partialexpansion
2022-02-18 15:31:49 -05:00
Jonathan Kelley
d461ffc011
feat: integrate fermi
2022-02-17 10:38:51 -05:00
Christoph Grabo
ee2b869e99
Add optional feature flags of wry
...
Check wry's documentation for each.
Some of them are platform dependent or
have platform dependent effects.
(mostly MacOS and Linux)
2022-02-13 20:30:10 +01:00
Christoph Grabo
c502535724
Update dependencies
...
Specifically set wry to 0.13;
this has breaking changes (notably: RPC -> IPC).
2022-02-13 20:30:10 +01:00
Jonathan Kelley
ca7ce46cdb
Merge branch 'master' into jk/partialexpansion
2022-02-13 12:36:02 -05:00
Jonathan Kelley
ee67a041d2
feat: turn interpreter into crate
2022-02-01 15:38:48 -05:00
Dave Rolsky
d8ee553eac
Fix the license field in Cargo.toml to be valid SPDX
2022-01-30 11:44:56 -06:00
Jonathan Kelley
875977f5a6
publish: update 0.1.8 for dioxus
2022-01-29 10:48:41 -05:00
Jonathan Kelley
9b3192323e
Release dioxus-desktop v0.1.6
2022-01-29 10:43:43 -05:00
Jonathan Kelley
6339fa8188
Release dioxus-html v0.1.6, dioxus-router v0.1.1
2022-01-29 10:42:52 -05:00
Jonathan Kelley
f6c6134d67
Release dioxus-core v0.1.9
2022-01-29 10:42:38 -05:00
Jonathan Kelley
d570bb6c42
Release dioxus-router v0.1.1
2022-01-29 10:40:03 -05:00
Jonathan Kelley
2c51a090e3
Release dioxus-web v0.0.5
2022-01-29 10:37:50 -05:00
Jonathan Kelley
3c2d5985da
Release dioxus-ssr v0.1.3
2022-01-29 10:37:34 -05:00
Jonathan Kelley
539ca2d655
Release dioxus-hooks v0.1.7
2022-01-29 10:37:03 -05:00
Jonathan Kelley
11ba189eab
Release dioxus-html v0.1.5
2022-01-29 10:36:24 -05:00
Jonathan Kelley
f965030b80
Release dioxus-core v0.1.8
2022-01-29 10:36:10 -05:00
Jonathan Kelley
1b2a0053ef
Release dioxus-core-macro v0.1.7
2022-01-29 10:35:54 -05:00
Jonathan Kelley
174d287062
wip: extract to rsx module
2022-01-17 23:02:36 -05:00
Jonathan Kelley
abfac0d59b
wip: move macro lib out of proc macro crate
2022-01-17 16:37:44 -05:00
Jonathan Kelley
0d1a9eb460
release: add version for router
2022-01-08 02:32:26 -05:00
Jonathan Kelley
40d1f85d0c
Release dioxus-core v0.1.7, dioxus-core-macro v0.1.6, dioxus-html v0.1.4, dioxus-desktop v0.1.5, dioxus-hooks v0.1.6, dioxus-mobile v0.0.3, dioxus-router v0.1.0, dioxus-ssr v0.1.2, dioxus-web v0.0.4, dioxus v0.1.7
2022-01-08 02:25:03 -05:00
Jonathan Kelley
53ef41aa3d
examples: simplfy running them by enabling features automatically
2022-01-07 10:50:37 -05:00
Jonathan Kelley
cb2782b4bb
wip: memoize dom in the prescence of identical components
2022-01-05 00:27:22 -05:00
Jonathan Kelley
7cf15ee4e8
publish: include desktop fixes
2022-01-03 21:36:43 -05:00
Jonathan Kelley
4ea5c990d7
publish: new versions of everything
2022-01-03 19:44:04 -05:00
Jonathan Kelley
4f92ba4160
wip: bump all versions
2022-01-03 19:32:27 -05:00
Jonathan Kelley
fdbc2bc915
publish: remove router
2022-01-03 14:08:31 -05:00
Jonathan Kelley
b3b4c580df
wip: bump versions
2022-01-03 14:07:22 -05:00
Jonathan Kelley
54103da019
publish: bump desktop version
2022-01-03 14:03:17 -05:00
Jonathan Kelley
99d6409f7a
publish: bump mobile
2022-01-03 13:38:56 -05:00
Jonathan Kelley
1b6e608cd0
docs: update references
2022-01-03 10:20:14 -05:00
Jonathan Kelley
ee2068fd5c
publish: bump main crate
2022-01-03 02:24:21 -05:00
Jonathan Kelley
a2317bf5b0
publish: ssr
2022-01-03 02:23:26 -05:00
Jonathan Kelley
d78815103d
wip: remove hooks warnigns
2022-01-03 02:20:11 -05:00
Jonathan Kelley
c1f8424693
publish: desktop
2022-01-03 02:18:11 -05:00
Jonathan Kelley
420a30e5d4
feat: overhaul examples and clean things up
2022-01-03 00:42:17 -05:00
Jonathan Kelley
14961023f9
wip: polish some more things
2021-12-29 21:28:28 -05:00
Jonathan Kelley
934de21dd6
wip: miri stress tets
2021-12-18 23:03:59 -05:00
Jonathan Kelley
2c3a046426
wip: prepare to change our fragment pattern. Add some more docs
2021-12-18 15:17:32 -05:00
Jonathan Kelley
2b928372fb
Release dioxus-core v0.1.3, dioxus-core-macro v0.1.2, dioxus-html v0.1.0, dioxus-desktop v0.0.0, dioxus-hooks v0.1.3, dioxus-liveview v0.1.0, dioxus-mobile v0.0.0, dioxus-router v0.1.0, dioxus-ssr v0.1.0, dioxus-web v0.0.0, dioxus v0.1.1
2021-12-15 16:07:09 -05:00
Jonathan Kelley
6a3c61fae8
fix: version number
2021-12-15 16:07:07 -05:00
Jonathan Kelley
3a706ac416
Release dioxus-core v0.1.3, dioxus-core-macro v0.1.2, dioxus-html v0.1.0, dioxus-desktop v0.0.0, dioxus-hooks v0.1.3, dioxus-liveview v0.1.0, dioxus-mobile v0.0.0, dioxus-router v0.1.0, dioxus-ssr v0.1.0, dioxus-web v0.0.0, dioxus v0.1.0
2021-12-15 16:04:30 -05:00
Jonathan Kelley
e4c06ce8e8
docs: update cargo tomls
2021-12-15 16:04:27 -05:00
Jonathan Kelley
270dfc9590
Release dioxus-core v0.1.3, dioxus-core-macro v0.1.2, dioxus-html v0.1.0, dioxus-desktop v0.0.0, dioxus-hooks v0.1.3, dioxus-liveview v0.1.0, dioxus-mobile v0.0.0, dioxus-router v0.1.0, dioxus-ssr v0.1.0, dioxus-web v0.0.0, dioxus v0.1.0
2021-12-15 15:59:11 -05:00
Jonathan Kelley
3ddf395772
wip: docs
2021-12-14 22:59:34 -05:00
Jonathan Kelley
1e4a599d14
wip: rename fc to component
2021-12-09 21:19:31 -05:00
Jonathan Kelley
93d4b8ca7c
wip: some docs and suspense
2021-11-23 15:53:57 -05:00
Jonathan Kelley
a5f05d73ac
wip: docs and router
2021-11-19 00:49:04 -05:00
Jonathan Kelley
1e6e5e611b
wip: move examples around
2021-11-03 15:13:50 -04:00
Jonathan Kelley
d298b626d3
wip: add router
2021-11-03 00:35:56 -04:00
Jonathan Kelley
83dd49d890
chores: slim deps and upgrade docs
2021-10-19 12:09:23 -04:00
Jonathan Kelley
16dbf4a6f8
wip: book documentation
2021-10-16 17:04:28 -04:00
Jonathan Kelley
460783ad54
docs: lnks to projects
2021-10-14 12:46:50 -04:00
Jonathan Kelley
2403990ea3
docsd: more example images
2021-10-12 02:26:06 -04:00
Jonathan Kelley
a2b0c50a34
feat: add update functionality to useref
2021-10-04 10:22:20 -04:00
Jonathan Kelley
7a03c1d2b4
wip: overhaul event system
2021-10-04 01:28:04 -04:00
Jonathan Kelley
82953f2ac3
wip: threadsafe
2021-10-01 02:07:12 -04:00
Jonathan Kelley
10d335ae31
publish: remove wildcards
2021-09-24 21:35:32 -04:00
Jonathan Kelley
718fa14b45
feat: a cute crm
2021-09-24 01:24:03 -04:00
Jonathan Kelley
1a2f91ed91
polish: examples
2021-09-24 00:05:56 -04:00
Jonathan Kelley
725b4a1d7f
wip: fix some event stuff for web and core
2021-09-02 00:37:57 -04:00
Jonathan Kelley
3bf19d8106
wip: more work on web
...
this commit adds complete event support for web-sys but with a few hole
2021-08-25 10:49:18 -04:00
Jonathan Kelley
c1afeba1ef
wip: groundwork for noderefs
2021-08-09 17:09:33 -04:00
Jonathan Kelley
49856ccd68
wip: making progress on diffing and hydration
2021-07-28 21:46:53 -04:00
Jonathan Kelley
f782e14211
feat: omg what a dumb mistake
2021-07-27 00:27:07 -04:00
Jonathan Kelley
583fdfa561
docs: big updates to the reference
2021-07-16 16:11:25 -04:00
Jonathan Kelley
caf772cf24
wip: docs, html! macro, more
2021-07-16 00:27:06 -04:00
Jonathan Kelley
8f0bb5dc5b
chore: cleanup workspace
2021-07-15 18:40:12 -04:00
Jonathan Kelley
3bedcb93ca
feat: svgs working in webview
2021-07-15 12:18:11 -04:00
Jonathan Kelley
3a57b94262
feat: task system works
...
but I broke the other things :(
2021-07-14 02:04:19 -04:00
Jonathan Kelley
775e9e29b8
wip: cut down on errors
2021-07-13 16:48:11 -04:00
Jonathan Kelley
a85b8c4b6b
wip: apply formatting
2021-07-12 13:03:24 -04:00
Jonathan Kelley
56e7eb83a9
wip: more examples
2021-07-11 19:31:07 -04:00
Jonathan Kelley
304259d818
wip: move examples around
2021-07-11 18:39:45 -04:00
Jonathan Kelley
9abb0470b7
feat: static node infrastructure and ssr changes
2021-07-11 14:49:52 -04:00
Jonathan Kelley
975fa566f9
wip: more refactor for async
2021-07-09 12:47:41 -04:00
Jonathan Kelley
8cfc437bfe
wip: some project refactor
2021-07-09 11:54:07 -04:00
Jonathan Kelley
7aec40d57e
feat: enable arbitrary body in rsx! macro
2021-07-07 18:17:00 -04:00
Jonathan Kelley
fd7933561f
chore: move CLI into its own "studio" app
2021-07-07 16:58:23 -04:00
Jonathan Kelley
22e659c2bd
feat: namespaced attributes
...
this commit adds namespaced attributes. This lets us support attribute groups, and thus, inline styles.
This namespaced attribute stuff is only available for styles at the moment, though it theoretically could be enabled for any other attributes.
2021-07-06 23:04:33 -04:00