@arielgonzaguer/michi-router
v3.0.4
Published
El router minimalista y simple para React. El objetivo principal de esta herramienta es proporcionar la funcionalidad básica de enrutamiento.
Maintainers
Readme
Michi Router

Router minimalista para React, enfocado en tamaño, DX y seguridad para navegación interna del lado del cliente.
Características
- Ligero: pensado para mantenerse pequeño.
- TypeScript first: API completamente tipada.
- Zero dependencias de runtime.
- Rutas dinámicas: soporte para
:paramsy wildcard*. - Hooks:
useNavigate,useLocation,useParams. - Basename: útil para apps bajo subrutas (
/app). - Componente
Protectedopcional. - Navegación segura interna: bloquea protocolos inseguros y destinos externos.
Instalación
npm install @arielgonzaguer/michi-routerUso rápido
import { RouterProvider, Link, useNavigate, useParams } from '@arielgonzaguer/michi-router';
function Home() {
const navigate = useNavigate();
return (
<>
<h1>Home</h1>
<Link to="/users/42">Ir al usuario</Link>
<button onClick={() => navigate('/search?q=michi#top')}>Buscar</button>
</>
);
}
function UserPage() {
const { id } = useParams<{ id: string }>();
return <h1>User {id}</h1>;
}
export default function App() {
return (
<RouterProvider
basename="/app"
routes={[
{ path: '/', component: <Home /> },
{ path: '/users/:id', component: <UserPage /> },
{ path: '/docs/*', component: <h1>Docs</h1> }
]}
notFound={<h1>404</h1>}
/>
);
}API
navigate(to, options?)conoptions.replaceyoptions.state.useLocation()retorna{ pathname, search, hash, fullPath }.useParams()retorna los parámetros de la ruta activa.Linkestá diseñado para rutas internas.
Entradas del paquete
@arielgonzaguer/michi-router: API completa.@arielgonzaguer/michi-router/core: router base sinProtected.@arielgonzaguer/michi-router/protected: export del componenteProtected.
Documentación: https://michirouter.vercel.app/
