import dash
import dash_mantine_components as dmc
from dash import Dash, _dash_renderer, dcc, page_container, get_relative_path
_dash_renderer._set_react_version("18.2.0")
app = Dash(external_stylesheets=dmc.styles.ALL, use_pages=True)
links = dmc.Stack(
[
dmc.Anchor(f"{page['name']}", href=page["relative_path"])
for page in dash.page_registry.values()
if page["module"] != "pages.not_found_404"
]
)
link = dmc.Anchor("Another Page 2 link", href=get_relative_path("/page-2"))
navbar = dmc.Stack([
links,
link
], p=20)
app_shell = dmc.AppShell(
[
dmc.AppShellHeader("My Header", p=25),
dmc.AppShellNavbar([navbar]),
dmc.AppShellMain(page_container, pt=70),
],
header={"height": 70},
navbar={"width": 200},
padding="xl",
id="app-shell",
)
app.layout = dmc.MantineProvider(
[
app_shell
],
)
if __name__ == "__main__":
app.run_server(debug=True)