# UI Routing NocoBase Client's Router is based on [React Router](https://v5.reactrouter.com/web/guides/quick-start) and can be configured via `` to configure ui routes with the following example. ```tsx /** * defaultShowCode: true */ import React from 'react'; import { Link, MemoryRouter as Router } from 'react-router-dom'; import { RouteRedirectProps, RouteSwitchProvider, RouteSwitch } from '@nocobase/client'; const Home = () =>

Home

; const About = () =>

About

; const routes: RouteRedirectProps[] = [ { type: 'route', path: '/', component: 'Home', }, { type: 'route', path: '/about', component: 'About', }, ]; export default () => { return ( Home, About ); }; ``` In a full NocoBase application, the Route can be extended in a similar way as follows. ```tsx | pure import { RouteSwitchContext } from '@nocobase/client'; import React, { useContext } from 'react'; const HelloWorld = () => { return
Hello ui router
; }; export default React.memo((props) => { const ctx = useContext(RouteSwitchContext); ctx.routes.push({ type: 'route', path: '/hello-world', component: HelloWorld, }); return {props.children}; }); ``` See [packages/samples/custom-page](https://github.com/nocobase/nocobase/tree/develop/packages/samples/custom-page) for the full example