Hello :)
Alors Symfony c'est un framework backend, alors tu ne peux pas faire de chat uniquement avec Symfony et Twig
Tu dois installer une librairie JS par ex ReactJS + Socket.IO si tu es habitué à react
Perso j'utiliserais StimulusJS + Turbo (avec les streams qui fonctionnent avec les sockets) https://hotwired.dev il faut aussi que tu utilises la lib turbo de symfony pour retourner des reponses turbo depuis l'api controller: https://symfony.com/bundles/ux-turbo/current/index.html
Une fois la mise en place de base installée, la partie qui va t'intéresser ce sera https://symfony.com/bundles/ux-turbo/current/index.html#coming-alive-with-turbo-streams qui sert à envoyer les updates (les réponses du chat) au client
Ensuite si tu comptes publier le chat il faut que tu encryptes la conversation, bon pour ça utilise le système d'encryption de base de Symfony tu push en base de données avec Crypt::encrypt, tu récupères avec Crypt::decrypt, tout simple :p
Et je te recommandes d'utiliser un nosql en memoire, plus rapide, soit Redis, soit DynamoDB (Amazon)