Dans cette vidéo je vous présente ma stack idéale pour coder son premier SaaS! #pocketbase #golang #golangtutorial #htmx #saas
Пікірлер: 15
@OutisDev28 күн бұрын
Vraiment super la vidéo. Je viens de découvrir ta chaîne et je compte rester
@julienblanchon6082Ай бұрын
J'ai deux désaccords avec cette vidéo: Tout d'abord, Pocketbase n'est pas un outil pérenne pour scale par la suite. En pratique, tu ne peux pas scale horizontalement, cad uniquement verticallement avec un plus gros serveurs. Pour le coup il faut quand même y aller pour mettre a bout Pocketbase, donc ça reste un super choix pour ton usecase. Deuxièmement, je ne suis vraiment pas fan de la partie frontend, je le trouve ça super sale. Dans la vidéo, tu justifie ce choix par le fait que tu ne veux pas perdre de temps à apprendre le web et que les framework sont trop complexe. Mais prendre 2-3 heures pour apprendre Svelte sera rentable dès la première heure de développement. La avec un système de template tu sera facilement 10 fois moins rapide que avec un vrais framework. PS: T'as oublié le lien du starter pack dans la description ;)
@aloisdenielАй бұрын
Merci pour les retours! Je n'ai effectivement pas assez développé ces deux points dans la video. Tu ne peux effectivement pas scaler horizontalement facilement, mais ce que je décris c'est plus la possibilité de réutiliser une partie de son code Go : routing, logique générale, ... En gros tout ce qu'il faut ré-implementer, c'est ce qui concerne vraiment Pocketbase, donc principalement l'auth et la BDD. Si on prévoit des abstractions pour ces deux couches, on peut s'en sortir la plupart du temps. Donc si je dois changer la BDD pour Postgre dans un second temps, je pourrai m'en sortir. Pour ce qui est de la partie frontend, si tu parles de Svelte uniquement sans SvelteKit, ca veut dire que je ne dois pas uniquement implémenter des APIs pour les SDKs de mon SaaS, mais aussi pour toutes les pages de mon portail. Je trouve quand meme beaucoup plus simple de rendre des pages directement a partir de la base de données coté serveur. Alors on peut utiliser des Server Side Components, mais vraiment mixer tout cela avec des Client Side Components me parait vraiment complique a maintenir... Et si tu n'utilise que des server side components c'est exactement la meme chose que ce que je fais avec Templ, mais avec une technologie en plus ... Tout cela me parait personnellement beaucoup plus "sale" que d'utiliser de simples templates coté serveur. Aussi, en fait l'aspect apprentissage ne me fait pas si peur puisque je maitrise deja React, c'est plus Next.js et tous les concepts associés et le fait d'avoir a maintenir des technologies differentes (Outillage, CI, Hebergement, ...) Le starter est disponible ici : github.com/aloisdeniel/saas_starter/tree/develop. J'avais prévu de l'ajouter dans la foulée mais il me manques deux trois éléments pour que ce soit vraiment clean et complet! Je posterais un commentaire cette semaine quand ce sera pret!
@julienblanchon6082Ай бұрын
Oui, je suis tout à fait d'accord pour Pocketbase, avec un léger refactoring il sera facile de switch sur des technologies réellement scalable. De toute façon avant cela il faut réussir a avoir concretement besoin de scale, et ya quand même pas mal de marge. Pour ce qui est du front-end, la meilleure chose à faire est probablement de continuer sur votre lancée avec Templ, puis de faire un petit détour de 2-3 heures une fois que l'application est bien avancée, pour voir si ça vaut réelement le cout de venir sur des techno plus mainstream. Typiquement pour avoir un DX plus agréable: typing (db pocketbase, les variables tailwinds ...), plus de component library que tu peux reprendre (shadcn), plus de ressources dispo de façon général ... De plus, Pocketbase + Sveltekit est un combo très, très populaire. Ya vraiment pas mal de super exemple sur cette stack. PS : Je pense que ton repo doit être en privé
@aloisdenielАй бұрын
@@julienblanchon6082 Mince, tu as raison, j'ai changé la visibilité! Pour SvelteKit, c'est surement une meilleure solution si on peut se permettre, mais j'ai vraiment envie d'éviter le contexte switching au maximum quand j'ai tres peu de temps dédié a un side projet! Templ et HTMX fonctionnent bien pour moi pour l'instant! Mais peut etre qu'un jour je passerai a Svelte quand j'aurai un peu plus de temps libre. :) Merci pour le feedback en tout cas!
@mohamedbouhlel8265Ай бұрын
Top la vidéo, sauf la musique c'est cool au début mais a la fin j'en pouvais plus lol peut être baisser un peu le son merciii
@aloisdenielАй бұрын
Merci! Oui... je n'avais pas fais gaffe a la durée de la vidéo. J'avoue que 40min en boucle ca fait trop! J'essaierai de faire plus attention.
@adriencens3394Ай бұрын
Très bon choix de thème. On est en plein dans la tendance. Je ne pensais pas que ça irai si vite dans une vidéo technique, j'aurai bien kiffé que tu nous en dises plus sur ta motivation de faire un SaaS, quel est le projet derrière et aussi vu que tu nous parle de la stack qu'est-ce que tu as prévu d'utiliser comme solution pour chacun de tes objectifs. Voilà super cool en vrai comme concept
@aloisdenielАй бұрын
Merci! Je reviendrai surement plus sur le produit en question... si ca peut etre intérressant, on verra! Concernant les technologies c'est principalement ce que je présente dans la video en ajoutant : stripe pour le paiement, OpenAI pour de l'analyse de données et diverses technologies pour des SDKs frontend (Flutter, SwiftUI, React, Jetpack Compose)
@sidymohamedcherifhaidara980Ай бұрын
Super vidéo ❤, bonne chance mon gars
@frerebilly2626Ай бұрын
Salut ! Super vidéo longue vie à Pocketbase et Supabase 😁 Je trouve ton terminal macos vraiment beau avec cette teinte bleutée, tu utilises un thème particulier ?
@aloisdenielАй бұрын
Merci! C’est le thème Catppuccin sur iTerm2 pour le terminal, et Tokyonight pour Neovim! :)
@kalist8938Ай бұрын
Instancier dans un langage qui n'est pas orienté objet.... y'a pas un bug dans la matrice ?
@aloisdenielАй бұрын
Ah ah, désolé pour l'abus de language. Quel verbe devrais-je utiliser pour une struct? Allouer, créer ?
@kalist8938Ай бұрын
@@aloisdeniel haha pas de soucis. Je taquinais. Perso j’aurai dis initialiser. Comme quand j’initialise une variable classique au final.