Josh Cirre
Josh Cirre
  • 126
  • 814 317
Laravel Dev tries Phoenix and LiveView for the First Time
I'm on a mission to try to learn as much new languages, frameworks, and coding paradigms as possible this year. So I figured Phoenix, Elixir, and LiveView would be a great thing to check out from the perspective of a Laravel developer.
Laravel Livewire is, after all, based on and inspired by LiveView.
Here's my thoughts.
Keep creating.
――
Help me choose my next video:
cir.re/suggest
-----------------------
Phoenix: www.phoenixframework.org/
Phoenix LiveView: www.phoenixframework.org/blog/phoenix-liveview-1.0-released
---
📹 **Watch My VSCode Setup Video:** ua-cam.com/video/uoqhrFRuRF4/v-deo.html
🎓 **Make VSCode Awesome - Caleb Porzio's Course (support me with this link):** gumroad.com/a/636621331
Переглядів: 3 131

Відео

Turso OFFICIALLY Supports Laravel Now?
Переглядів 4,8 тис.День тому
I've been a fan of how easy it is to get up and running with a Turso database, but it becomes tricky to take advantage of the actual features that make Turso worth it (embedded replicas, vector search, etc.) But now, they just released their Laravel driver. Time to check it out. Keep creating. ―― Help me choose my next video: cir.re/suggest Blog Post: turso.tech/blog/announcing-laravel-support ...
This Solved My Authentication Redirect Problem
Переглядів 3,1 тис.14 днів тому
NOTE - Thanks to @devhammed, I learned that this is possible in the framework itself. Using `setIntendedUrl` on the redirect() method. I put together a quick video on my Twitter to show this off: x.com/joshcirre/status/1877838681395892523 - - - - Every now and then you come across a problem that you don't know how to solve it, and usually you end up trying too hard to solve it. So I took a step...
Livewire Volt has a VS Code Extension Now (and I'm so excited)
Переглядів 3,2 тис.Місяць тому
For those who know me, I'm a die-hard Livewire Volt fan. But let's be honest, the developer experience isn't always the best when neither VSCode or PHPStorm has any support for the syntax. It's PHP and Blade all in one file (with the niceties of Livewire), so it can be tricky. Not anymore. Meet Voltage. Keep creating. ―― Help me choose my next video: cir.re/suggest Voltage Github: github.com/ro...
How do you start a new project as a developer?
Переглядів 2,6 тис.Місяць тому
How do you take the steps needed to start something new? When you're met with a blank page or a blank Laravel application... what do you do? How do you take the first step? How do you... start? Let's learn together. Article: slothbytes.beehiiv.com/p/programming-projects Coding Sloth UA-cam: @TheCodingSloth Best Project Ideas for Beginners: ua-cam.com/video/ZBDPoMW4Wrg/v-deo.html Keep creating. ...
The Pros and Cons of Laravel Livewire
Переглядів 13 тис.Місяць тому
I recently came across a Reddit thread asking for the pros and cons of Livewire. I have some thoughts. Keep creating. ―― Help me choose my next video: cir.re/suggest Reddit Thread: www.reddit.com/r/laravel/s/ALVj6XYGkK Motion.dev: motion.dev/ Alpine: alpinejs.dev/ Cruddy by Design: ua-cam.com/video/MF0jFKvS4SI/v-deo.html Getting Rid of JavaScript Video: ua-cam.com/video/3bGyi1oiq7E/v-deo.html L...
I Built Theo's Pokemon App in Laravel
Переглядів 6 тис.2 місяці тому
Theo (@t3dotgg) built his Roundest Pokemon app in 5 different tech stacks. But he obviously forgot that he is a Laravel developer now. So I helped him out and built Roundest in Laravel and Livewire. Keep creating. ―― Help me choose my next video: cir.re/suggest My Roundest Repo: github.com/joshcirre/roundest-laravel 1 App, 5 Stacks Repo: github.com/t3dotgg/1app5stacks 1 App, 5 Stacks Video: ua-...
Is this the future of React? PHP Dev Tries TanStack Start
Переглядів 5 тис.2 місяці тому
I'm a Laravel dev and I'm trying out TanStack Start. But the weird thing is... I kind of like it? Keep creating. ―― Help me choose my next video: cir.re/suggest TanStack Start: tanstack.com/start/latest 📹 Watch My VSCode Setup Video: ua-cam.com/video/uoqhrFRuRF4/v-deo.html 🎓 Make VSCode Awesome - Caleb Porzio's Course (support me with this link): gumroad.com/a/636621331
I stopped using composer run dev after one week
Переглядів 5 тис.2 місяці тому
Aaron Francis (@aarondfrancis) changed how I do local dev in Laravel. You all thought that npm run dev was the final boss, then Taylor and the Laravel team came out with "composer run dev". Well, that's so last week. Keep creating. ―― Help me choose my next video: cir.re/suggest Solo Repo: github.com/aarondfrancis/solo Chewie Repo: github.com/joetannenbaum/chewie Fission Repo: github.com/joshci...
The Missing Devtools for Laravel Livewire
Переглядів 4,3 тис.2 місяці тому
It seems like every other meta framework or library has dev tools. Even Alpine.js has a neat little Dev tool extension. But Livewire has been left out of the discussion for a good bit of time. Until now. Let's check out Wirespy - a sleek new debug bar for Livewire. Keep creating. ―― Help me choose my next video: cir.re/suggest Wirespy Repo: github.com/wire-elements/wire-spy Philo's WireElements...
Is the Arc browser breaking up with me?
Переглядів 9 тис.2 місяці тому
I've been a long-time (at least 2 years) full-time user of the Arc browser. But the Browser Company seems to have other plans. Am I overreacting? Are we going to be okay? Do we need to talk? Keep creating. ―― Help me choose my next video: cir.re/suggest Josh Miller's Post: x.com/joshm/status/1849896446113333688 The Verge Article: t.co/8hDchbok6a 📹 Watch My VSCode Setup Video: ua-cam.com/video/u...
Extremely simple analytics for your Laravel apps
Переглядів 4,1 тис.3 місяці тому
Extremely simple analytics for your Laravel apps
Laravel Livewire Crash Course | Livewire 3 Tutorial for Beginners in 1.5 Hours
Переглядів 26 тис.3 місяці тому
Laravel Livewire Crash Course | Livewire 3 Tutorial for Beginners in 1.5 Hours
Making VS Code Beautiful AGAIN (Alternative to APC Customize UI++)
Переглядів 9 тис.3 місяці тому
Making VS Code Beautiful AGAIN (Alternative to APC Customize UI )
Theo Fixed My Videos
Переглядів 3,4 тис.3 місяці тому
Theo Fixed My Videos
Why Gumroad Didn't Choose HTMX
Переглядів 3,6 тис.3 місяці тому
Why Gumroad Didn't Choose HTMX
How I made 100+ videos in one year (my process and tools)
Переглядів 3 тис.3 місяці тому
How I made 100 videos in one year (my process and tools)
My Personal Livewire Starter Kit
Переглядів 4 тис.3 місяці тому
My Personal Livewire Starter Kit
Why are bootcamps not teaching Laravel?
Переглядів 3,4 тис.3 місяці тому
Why are bootcamps not teaching Laravel?
Is PHP the new JavaScript?
Переглядів 19 тис.3 місяці тому
Is PHP the new JavaScript?
First Look at Livewire Flux (and I'm building a starter kit?)
Переглядів 7 тис.3 місяці тому
First Look at Livewire Flux (and I'm building a starter kit?)
Is Hypermedia the Future?
Переглядів 3,5 тис.4 місяці тому
Is Hypermedia the Future?
Infinite Scroll in Laravel Livewire
Переглядів 3,5 тис.4 місяці тому
Infinite Scroll in Laravel Livewire
My Three New Favorite things in Laravel
Переглядів 3,7 тис.4 місяці тому
My Three New Favorite things in Laravel
Here's how to build ANYTHING extremely fast
Переглядів 14 тис.4 місяці тому
Here's how to build ANYTHING extremely fast
The best Laravel project ideas for beginners
Переглядів 6 тис.4 місяці тому
The best Laravel project ideas for beginners
How to make better technical decisions
Переглядів 1,1 тис.4 місяці тому
How to make better technical decisions
Keeping Users in the Loop | Background Job Status Updates with Laravel Livewire
Переглядів 3,8 тис.4 місяці тому
Keeping Users in the Loop | Background Job Status Updates with Laravel Livewire
Is Laravel changing too fast? (State of Laravel Survey Reaction)
Переглядів 2,5 тис.4 місяці тому
Is Laravel changing too fast? (State of Laravel Survey Reaction)
Two underrated Livewire features you need to build modern applications
Переглядів 4,9 тис.4 місяці тому
Two underrated Livewire features you need to build modern applications

КОМЕНТАРІ

  • @MyOwnPufferFish
    @MyOwnPufferFish 37 хвилин тому

    I find that livewire is best when used sparingly. So if you don't need a single page-feel to your app, it's usually best to have all files being blade components, and only necessary components being livewire. I've tried to go full livewire and use wire:navigate and all, but I encountered several weird behaviours and it just became tedious (and soon it might be useless thanks to browser view transition). Also blade being quite barebones means your code will be much easier to maintain on the long run. Then if I need a lot of reactivity and a single page app feel, either API+frontend or inertia are decent contenders.

  • @andre_pf
    @andre_pf 16 годин тому

    Amigão, disponibilize mais vídeos em português. A comunidade Dev brasileira agradece.

  • @wahidullahulfat-qw1tu
    @wahidullahulfat-qw1tu День тому

    Waiting for Other Videos Related to Livewire Advanced Concepts.

  • @VimalMistry10
    @VimalMistry10 День тому

    PHP mentioned

  • @nasko235679
    @nasko235679 День тому

    Every time I read FP language my brain breaks. I too tried Phoenix and Liveview a few months ago and it was like trying to read Chinese without even understanding the alphabet. 🤣 I guess I have Javascript brain.

  • @mjacksonjones
    @mjacksonjones 2 дні тому

    Would love for you to do this but add Statamic.. Not needed for your app, but would be interesting to show if you had a front end web site that directed user to your app after signup.

  • @mjacksonjones
    @mjacksonjones 2 дні тому

    It might be overkill, but I would use Statamic, also.

  • @kennethkipchumba2532
    @kennethkipchumba2532 2 дні тому

    I have a problem customizing this package so that I can populate extra columns on the database. For instance I have first_name and last_name as fields on my users table in place of only name, as its the case by default.

  • @mcmay01
    @mcmay01 3 дні тому

    I like your content bro. Good work

  • @MrTonybahama
    @MrTonybahama 3 дні тому

    Hey Josh! What do you use in the beginning for making the diagrams?

  • @pookiepats
    @pookiepats 5 днів тому

    Elixir is built on quicksand.

    • @RomanWaper
      @RomanWaper 2 дні тому

      Why?

    • @pookiepats
      @pookiepats День тому

      @ it compiles to Erlang AST not bytecode (like Gleam)-that design decision means it is forever a slave to the decision making of the Erlang maintainers. Elixir is trying to shoehorn in a type system currently, but Erlang is an ecosystem unto itself with no desire for static typing; oopsie. It’s fun to try new things but make no mistake, Elixir is not in the same class as PHP; especially when you strip away the frameworks and just compare lang to lang. Elixir is an Erlang DSL, thus the quicksand assertion.

    • @RomanWaper
      @RomanWaper День тому

      @@pookiepats cool, thanks for the answer 👍

  • @JBPDailyClips
    @JBPDailyClips 5 днів тому

    How to do email verify?

  • @jijeshc
    @jijeshc 5 днів тому

    Nice for a beginner ❤❤

  • @brunoanken3571
    @brunoanken3571 6 днів тому

    What's your icon theme and IDE?

  • @pfbrodriguez
    @pfbrodriguez 7 днів тому

    I am a former delphi,java programmer and I am studying php. I am surprise how it is mature now

  • @keithprinkey8575
    @keithprinkey8575 7 днів тому

    Dude that auth package is beyond broken lol. I had to reinstall it on several occasions bc if u enable certain settings under auth/setup/settings it breaks the entire package lol. This was recently too, not months ago. 😂 I’ve made them aware.

  • @chuggingCoffee_
    @chuggingCoffee_ 7 днів тому

    Awesome. I'm learning Laravel and Phoenix right now as a Rails dev, so this is right up my alley. Excited to check this video out! Thanks for all the great videos and content you put out. Seems like a lot of work, and you clearly get a lot of joy putting good information out to people in the dev community with these. Cheers!

  • @sinesiphosinworld315
    @sinesiphosinworld315 8 днів тому

    Your Bookmark is so unclear, why did you create Bookmarks not Bookmark? it keep saying bookmarks() is undefined and im just stuck on that Bookmarks stuff, im getting lot's of errors

  • @tristan7668
    @tristan7668 8 днів тому

    Your setup is elegant and minimal. Really would like to say thank you a lot!

  • @ultrasys
    @ultrasys 8 днів тому

    Waste of time.

    • @joshcirre
      @joshcirre 8 днів тому

      I don’t think it’s ever a waste to learn something new!

    • @ultrasys
      @ultrasys 8 днів тому

      @ when what you’re learning has a good potential, ok. But Elixir… really? Anyways, you have plenty of credit accumulated. I just pointed that out in hope you don’t deviate too much from the course, to a point where you find yourself “distro hoping”. I reckon the value of choice, but I also understand that too many choices are distracting and end up causing more problems than helping one progressing.

    • @delavago5379
      @delavago5379 7 днів тому

      ​@ultrasys you are quite miserable, aren't you.

    • @shadowfaxenator
      @shadowfaxenator 7 днів тому

      @@ultrasys You say it cause you do not know the real strength of erlang OTP platform compared to PHP, learn first please. than say

    • @ultrasys
      @ultrasys 7 днів тому

      @@shadowfaxenator you sure I don’t know it? How can you be so sure I haven’t analyzed it in the past, prior to conclude that it is a waste of time? Power for power, we would all have to select assembly; then again, it is not suitable for daily tasks/projects. Dude, I’m on this well since 85… believe me: I know a thing or two about one or two technologies. Anyways, I still have Josh in high account, but that doesn’t give anyone a free pass, especially when it comes to buzz supported trends. I learn even from my own stupid comments, let alone from other’s…

  • @Voidstroyer
    @Voidstroyer 9 днів тому

    Elixir and by extension Phoenix have a bit of a learning curve to it. Here are some tips: 1. Your app name should always use snake_case since Elixir will automatically convert this to PascalCase in your modules. If you used the mix phx.new command and used phx-start as the name then you would get an error. variable names will also always use snake_case. This is more a convention. 2. ~p is called a sigil in Elixir. This particular sigil is used to check for routes in your router. If the route that you wrote after ~p doesn't exist in your router.ex file, then the compiler will give you a warning. If you directly write your routes without using the ~p sigil then no warning will be shown during compilation. So, it is pretty much always a good idea to use ~p. 3. ~H is also a sigil. This is used for writing Heex (HTML embedded elixir) inside elixir code. You can choose to create a .heex file instead if you want. So, for example if you have a about_live.ex file, you will then also have to create a about_live.html.heex file and Phoenix will automatically use that file to render the html that is connected to your about_live.ex file. Might be useful if you have a large amount of HTML and you want to keep your elixir code a bit more manageable. Also, if you are using generators such as mix phx.gen.xxx then it is definitely a good idea to use git so you can actually see what is being added/changed. Elixir Phoenix makes all generated files accessable to the user which is a bit different from Laravel. (Last time I used Laravel, which was version 8, I remember that some generated files are hidden inside some vendor, or something like that, folder and if you want to edit stuff you need to create your own file in the correct folder to provide your own overrides).

    • @Voidstroyer
      @Voidstroyer 9 днів тому

      Also, never ever do Ecto related stuff directly inside your frontend code (either the Controller or your live_view module). This is what Contexts are for. Contexts are for grouping your business logic.

  • @wtfdoiputhere
    @wtfdoiputhere 9 днів тому

    i still believe in Laravel supremacy

    • @joshcirre
      @joshcirre 8 днів тому

      Same. But I might be a bit biased. 😁

  • @kevinlloyd9507
    @kevinlloyd9507 9 днів тому

    You can do something similar with HTMX for progressive enhancement: hx-select="#todos" hx-target="#todos"

    • @joshcirre
      @joshcirre 8 днів тому

      Good to know. Thanks!

  • @the_jacob_alexander
    @the_jacob_alexander 9 днів тому

    yeah that feeling of code design, templates and structures is weird. When I'm going back to rails for example I feel like I'm in a sweet cute home. In phoenix is like "f.. you here is your stuff, I get it from the garbage, now you sleep in dog's house"

    • @Voidstroyer
      @Voidstroyer 9 днів тому

      First impressions are definitely like this. To some degree the way how the Controller works with the html files is still a bit strange (having page_controller.ex, page_html.ex, page_html folder and inside that folder having home.html.heex / about.html.heex and whatever other pages you might have). I think that most people just default to using liveview instead since it makes stuff so much easier to understand. But once you learn more about how the framework works, it really starts to make sense. It's probably not as easy to get up and running compared to Laravel, but I do still think that Phoenix is the better framework. Laravel still does a lot of magic behind the scenes, whereas Phoenix makes everything visible to the developer.

    • @the_jacob_alexander
      @the_jacob_alexander 8 днів тому

      ​@@Voidstroyer but you are talking about standard HTTP controllers, they are easier but let's be honest everybody use live views which is a pain for newbies. And from what I see for other ppl too. live views and custom app layouts (admin panel/customer panel) - wtf phoenix!? live view and role based access - wtf2 I don't know why phoenix team don't address it, maybe we are in a point where some tutorials are required because these things are so unclean, doing It is like splashing shit on the wall.

    • @Voidstroyer
      @Voidstroyer 8 днів тому

      @@the_jacob_alexander I think that you are misunderstanding what I said? I said that liveview is easier than controllers. It's much less files to deal with. And it also seems that Josh went into Phoenix without reading any documentation about it. And it also doesn't help that he instantly went to Phoenix without any Elixir knowledge. I am pretty sure that someone who had never used PHP before would struggle the same if they went straight into Laravel (assuming that they never used an OOP language before. PHP isn't necessarily OOP, but Laravel definitely is).

    • @Voidstroyer
      @Voidstroyer 8 днів тому

      @@the_jacob_alexander I will agree that some of the documentation is quite unclear. But I don't think that it's that bad though. The documentation is there. I just wish for better examples.

  • @DanielBergholz
    @DanielBergholz 9 днів тому

    ELIXIR MENTIONED 🔥

  • @MrManafon
    @MrManafon 9 днів тому

    Josh you are thinking too Laravel-y 😂 there is no special automagic sauce in Phoenix like in Laravel. Context is simply a grouping of related files/apis/repos. Apps are split to web and domain as every project is a monorepo by default. Sigils ~p are just strings with special meaning, that help compiler or linter to understand what a string represents and validate it. ~p stands for path. Yes you can have as many controllers as you want, and you can organise them any way you’d like. Migrations are autogenerated, and placed as files in a folder the same as in Laravel, but you also own them, so you can edit them and make changes if you’d like. 🎉 Great video! Buuuut I’d love if we forgot about all of this fancy stuff and had you learn plain elixir first. Spin up a Livebook and talk to some Apis! After you do, everything else falls into place.

    • @pookiepats
      @pookiepats 5 днів тому

      elixir feels hella crufty for web dev, is gross

  • @ajzack983
    @ajzack983 9 днів тому

    4:16 G (capital G) to go to the end of the file in vim

  • @santiagotv6095
    @santiagotv6095 9 днів тому

    this is greate tutorial but i need more advance tutorial please

  • @g-kkone1662
    @g-kkone1662 9 днів тому

    Josh i have learn (still learning) Laravel because of your videos and laracast ! And now i had learned Elixir and Phoenix on The Pragmatic studio site. Surprisingly i jump on youtube and find you on this subject 🤣this is crazy

  • @azizemirkorkmaz2760
    @azizemirkorkmaz2760 9 днів тому

    Presentation techniques are wonderful, thank you very much!

  • @mdefou
    @mdefou 10 днів тому

    I really love your videos. I watch them regularly and I have a suggestion. When in editing please filter lower frequencies. I don't know if anyone mentioned it but when you type my house is shaking :)

  • @QuantumScribe
    @QuantumScribe 10 днів тому

    Back in 2022, the Verge touted Arc as the Chrome replacement we’ve been looking for and described it as ‘much more opinionated and much more complicated than your average browser.’ Indeed, it is not only much more complicated for the user but clearly too complicated for the developers who couldn’t readily port it to Windows, Linux, iOS, and Android. And bizarrely, Arc existed only in the Apple world, where 99% of its user base is adverse to complexity. To quote Steve Jobs, “Simple can be harder than complex: You have to work hard to get your thinking clean to make it simple.” Arc, on the other hand, embraced complexity and tried to convince users to put their noses to the grindstone to discover the Arc way. Now that Arc has pulled their head out of there 🫏 , it’s probably too late.

  • @maestrombody2855
    @maestrombody2855 10 днів тому

    Laravel + Inertia + React + Shadcn UI is the best Stack I have ever used

  • @antoniopitty9982
    @antoniopitty9982 10 днів тому

    😂😂😂 que imb3cil

  • @alexz75515
    @alexz75515 11 днів тому

    Livewire will probably never be as snappy as well written React/Vue. But it's enormous update to Blade. Now creating interactive pages is way easier, while 10x faster.

  • @kirayamato6128
    @kirayamato6128 11 днів тому

    maybe I'll use it after 1-2 years. this is not suitable for businesses

  • @daghsny
    @daghsny 11 днів тому

    Just starting trying LiveWite, thnkx 🎉 JC

    • @sinesiphosinworld315
      @sinesiphosinworld315 7 днів тому

      did you finish the tutorial even the Bookmark part from @1:11:20 to @1:19:00 ?

    • @daghsny
      @daghsny 7 днів тому

      @@sinesiphosinworld315 yes i do

  • @christostsangaris4785
    @christostsangaris4785 12 днів тому

    @josh Great content as always! Just a note: I feel that there is a slight delay between the video and the audio.

  • @sadeghpm
    @sadeghpm 12 днів тому

    It has many issues and still has a long way to go to become stable.

  • @JoshHookerJoshhook123
    @JoshHookerJoshhook123 12 днів тому

    what does your bird from model look like? I didnt see where you showed it.

  • @codedusting
    @codedusting 12 днів тому

    Any GUI client for it?

  • @BrunoBernard-kn6vt
    @BrunoBernard-kn6vt 12 днів тому

    I was giving a hand on the libsql but on the compiled side, then Turso decided to move using FFI, which is very new and isn't compliant at all with PDO SQLite, so I believe we should give it a six month to a year for it to be stable enough.

  • @startcoder6207
    @startcoder6207 13 днів тому

    wire:snapshot need a video plz

  • @codernerd7076
    @codernerd7076 13 днів тому

    Bur does it work with all Laravel orm features?!

  • @pookiepats
    @pookiepats 13 днів тому

    PHP still runs the server side web, just like jQuery still has the frontend on lockdown; enjoy UA-camrs as entertainment instead of mistaking it for educational content or a method to get a pulse on the reality of the state of the web. So long as HTTP is the protocol for browsers, you can use whatever you want on the backend and frontend. Everything else is marketing, a direct or indirect way for entity X to generate revenue or generate traffic for entity Y.

    • @pookiepats
      @pookiepats 13 днів тому

      and if you find yourself jumping from solution to solution trying to find the right “answer”-you need to stop framework and language shopping and go read a book about programming patterns. If you understand the patterns, it will open your mind up and see just how goofy all the zealots are that champion these things (not that Josh does, he’s a Tuber; they entertain). But YOU need to stop wasting your youth cult shopping.

  • @jonatasbaldan
    @jonatasbaldan 13 днів тому

    that's cool, but one problem that prevented me to use turso with laravel is that the old package have some problems with multi databases. This new package have the same problem?

  • @ricko13
    @ricko13 13 днів тому

    i've been waiting for this moment since forever! love laravel + turso ♥

  • @haiffy
    @haiffy 14 днів тому

    In nextjs i usually just add search params e.g "/register?redirect=URL" on that kind of button, so when the user registered, it immediately logs the user in then redirect to that URL

  • @rodrigorios78
    @rodrigorios78 14 днів тому

    This is the kind of content I feel like that brings so much value to developers: how to solve X (not being something too trivial, but also not too specific). It doesn't need to be THE best way to solving X, but it's some way. It is the reason I'm considering creating a YT channel to share the smartest solutions I came up with, during all my time working with Laravel.

  • @rodrigorios78
    @rodrigorios78 14 днів тому

    Great video Josh! Would you mind sharing which extension/setting you used to make the panel look like that at 3:47? Thanks!