Craftyx Blog

Développement, Startup et Freelancing

Laravel : utiliser les stacks dans blade

Un petit billet rapide pour vous parler d'une fonctionnalité peu connue de Blade : les stacks.

Stack, c'est le mot Anglais pour "tas" en français, et cette fonctionnalité de stack nous permet justement de faire des "tas" de contenu.

Comment ça marche ? 

Le système est simple, dans notre fichier de layout, nous allons commencer par créer un tas :

// resources/views/layout.blade.php

// your footer
@stack('js-stack')

Ensuite, disons que vous souhaitez initialiser du javascript lors d'un boucle, dans un fichier blade enfant de notre layout

 

// resources/views/a_template.blade.php
@foreach($users as $user)
   <li class="user-item-{{ $user->id }}">{{ $user->email }}</li>
   @push('js-stack')
       <script>$('.user-item-{{ $user->id }}').on('click', function () { /*your code here*/ });</script>
   @endpush
@endforeach

Lors du rendu, tous les éléments "pushées" dans le stack s'afficherons là où vous aviez déclarer le stack. Petite astuce simple, mais qui peut être pratique !

Lire la suite →
Julien Tant Par

Découvrez The Wellcoded Podcast !

Un petit billet d'actualité pour vous informer qu'avec mon ami Nicolas Widart, nous avons décidé de concrétiser enfin un projet de longue date : créer notre prodcast.

Nous avons décidé de le faire sous le nom de Wellcoded, et nous esperons à l'avenir se servir de ce nom pour également se positionner ensemble sur des projets de plus grande envergure, en tant qu'association de Freelance / Agence.

N'hésitez pas à venir écouter notre premier podcast, perfectible certes mais il faut bien se lancer !

Wellcoded.io

Lire la suite →
Julien Tant Par

N'éditez plus votre fichier hosts grâce à dnsmasq

En tant que développeur, nous sommes habitués à éditer notre fichier /etc/hosts afin de rediriger des noms de domaines fictifs vers une adresse IP, en général notre localhost ou l'IP d'une box vagrant. Mais cela pose quelques problèmes, notamment car vous devez maintenir ce fichier chaque fois que vous créez et supprimer un projet afin que le fichier hosts ne devienne pas inmaintenable.

L'alternative que je vous présente s'appelle dnsmasq, il s'agit d'un serveur DNS léger, grâce auquel nous allons rediriger toutes les adresses qui se terminent en .app vers l'adresse IP de votre choix (qui sera [VOTRE_IP] dans les exemples). 

Nous allons voir ensemble comment l'installer sur Mac, le configurer pour qu'il resolve toutes les adresses en .app, puis configurer OSX pour qu'il utilise dnsmasq pour cette extension.

à noter : ce que je fais avec le .app est réalisable également avec un .dev, .local, etc... à votre guise !

Lire la suite →
Julien Tant Par

Accepter des paiements sur votre site en moins de 5 minutes avec Laravel et Stripe

Que ce soit pour votre boutique en ligne ou pour votre startup, avoir la possibilité de mettre à disposition des utilisateurs un formulaire de paiement est essentiel. Plusieurs solutions s'offrent à vous : les solutions proposées par votre banques, souvent basée sur la solution SIPS d'ATOS en France, et les solutions en ligne type Stripe, Paypal, Braintree...

J'ai eu l'occasion de mettre en place récemment deux de ces solutions :

  • La solution Merc@net de la BNP Paribas, basé sur SIPS, est plutôt compliqué à mettre en oeuvre : elle requiert d'installer un exécutable sur votre machine, puis d'utiliser cet exécutable - dans notre cas en PHP - pour chiffrer/déchiffrer les requêtes entre votre serveur et les serveurs de la banque. Mettre en place une telle solution requiert d'avoir bien sûr l'accord de la banque, le processus de mise en production est un peu hasardeux, dans le sens où nous n'avons aucun contrôle fort. Il s'agit d'une demande à faire par email... Un vrai sentiment de 1995 se dégage de ce genre d'expérience !
  • La solution Stripe, qui pour le coup est largement plus facile et accessible, tout est basé sur une API REST, donc très simple à utiliser, de plus il existe déjà un grand nombres de packages pour l'utiliser facilement.
Lire la suite →
Julien Tant Par

Réaliser un MVP : pourquoi et comment ?

Une des phases critiques du Lean Startup est la réalisation d'un Produit Minimum Viable, plus couramment appelé MVP. Pour faire simple, un MVP est le produit le plus petit possible qui vous permet de valider qu'une fonctionnalité, ou qu'un petit lot de fonctionnalités, correspond à l'attente de votre marché cible et vous permet de rapidement valider vos hypothèses.

Découvrons les avantages de cette pratique et les pièges à éviter.

Lire la suite →
Julien Tant Par

Typehint pour les types scalaires pour PHP 7

La future grosse version de PHP, dénommée PHP7 (oui oui, on zappe la version 6) a passé l'étape de feature freeze. C'est une étape à partir de laquelle les développeurs décident de ne plus accepter de nouvelles fonctionnaltées pour la 7.0, et que seules celles déjà votées mais non implémentées seront ajoutées. Parmis ces nouveautés se cachent deux que j'attend particulièrement : la déclaration du type de retour et le typehint pour les types scalaire. Nous allons parler de ce dernier dans cet article.

Lire la suite →