Mon. May 6th, 2024

APIATO Framework: Desarrollo de aplicaciones escalables con Laravel basadas en API

By admin Jan 29, 2024

¿Acerca de Laravel?

Laravel es un marco de aplicación web PHP de código abierto que sigue el patrón Modelo-Vista-Controlador (MVC) y ofrece características como enrutamiento, middleware y autenticación. Lo mantiene Taylor Otwell y tiene una gran comunidad de contribuyentes.

Apiató; Marco centrado en API

Apiató es un marco que le ayuda a crear aplicaciones centradas en API escalables y comprobables con PHP sobre Laravel. Ofrece herramientas y funcionalidades que facilitan el desarrollo de cualquier aplicación centrada en API. Apiato utiliza los mejores marcos, herramientas y convenciones para ofrecer un amplio conjunto de funciones para aplicaciones PHP modernas.

La razón de esto es que configurar una API sólida desde cero puede llevar mucho tiempo y Apiato proporciona funciones básicas de API sólidas que están completamente documentadas y son gratuitas. Esto le permite concentrarse en escribir su lógica de negocios y entregar más rápido a sus clientes.

Apiato es un proyecto de código abierto publicado bajo la licencia MIT. Esta plataforma fue desarrollada y actualmente está siendo mantenida por una creciente y entusiasta comunidad de desarrolladores experimentados de Laravel. A través de esfuerzos de colaboración, la comunidad ha agregado muchas características nuevas y mejoras a la plataforma que le han permitido convertirse en una herramienta flexible y poderosa para los desarrolladores. Los desarrolladores detrás de Apiato se comprometen a brindar soporte continuo y mejoras a este proyecto, asegurando que siga siendo un recurso valioso para los desarrolladores de todo el mundo.

Apiato viene con documentación rica y fácil de usar para desarrolladores que facilita a los desarrolladores de Laravel de cualquier nivel comenzar a crear aplicaciones escalables usándolo.

Características

  • Autenticación: OAuth2.0 para clientes propios y de terceros (usando Laravel Passport).
  • Control de acceso basado en roles (RBAC): Control de acceso basado en roles (RBAC), con un superadministrador, roles y permisos.
  • Compatibilidad con parámetros de consulta (orderBy, sortedBy y filter) con búsqueda de texto completo.
  • Puntos finales útiles para administrar usuarios, roles/permisos, tokens y más.
  • Generador de documentación API, para generar documentos API desde PHP Docblock usando ApiDocJS (proporcionado por Documentation Container).
  • Admite CORS (intercambio de recursos entre orígenes) y JSONP (JSON con relleno).
  • Codificación/decodificación automática de identificaciones reales para evitar exponerlas al mundo exterior.
  • API Throttling (limitación de velocidad para controlar la tasa de tráfico recibido y proteger su servidor).
  • Admite el parámetro de solicitud “incluir” para cargar relaciones anidadas.
  • Admite almacenamiento en caché de datos (con borrado automático al crear, actualizar y eliminar).
  • Versionado de API en la URL o encabezado (versionado basado en el nombre del archivo de ruta).
  • Manejo de excepciones con respuestas de error personalizadas.
  • Admite encabezado HTTP ETag superficial para reducir el ancho de banda del cliente.
  • Localización: cambie fácilmente entre idiomas a través del campo de encabezado de solicitud (proporcionado por el contenedor de localización).
  • Paginación automática de datos (metaenlaces a los datos anteriores y siguientes).
  • Middlewares de autenticación WEB y API. Con puntos finales Proxy para una autenticación más segura de aplicaciones propias.
  • Monitor de solicitudes/respuestas HTTP y depurador de consultas de base de datos (proporcionado por el contenedor de depuración).
  • Profiler, para mostrar datos de perfiles en la respuesta (usando Laravel Debugbar).
  • Autenticación social compatible de forma inmediata con “Facebook, Twitter, Google+” mediante Laravel Socialite (proporcionado por SocialAuth Container).
  • Conversión de tipos de respuestas JSON y resultados de paginación con Transformers (usando Fractal).
  • Ayudantes de pruebas útiles para pruebas automatizadas más rápidas y agradables (usando PHPUnit).
  • Admite múltiples formatos de carga útil de respuesta (especificación de API JSON v1.0, matriz de datos y datos puros).
  • Conversión automática de fechas a formato ISO en respuestas, de Transformers.
  • Admite pasarela de pago Stripe, ampliable para admitir otras pasarelas de pago (proporcionada por Payment Container).
  • Configuraciones a nivel de usuario y sistema listas para usar (proporcionadas por el contenedor de configuración).
  • Fácil validación y autorización (para datos de usuario, accesibilidad y propiedad) con objetos de Solicitudes.
  • Patrón arquitectónico de software mantenible y escalable (utilizando Porto SAP).
  • Comandos del generador de código, para generar operaciones CRUD completas y otros comandos útiles.
  • Separación de los componentes de la UI (Web, API y CLI) (rutas, controladores, solicitudes, pruebas…).
  • Documentación completamente detallada, con ejemplos de código, principios, definiciones y pautas.
  • 100% personalizable y de código abierto. Utilizando los mejores marcos, herramientas, paquetes y estándares.

Requisitos

  • GIT
  • PHP >= 8.0.2
  • Compositor
  • Extensiones PHP:
  • Extensión PHP OpenSSL
  • Extensión PHP DOP
  • Extensión PHP Mbstring
  • Extensión PHP del tokenizador
  • Extensión PHP BCMath (requerida cuando la función Hash ID está habilitada)
  • Extensión internacional (obligatoria cuando se utiliza el contenedor de localización)

Arquitectura

Apiató está construido utilizando el nuevo patrón arquitectónico Oporto.

Oporto SAP es un patrón arquitectónico de software moderno, diseñado para ayudar a los desarrolladores a organizar su código de una manera súper fácil de mantener. Es muy útil para proyectos grandes y de largo plazo, ya que tienden a tener mayor complejidad con el tiempo.Oporto es particularmente adecuado para proyectos web de tamaño mediano a grande que requieren un alto grado de flexibilidad y escalabilidad. Con Oporto, los desarrolladores pueden crear monolitos altamente escalables que se pueden dividir fácilmente en múltiples microservicios cuando sea necesario. Este enfoque permite la reutilización de la lógica empresarial o las características de la aplicación en múltiples proyectos, lo que lo convierte en una opción ideal para equipos que trabajan en una variedad de proyectos diferentes. Está construido sobre una base de varios conceptos arquitectónicos establecidos, que incluyen Diseño impulsado por dominio (DDD), Modular, Micronúcleo, Controlador de vista de modelo (MVC), en capasy Respondedor de dominio de acción (ADR) arquitecturas. Basándose en estos conceptos establecidos, Oporto proporciona a los desarrolladores un marco confiable y bien probado para crear software.

es completamente opcional para construir su aplicación usando la arquitectura Porto. Alternativamente, puedes construirlo usando el mvc arquitectura, y seguir beneficiándose de todas las características de Apiato.

Licencia

  • licencia MIT

Recursos

Etiquetas

Laravel PHP API de código abierto API de descanso Desarrollo web sin cabeza Desarrollo web basado en web Desarrollo móvil Docker RAD Productividad

By admin

Related Post

Leave a Reply

Your email address will not be published. Required fields are marked *