DioxusLabs/dioxus
View on GitHubPlease change the function signature of `dioxus::server::router` to allow users to set the state type
Open
#5394 opened on Mar 20, 2026
enhancementfullstackgood first issue
Description
Feature Request
I want to be able to set the state type on the router that's created when using the dioxus::server::router function.
Implement Suggestion
The function is located in https://github.com/DioxusLabs/dioxus/blob/main/packages/fullstack-server/src/launch.rs
line 96.
change it from:
pub fn router(app: fn() -> Element) -> Router {
//....
}
to:
pub fn router<State = ()>(app: fn() -> Element) -> Router<State> { // Setting the default to `()` should ensure compatability with existing apps
//....
}
That way I can do this:
dioxus::server::router::<crate::server::state::ArcStore>(App).with_state(store) // a struct wrapped in an Arc
You'll probably have to update some of the other functions that expect just a Router like serve.