Sandstone

on this page
Cet article a été traduit de l’anglais.
TLDR : Voir le projet ici !
Qu’est-ce que Sandstone
Sandstone est un microframework PHP. Ses objectifs principaux sont :
- Construire une RestApi
- Monter un serveur websocket
- Envoyer facilement des notifications push.
Sandstone est basé sur Silex, le microframework de Symfony.
Si vous ne connaissez pas Silex, c’est un framework web minimaliste similaire à expressjs en nodejs, ou à flask en python.
Que puis-je faire avec Sandstone
Vous pouvez facilement démarrer une RestApi, et y ajouter du temps réel, par exemple :
- Notifier tous les clients web qu’un nouvel article vient d’être publié via la RestApi
- Créer un chat qui fonctionne avec votre RestApi
- Pour un serveur de jeu, diffuser les coups des joueurs dès que quelqu’un a joué
Comment démarrer
Si vous démarrez un nouveau projet, la Sandstone edition devrait vous intéresser.
C’est une installation neuve de Sandstone, à partir de laquelle vous pouvez construire une RestApi temps réel, et qui contient aussi des outils de debug.
Cette édition intègre :
- Sandstone (Silex avec des websockets)
- un environnement Docker pour monter toute l’application (RestApi, serveur websocket, MariaDB, PHPMyAdmin)
- Doctrine ORM et les commandes Doctrine
- le Symfony web profiler pour débugger les requêtes de la RestApi et les événements Push
- Silex annotations pour les annotations de contrôleurs et de routing
Jetez-y un œil :
Vous pouvez aussi partir de zéro, ou l’intégrer dans une application Silex existante :
Commentaires (archivés depuis Disqus)
Sergio ·
Hi Julien, i am a new Symfony 3.3 developer and i would like to know if i can use Sandstone in a Symfony 3.3 project.
Will there be any problem if i add Sandstone to Symfony?
I need to receive data from an outside application using API REST and then do a broadcast to clients using websockets.
Can i use Sandstone in this way?
Thank you very much.
Julien Maulny ·
Hello,
If you already have a Symfony application, you don't need Sandstone. You may be interested in WebsocketBundle: https://github.com/Geniuses...
Coupling it with FOSRestBundle, and you have a Rest Api and a websocket server. So when you receive a RestApi call, you can send a message from rest api to websocket server with Push (zmq, amqp) feature that websocket bundle provides. Then you can broadcast your message to websockets clients.
Sandstone uses the same workflow, but is a microframework, like a lightweight Symfony (Sandstone in based on Silex).
Sergio ·
Ok, i'll do that.
Thanks for replying :)
