1#![doc = include_str!("../README.md")]
2#![doc(html_logo_url = "https://avatars.githubusercontent.com/u/79236386")]
25#![doc(html_favicon_url = "https://avatars.githubusercontent.com/u/79236386")]
26#![cfg_attr(docsrs, feature(doc_cfg))]
27
28pub use dioxus_core;
29#[doc(inline)]
30pub use dioxus_core::{CapturedError, Ok, Result};
31
32#[cfg(feature = "launch")]
33#[cfg_attr(docsrs, doc(cfg(feature = "launch")))]
34mod launch;
35
36pub use dioxus_core as core;
37
38#[cfg(feature = "launch")]
39#[cfg_attr(docsrs, doc(cfg(feature = "launch")))]
40pub use crate::launch::*;
41
42#[cfg(feature = "hooks")]
43#[cfg_attr(docsrs, doc(cfg(feature = "hooks")))]
44pub use dioxus_hooks as hooks;
45
46#[cfg(feature = "signals")]
47#[cfg_attr(docsrs, doc(cfg(feature = "signals")))]
48pub use dioxus_signals as signals;
49
50#[cfg(feature = "signals")]
51#[cfg_attr(docsrs, doc(cfg(feature = "signals")))]
52pub use dioxus_stores as stores;
53
54pub mod events {
55 #[cfg(feature = "html")]
56 #[cfg_attr(docsrs, doc(cfg(feature = "html")))]
57 pub use dioxus_html::events::*;
58}
59
60#[cfg(feature = "document")]
61#[cfg_attr(docsrs, doc(cfg(feature = "document")))]
62pub use dioxus_document as document;
63
64#[cfg(feature = "document")]
65#[cfg_attr(docsrs, doc(cfg(feature = "document")))]
66pub use dioxus_history as history;
67
68#[cfg(feature = "html")]
69#[cfg_attr(docsrs, doc(cfg(feature = "html")))]
70pub use dioxus_html as html;
71
72#[cfg(feature = "macro")]
73#[cfg_attr(docsrs, doc(cfg(feature = "macro")))]
74pub use dioxus_core_macro as core_macro;
75
76#[cfg(feature = "logger")]
77#[cfg_attr(docsrs, doc(cfg(feature = "logger")))]
78pub use dioxus_logger as logger;
79
80#[cfg(feature = "cli-config")]
81#[cfg_attr(docsrs, doc(cfg(feature = "cli-config")))]
82pub use dioxus_cli_config as cli_config;
83
84#[cfg(feature = "server")]
85#[cfg_attr(docsrs, doc(cfg(feature = "server")))]
86pub use dioxus_server as server;
87
88#[cfg(feature = "server")]
89pub use dioxus_server::serve;
90
91#[cfg(feature = "devtools")]
92#[cfg_attr(docsrs, doc(cfg(feature = "devtools")))]
93pub use dioxus_devtools as devtools;
94
95#[cfg(feature = "web")]
96#[cfg_attr(docsrs, doc(cfg(feature = "web")))]
97pub use dioxus_web as web;
98
99#[cfg(feature = "router")]
100#[cfg_attr(docsrs, doc(cfg(feature = "router")))]
101pub use dioxus_router as router;
102
103#[cfg(feature = "fullstack")]
104#[cfg_attr(docsrs, doc(cfg(feature = "fullstack")))]
105pub use dioxus_fullstack as fullstack;
106
107#[cfg(feature = "desktop")]
108#[cfg_attr(docsrs, doc(cfg(feature = "desktop")))]
109pub use dioxus_desktop as desktop;
110
111#[cfg(feature = "mobile")]
112#[cfg_attr(docsrs, doc(cfg(feature = "mobile")))]
113pub use dioxus_desktop as mobile;
114
115#[cfg(feature = "native")]
116#[cfg_attr(docsrs, doc(cfg(feature = "native")))]
117pub use dioxus_native as native;
118
119#[cfg(feature = "liveview")]
120#[cfg_attr(docsrs, doc(cfg(feature = "liveview")))]
121pub use dioxus_liveview as liveview;
122
123#[cfg(feature = "ssr")]
124#[cfg_attr(docsrs, doc(cfg(feature = "ssr")))]
125pub use dioxus_ssr as ssr;
126
127#[cfg(feature = "warnings")]
128#[cfg_attr(docsrs, doc(cfg(feature = "warnings")))]
129pub use warnings;
130
131pub use dioxus_config_macros as config_macros;
132
133#[cfg(feature = "wasm-split")]
134#[cfg_attr(docsrs, doc(cfg(feature = "wasm-split")))]
135pub use wasm_splitter as wasm_split;
136
137pub use subsecond;
138
139#[cfg(feature = "asset")]
140#[cfg_attr(docsrs, doc(cfg(feature = "asset")))]
141#[doc(inline)]
142pub use dioxus_asset_resolver as asset_resolver;
143
144pub mod prelude {
145 #[cfg(feature = "document")]
146 #[cfg_attr(docsrs, doc(cfg(feature = "document")))]
147 #[doc(inline)]
148 pub use dioxus_document::{self as document, Meta, Stylesheet, Title};
149
150 #[cfg(feature = "document")]
151 #[cfg_attr(docsrs, doc(cfg(feature = "document")))]
152 #[doc(inline)]
153 pub use dioxus_history::{history, History};
154
155 #[cfg(feature = "launch")]
156 #[cfg_attr(docsrs, doc(cfg(feature = "launch")))]
157 #[doc(inline)]
158 pub use crate::launch::*;
159
160 #[cfg(feature = "hooks")]
161 #[cfg_attr(docsrs, doc(cfg(feature = "hooks")))]
162 #[doc(inline)]
163 pub use crate::hooks::*;
164
165 #[cfg(feature = "signals")]
166 #[cfg_attr(docsrs, doc(cfg(feature = "signals")))]
167 #[doc(inline)]
168 pub use dioxus_signals::{self, *};
169
170 #[cfg(feature = "signals")]
171 pub use dioxus_stores::{self, store, use_store, GlobalStore, ReadStore, Store, WriteStore};
172
173 #[cfg(feature = "macro")]
174 #[cfg_attr(docsrs, doc(cfg(feature = "macro")))]
175 #[allow(deprecated)]
176 #[doc(inline)]
177 pub use dioxus_core_macro::{component, rsx, Props};
178
179 #[cfg(feature = "launch")]
180 #[cfg_attr(docsrs, doc(cfg(feature = "launch")))]
181 pub use dioxus_config_macro::*;
182
183 #[cfg(feature = "html")]
184 #[cfg_attr(docsrs, doc(cfg(feature = "html")))]
185 pub use dioxus_html as dioxus_elements;
186
187 #[cfg(feature = "html")]
188 #[cfg_attr(docsrs, doc(cfg(feature = "html")))]
189 #[doc(inline)]
190 pub use dioxus_elements::{Code, Key, Location, Modifiers};
191
192 #[cfg(feature = "html")]
193 #[cfg_attr(docsrs, doc(cfg(feature = "html")))]
194 #[doc(no_inline)]
195 pub use dioxus_elements::{
196 events::*, extensions::*, global_attributes, keyboard_types, svg_attributes, traits::*,
197 GlobalAttributesExtension, SvgAttributesExtension,
198 };
199
200 #[cfg(feature = "devtools")]
201 #[cfg_attr(docsrs, doc(cfg(feature = "devtools")))]
202 pub use dioxus_devtools;
203
204 pub use dioxus_core;
205
206 #[cfg(feature = "fullstack")]
207 #[cfg_attr(docsrs, doc(cfg(feature = "fullstack")))]
208 #[doc(inline)]
209 pub use dioxus_fullstack::{
210 self as dioxus_fullstack, delete, get, patch, post, put, server, use_loader,
211 use_server_cached, use_server_future, HttpError, OrHttpError, ServerFnError,
212 ServerFnResult, StatusCode,
213 };
214
215 #[cfg(feature = "server")]
216 #[cfg_attr(docsrs, doc(cfg(feature = "server")))]
217 #[doc(inline)]
218 pub use dioxus_server::{self, serve, DioxusRouterExt, ServeConfig, ServerFunction};
219
220 #[cfg(feature = "router")]
221 #[cfg_attr(docsrs, doc(cfg(feature = "router")))]
222 pub use dioxus_router;
223
224 #[cfg(feature = "router")]
225 #[cfg_attr(docsrs, doc(cfg(feature = "router")))]
226 #[doc(inline)]
227 pub use dioxus_router::{
228 hooks::*, navigator, use_navigator, GoBackButton, GoForwardButton, Link, NavigationTarget,
229 Outlet, Routable, Router,
230 };
231
232 #[cfg(feature = "asset")]
233 #[cfg_attr(docsrs, doc(cfg(feature = "asset")))]
234 #[doc(inline)]
235 pub use manganis::{self, *};
236
237 #[cfg(feature = "wasm-split")]
238 #[cfg_attr(docsrs, doc(cfg(feature = "wasm-split")))]
239 pub use wasm_splitter as wasm_split;
240
241 #[doc(inline)]
242 pub use dioxus_core::{
243 consume_context, provide_context, spawn, suspend, try_consume_context, use_drop, use_hook,
244 AnyhowContext, Attribute, Callback, Component, Element, ErrorBoundary, ErrorContext, Event,
245 EventHandler, Fragment, HasAttributes, IntoDynNode, RenderError, Result, ScopeId,
246 SuspenseBoundary, SuspenseContext, VNode, VirtualDom,
247 };
248
249 #[cfg(feature = "logger")]
250 pub use dioxus_logger::tracing::{debug, error, info, trace, warn};
251}