Etiqueta: Laravel

Laravel Framework

  • Recomendaciones Cursor + Laravel

    Referencias:
    https://www.youtube.com/watch?v=-GHtHodbtxc&t=33s

    Recapitulación de puntos clave:

    1. Elige el modelo manualmente en el modo agente para tener resultados más consistentes en base a tu propia experiencia.
    2. Crea tu proyecto fuera de Cursor y ábrelo cuando esté la base instalada para evitar gastar créditos de llamadas a IA y evitar errores puntuales durante la instalación de todos los paquetes.
    3. Proporciona prompts ricos y definidos, tal como harías con un compañero de equipo sin un gran conocimiento completo del proyecto, piensa las preguntas que tu mismo harías si te pidieran ese mismo requisito a ti.
    4. Elabora Cursor Rules potentes que especifiquen detalles de tu proyecto, como la versión de Laravel o la estructura que esperas encontrar en tus controladores, servicios, etc.
    5. Añade contexto a tus prompts, especificar los ficheros implicados aumenta la velocidad de los resultados y mejorará la precisión del código generado.
    6. Pide que Cursor verifique el código con test, añade Cursor Rules que detallen los requisitos que esperas para cualquier test.
    7. Potencia el editor con extensiones para PHP y Laravel
    8. Otras recomendaciones que todavía no uso:
      • Planificar las actuaciones y aprobar cada paso en modo agente en lugar de lanzar enormes prompts desatendidos
      • Referir documentación con Context7
  • Extensiones de Cursor (VSCode) para mejorar la experiencia PHP + Laravel

    Plugins para Cursor (VS Code) que voy integrando para mejorar mi experiencia en el desarrollo de código PHP bajo el framework Laravel 11 (y 12).

    El objetivo secundario es reducir la fricción al máximo al cambiar de IDE (viniendo de más de 10 años usando intensivamente PHPStorm).

    Plugins usados:

  • Laravel: desarrollo con Mailpit en Sail

    Mailpit es una herramienta de email multiplataforma (con API) para testing y desarrollo. Mailpit se incluye en los servicios que despliega Sail, una interfaz de línea de comandos ligera que orquesta el entorno de desarrollo Docker predeterminado para Laravel

    En alguna ocasión en una instalación limpia o al volver a usar Mailpit en un proyecto antiguo me he encontrado un error como este:

    Symfony\Component\Mailer\Exception\TransportException 
    
    Connection could not be established with host "127.0.0.1:1025": stream_socket_client(): Unable to connect to 127.0.0.1:1025 (Connection refused)
    
      at vendor/symfony/mailer/Transport/Smtp/Stream/SocketStream.php:154
    

    debemos comprobar el mapeo de puertos en docker y la configuración del archivo .env de Laravel.

    En mi caso la variable de entorno MAIL_HOST fallaba con los valores «localhost» y «127.0.0.1», y se arregla usando el nombre del servicio definido en docker-compose.yml: «mailpit».

    Fragmento de docker-compose.yml:

        mailpit:
            image: 'axllent/mailpit:latest'
            ports:
                - '${FORWARD_MAILPIT_PORT:-1025}:1025'
                - '${FORWARD_MAILPIT_DASHBOARD_PORT:-8025}:8025'
            networks:
                - sail
    

    Fragmento de .env:

    MAIL_HOST=mailpit
    MAIL_PORT=1025
    MAIL_USERNAME=null
    MAIL_PASSWORD=null
    MAIL_ENCRYPTION=null
    MAIL_MAILER=smtp
    MAIL_FROM_ADDRESS="develop@localhost"