Integración continua con Travis CI, PHPUnit y GitHub

No sólo podemos tener pruebas que verifiquen la calidad de nuestro código en cuestión de segundos. Con integración continua, una práctica de ingeniería de software, podemos incluso lograr que nuestras pruebas unitarias se ejecuten de manera automática en entornos de desarrollo con diferentes características, como por ejemplo diferentes versiones de PHP.

En esta última lección del curso Creación de componentes para PHP y Laravel veremos cómo configurar Travis CI con el repositorio de nuestro componente, el cual es un servicio para realizar integración continua que podemos vincular con GitHub, que monitorea el repositorio y al ocurrir un cambio o actualización del código, ejecuta las pruebas unitarias para posteriormente obtener un reporte del resultado de la ejecución de las pruebas, es decir, si pasaron o no en los diferentes entornos que hayan sido configurados previamente.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Publicación de paquetes con GitHub, Composer y Packagist

Bienvenidos a una nueva lección de la tercera parte del curso Creación de componentes para PHP y Laravel, donde aprenderás a publicar un nuevo proyecto en Packagist para compartirlo con la comunidad de PHP.  Te indicaremos cuáles son los pasos a seguir y que debes tomar en cuenta en la configuración del archivo composer.json de los proyectos que instalarán nuestro paquete.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Uso de repositorios locales con Composer

En la lección anterior creamos un nuevo proyecto «container», en el cual incluimos parte del código desarrollado en la parte 2 de este curso, agregando algunos cambios necesarios, por supuesto, todo esto haciendo uso de pruebas unitarias. Aunque todas las pruebas están pasando hasta este momento, debemos hacer algunos arreglos adicionales para poder utilizar este componente. En la lección de hoy finalmente vamos a incluir el componente externo «container» creado dentro de nuestro mini proyecto.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Peticiones HTTP con Guzzle en Laravel 5.1

rutas-con-filtros-laravel-5-1

Laravel nos permite entre otras cosas el desarrollo de API’s que puedan ser consumidas desde otro recurso o software externo como aplicaciones web de terceros, aplicaciones móviles, etc. pero ocasionalmente y en sentido contrario, es necesitamos realizar peticiones a una o varias API’s.

En PHP se pueden hacer peticiones web utilizando por ejemplo CURL que es «Una librería que nos permite conectarnos y comunicarnos con diferentes tipos de servidores usando diferentes tipos de protocolos como http, https, ftp, entre otras«.

Citando un ejemplo muy simple de la documentación oficial de esta librería podemos ver lo siguiente

// Conectarse a un cliente web
$ch = curl_init("http://www.example.com/");
// Abrir un archivo
$fp = fopen("example_homepage.txt", "w");

Guzzle es un paquete de PHP que permite, de una forma muy fácil, realizar todas estas peticiones HTTP para integrar servicios web de terceros dentro de nuestras aplicaciones.

Ver post

URLs amigables con Eloquent-Sluggable en Laravel

banner-eloquent-sluggable

Como pudimos ver hace algún tiempo en nuestro post sobre URLs amigables y rutas con slugs en Laravel, un slug es una versión simplificada del texto de un enlace de manera que éste sea más legible y pueda ser un identificador más apropiado, especialmente para el posicionamiento en los buscadores (SEO). En la lección de  hoy vamos a probar el paquete Eloquent-Sluggable que nos ofrece algunos otras funcionalidades adicionales en cuanto a la creación de slugs personalizadas dentro de nuestras aplicaciones de Laravel.

Ver post

Uso de Gravatar en Laravel 5.1

banner-uso-gravatar-laravel

Gravatar (por su abreviación Globally Recognized Avatar) es un servicio para proporcionar un avatar reconocido globalmente asociado con un correo electrónico. Los usuarios que registran su cuenta en gravatar.com establecen una imagen deseada como avatar para un email en específico.  Ésta es una funcionalidad muy usada en comentarios de blogs y foros pero también podemos implementarlo en nuestras aplicaciones de Laravel de una manera sencilla, tan sólo con el email de nuestros usuarios.

Ver post

API-REST con Laravel 5.1 – Protección con access key

api-rest-laravel-5-1-proteccion-con-access-key

En esta lección vamos a aprender a agregar protección de acceso a nuestra API con el uso de un access key, de esta forma los «clientes» de la API deberán suministrar su clave de acceso para poder hacer uso de ella.

Hasta ahora podemos realizar una petición desde cualquier cliente sin necesidad de suministrar ningún tipo de identificación; esto podemos solucionarlo de muchas maneras, en este caso vamos a utilizar lo básico, que es crear una api key dentro del código de nuestra API que el usuario debe enviar con cada petición, luego el sistema la compara y si no coincide la petición se rechaza y se devuelve un mensaje de error al cliente.

Ver post

Importar datos desde Excel o CSV a Laravel

banner-importar-datos-con-laravel-excel2

Para cargar datos a nuestra aplicación mientras estamos desarrollando puede que nos sea mucha utilidad el componente Seeders de Laravel que junto con los Models Factories nos permiten tener de una manera rápida y sencilla datos ficticios con los que trabajar. Pero ¿Qué sucede cuando tenemos la necesidad de cargar datos reales o dados por el mismo el mismo cliente? o éste nos solicita la funcionalidad de poder carga información en la aplicación a través de un archivo excel o csv.  Para ello, veamos cómo podemos hacerlo con Laravel Excel.

Ver post

Generar PDFs en Laravel 5.1 con Snappy

banner-pdf-con-snappy

Presentar información en formato PDF es uno de las peticiones más usuales por parte de nuestros clientes ya sea para informes privados o algún reporte hacía los usuarios que ocupan el sistema.

En un post anterior @jeffer8a nos mostró cómo hacer uso del paquete DomPdf desarrollado por barryvdh, pero algunas veces tenemos que usar una plantilla HTML diseñada con Foundation o Bootstrap para generar el PDF . Este es un inconveniente con DomPDF ya que no permite el uso de este tipo de framworks. Es ahí donde puede usarse el Laravel-Snappy , el cual es un Service Provider de Snappy.

Ver post

Suscríbete a nuestro boletín

Te enviaremos publicaciones con consejos útiles y múltiples recursos para que sigas aprendiendo.

Suscríbete a nuestro boletín

Recibe consejos útiles, promos y múltiples recursos directamente en tu correo.

Tu nombre y correo serán enviados directamente a MailChimp. No compartiremos tus datos con otras empresas.