Ir al artículo
Aniq-UI

Dashboard 2La API simulada integrada

La API simulada integrada

Cómo funciona el panel sin back-end con datos de ejemplo guardados en el navegador, qué funciona allí y cómo pasarlo a tu API o quitarlo.

Para el paquete Front + Back

Qué es

El panel lleva un pequeño servidor propio que se ejecuta en el navegador. Responde a cada petición que hace el panel, con las mismas respuestas, códigos de estado y comprobaciones de permisos que la API de NestJS, así que todas las pantallas funcionan sin ningún back-end. Es con lo que funciona el paquete Admin Dashboard de fábrica, y a lo que recurre el panel de Full Stack cuando no hay dirección de API.

Un aviso "Sample data" aparece al final de cada página mientras responde, para que nadie lo confunda con un back-end conectado.

Cómo activarla y desactivarla

No hay ningún indicador. Lo decide un solo ajuste, NEXT_PUBLIC_API_BASE_URL, compilado cuando se construye el panel:

.env
# empty or missing: the mock API, no back-end needed
NEXT_PUBLIC_API_BASE_URL=

# set: your API, the mock never runs
NEXT_PUBLIC_API_BASE_URL=http://localhost:8000/api
  • Sin Docker, el panel sin archivo .env funciona con la simulada. Reinicia yarn dev, o ejecuta yarn build de nuevo, después de cambiar el valor.
  • Una imagen de Docker construida sin --build-arg funciona con la simulada. Docker Compose siempre construye el panel con la dirección de la API.
  • Cuando un navegador que usó la simulada se apunta a una API real, el panel descarta la sesión y los datos de ejemplo que guardó, para que la primera petición no se haga con un token que la API rechazaría.

Qué funciona en ella

ÁreaEn la API simulada
Inicio de sesiónLas cuentas de ejemplo: admin@example.com con Admin@123 (Super Admin), y los Viewer de ejemplo como john.smith@admin.com con admin123. Una contraseña incorrecta se rechaza, como en la API.
DatosLos datos de ejemplo de la propia API: 12 administradores, 5 roles y 25 permisos, 15 usuarios y 12 eliminados, 15 proyectos y 12 eliminados, las 10 tareas del Super Admin, 13 ajustes de la aplicación y 50 países, más tres conversaciones anteriores del asistente.
CambiosReales: crear, editar, eliminar, restaurar, conceder un permiso y renombrar un rol cambian los datos y sobreviven a una recarga, solo en ese navegador.
PermisosSe comprueban según los roles del administrador con sesión iniciada y se rechazan como los rechaza la API, así que un Viewer ve exactamente lo que ve una cuenta de solo lectura.
ImágenesUna imagen subida se guarda en el navegador y se muestra; nada sale de él.
Asistente de IAUn modelo, Aniq Demo, con respuestas guionizadas construidas a partir de los datos actuales: cifras, tarjetas, listas y un gráfico. Sin proveedor, sin clave.

Cada respuesta se retrasa una fracción de segundo a propósito, para que se vean los estados de carga con los que se entrega el panel.

Empezar de nuevo

Borra los datos del sitio para la dirección del panel en los ajustes de tu navegador, o ejecuta esto en la consola del navegador, y los ejemplos vuelven tal como se entregaron:

Consola del navegador
localStorage.removeItem("mock_db_v1"); location.reload();

Quitarla

Cuando ya funcionas con tu propia API de forma definitiva, elimina la simulada del código, en la carpeta del panel:

Terminal
yarn remove:mock

Elimina src/lib/mock/ y el aviso de datos de ejemplo, y quita los bloques marcados con #region mock-api. El panel entonces necesita NEXT_PUBLIC_API_BASE_URL definido. Reescribe archivos y no se puede deshacer sin control de versiones, así que haz un commit antes.

Cómo está construida

Incluido con tu compra. Inicia sesión para leerlo o ábrelo en tu descarga.

Dónde vive la simulada, cómo le llega una petición y cómo añadir una ruta propia.

¿Te atascaste en un paso?

Busca una solución antes de empezar de nuevo.

Solución de problemas

Preferencias de Cookies

Utilizamos cookies para mejorar tu experiencia de navegación, analizar el tráfico del sitio y personalizar el contenido. Al hacer clic en "Aceptar Todo", consientes nuestro uso de cookies para análisis y publicidad personalizada.