eldr-io
eldr-io
  • 12
  • 50 664
Build real-time modern web apps with Go, WebSockets and HTMX
#golang #htmx #websockets #tutorial #programming
In this video I create a sample modern web application that uses WebSockets in Golang and HTMX to display an autoupdating Hardware Monitor showing data about what is happening on the device.
The full source code is available on Github, see the pinned comment below!
github.com/sigrdrifa/go-htmx-websockets-example
มุมมอง: 11 443

วีดีโอ

How I structure my Haskell Projects
มุมมอง 1.1Kหลายเดือนก่อน
#haskell #coding #tutorial #project #structure #programming #testing In this video I walk you through how I structure my real Haskell applications including the testing tools, build tools, folder structure and more. The github repo for this video is here: github.com/sigrdrifa/haskell-project-structure My NVIM (neovim) config: github.com/sigrdrifa/nvim
Practical Concurrency in Go - GoRoutines, Mutexes, Channels and more
มุมมอง 3.8Kหลายเดือนก่อน
#golang #coding #concurrency #threads #tutorial #programming In this video I give some examples of writing concurrent programs in Go, using an example of writing a simple Currency Exchange that fetches currency exchange rates. We start by running it with no concurrency, then we implement goroutines fetching in parallel and finally we create a worker pool of threads and channels to enqueue work ...
Mock Web APIs with Testcontainers in Go
มุมมอง 2.2Kหลายเดือนก่อน
#golang #coding #testing #integration #api #tutorial In this video I show you can spin up custom docker images using Testcontainers automatically in your integration tests, and I show how you can easily spin up a custom web API inside the container to integration your code. This is a great way to make your integration tests do almost anything, you have the power of Docker at your fingertips and...
Test your Go code with Testcontainers
มุมมอง 3.7Kหลายเดือนก่อน
#coding #golang #programming #testing #tutorial #testcontainers #mysql In this video we will be looking at one of my favourite integration test virtualisation frameworks: testcontainers - and how to use it with Go. We programmatically spin up a MySQL database and configure it, all within Golang tests and connect a simple example MySQL database client to it. Testcontainers is an open source fram...
Pointers in Go - Don't be scared!
มุมมอง 3.8K2 หลายเดือนก่อน
#golang #coding #tutorial #pointers In this video I give an introduction to how Pointers work in Golang, how you declare them and use them, but also when you should use them and when you shouldn't! People are often scared of pointers or find them difficult to understand, so hopefully this will help!
How to test Go applications - the right way!
มุมมอง 3.3K3 หลายเดือนก่อน
In this video I give a live-coding tutorial of how I test my Golang applications using Behaviour-driven testing and Dependency Injection! #golang #coding #testing #tutorial
Dependency injection in Go - a pattern you should be using!
มุมมอง 4.8K3 หลายเดือนก่อน
In this video I provide an example of using Dependency injection in Go as well as describing some of the benefits of using it! #golang #coding #dependencyinjection #tutorial
Querying Youtube stats with Go (Code-along tutorial)
มุมมอง 7403 หลายเดือนก่อน
In this video I live-code a simple Golang script for querying the TH-cam Data API v3 to fetch stats about subscribers and view counts on this channel. Let me know if you enjoy this kind of format!
How to structure your Go projects
มุมมอง 9K3 หลายเดือนก่อน
In this video I walk through how I structure all of my Golang projects, explaining the directory structure, the source files, where I put unit and integration tests, as well as some key tooling that I use like Makefiles and mockery. Link to golang-project-structure repo: github.com/golang-standards/project-layout Link to tutorial weatherman source code: github.com/sigrdrifa/weatherman-tutorial ...
Start using this Go design pattern.. Consumer Interfaces!
มุมมอง 5K3 หลายเดือนก่อน
In this video, I give you an explanation and show a simple example of Consumer (client) interfaces in Golang, explaining why they work the way they do and what the benefits are. This video assumes that you know basic Go and mentions some other design patterns like Dependency Injection (let me know if you want a video on that). I'm really enjoying Golang lately and hope to use this channel to cr...

ความคิดเห็น

  • @rea_kr
    @rea_kr 3 วันที่ผ่านมา

    Thank you very much for your video. However, it would be better to hear the content in a clear voice rather than one processed though a fliter.

  • @paveldroo
    @paveldroo 4 วันที่ผ่านมา

    Great content, just wanted to point out not entirely correct information about difference in buffered and unbuffered channels. They are not about unlimited and limited data, but about blocking/unblocking operations. Unbuffered channel sends one piece of data and current goroutine stops execution until another goroutine will read the data from the channel. On the other hand, buffered channel allows execution until channel becomes full (the capacity parameter in make() function). When buffered channel is full it behaves like unbuffered channel until some goroutine will read some data from it. Hope it was interesting for you. I’ve watched all your videos, good job!

  • @dethcx22
    @dethcx22 5 วันที่ผ่านมา

    fyi your site link in your TH-cam channel shows the default NGINX startup page, so there's some sort of problem with your NGINX configuration

  • @nanonkay5669
    @nanonkay5669 6 วันที่ผ่านมา

    Honestly, it was all good until we got to worker pools. Then it was all confusing for me there after

  • @maximusmcfire
    @maximusmcfire 8 วันที่ผ่านมา

    App somewhat bugged, when you update page few times server stops responding "waiting for data" and subscribers map never cleaned. Rewrited using gorilla/websocket and turned all code into just 70 lines (almost twice less lines!) and it works just fine

  • @eduardabramovich1216
    @eduardabramovich1216 10 วันที่ผ่านมา

    Please make more apps using the Go + HTMX stack.

  • @licriss
    @licriss 10 วันที่ผ่านมา

    Just started my first project using stack and was stuck on what I should put in Lib vs App and this way fits my intuition perfectly and such a clean and well organised delivery with just the right amount of infomation that was useful to me right now, thanks!!

  • @vb_gh
    @vb_gh 10 วันที่ผ่านมา

    Thank you very much for making my requested video 🙏🏽. This is a good and clear real life use case. I would also like to ask for another video about what are the differences using json.Marshal or json.Unmarshal and json. Encoder or json.Decoder in go. I know they both are used to convert go types to json and vice versa. But I don't know why and where to use one over the other. A video with some vivid/concrete examples of why and where to use each or reply to this comment could help me understand. Thank you in advance 🙏🏽.

  • @user-pj2uu2pj1r
    @user-pj2uu2pj1r 10 วันที่ผ่านมา

    what is the editor?

  • @anantmishra6783
    @anantmishra6783 10 วันที่ผ่านมา

    wow, co pilot is really really annoying!

  • @pdigonzelli
    @pdigonzelli 12 วันที่ผ่านมา

    Amazing. One suggestion is you have to speak a little slowy.

  • @SU3D3
    @SU3D3 15 วันที่ผ่านมา

    Simply Lovely! 陽 🕯

  • @celestial8610
    @celestial8610 17 วันที่ผ่านมา

    like the content. but the voice its like indian accent forced to native english woman using AI.

  • @bryanngen5572
    @bryanngen5572 17 วันที่ผ่านมา

    Don’t stop making videos. You're actually really good at it.

  • @georgecrisan9499
    @georgecrisan9499 19 วันที่ผ่านมา

    the example at 10:30 cannot be correct, the error is caused by the fact that there is no Currency item in the currencies map with key 'usd' at the time the go routine outside of the waiting group is running. If you add a 'usd' currency in the code above the error is gone and it prints the rates when it has the record whenever the thread has a chance to run. Also at 22:40 you say let's close the resultChan but the code below has close(currencyChan). The question is why closing only one? why not both or why any at all?

  • @iPha1L
    @iPha1L 25 วันที่ผ่านมา

    Any chance you could make a video regarding installing NVIM and Neovide with your config?

  • @ademolakolawole3407
    @ademolakolawole3407 26 วันที่ผ่านมา

    Amazing!!!

  • @frankjansson7563
    @frankjansson7563 26 วันที่ผ่านมา

    I've been wanting to get started with Go these videos are really enjoyable. I enjoy your Non Go videos to. Keep spreading the joy of coding :)

  • @mathandemotion
    @mathandemotion 27 วันที่ผ่านมา

    that go context video would be helpful for me

  • @WhatNameHere
    @WhatNameHere 28 วันที่ผ่านมา

    How do you make your lualiine common for nvim tree and the buffer?

  • @daniellanciotti8908
    @daniellanciotti8908 28 วันที่ผ่านมา

    is it me , or the code editor pointer is so smooth ??

  • @buddy.abc123
    @buddy.abc123 28 วันที่ผ่านมา

    Use your real voice please. We have AI fatigue. Will catch you on the next one 👍🏾

  • @bassamsaleh8034
    @bassamsaleh8034 29 วันที่ผ่านมา

    Thanks for sharing but Context, context. Everyone in golang is using it. Video on context with real life example would be cool

  • @MartinAndrasi
    @MartinAndrasi 29 วันที่ผ่านมา

    Hello, whats the editor and plugins? Is it neovim with mouse plugin or ?

    • @eldr-io
      @eldr-io 29 วันที่ผ่านมา

      Hey, it's neovide. Check the pinned comment for the config

  • @hashomi0596
    @hashomi0596 29 วันที่ผ่านมา

    the content is great, but why are you using AI voice changer or generator? Are you human? If not, then god help us.

  • @AnoniChocolateMoose
    @AnoniChocolateMoose 29 วันที่ผ่านมา

    I highlighy doubt this video

  • @deathdefier45
    @deathdefier45 29 วันที่ผ่านมา

    Years since I've seen the rot13 haha

  • @nihirzala
    @nihirzala 29 วันที่ผ่านมา

    Is this fedora os ??

    • @eldr-io
      @eldr-io 29 วันที่ผ่านมา

      Hey, yes, I change around a lot but this video is on fedora 40 (Gnome)

    • @nihirzala
      @nihirzala 29 วันที่ผ่านมา

      @@eldr-io I am using the arch 😶 & get alot nightmares with it.

  • @justafreak15able
    @justafreak15able หลายเดือนก่อน

    your just wasting your time and skill on making AI generated videos. Make it your own and make a portfolio out of it.

  • @ahmedschhaider4762
    @ahmedschhaider4762 หลายเดือนก่อน

    thank you, really helpful

  • @deathdefier45
    @deathdefier45 หลายเดือนก่อน

    You're awesome <3 thank you for this

  • @ryanlog
    @ryanlog หลายเดือนก่อน

    Enough with that girly voice bro... it clearly sounds like a guy's voice trying to disguise as a girl with that AI-generated image Man up and face your audience

  • @jucazac8926
    @jucazac8926 หลายเดือนก่อน

    I actually think append is allocating, since we know nothing about b's capacity. Am I wrong?

  • @CodePulse
    @CodePulse หลายเดือนก่อน

    Wow you seem very knowledgeable

  • @baronbeans5001
    @baronbeans5001 หลายเดือนก่อน

    Love your tutorials. I would really love one on context please

  • @Cathal-zb4lu
    @Cathal-zb4lu หลายเดือนก่อน

    These videos are fantastic but i think she's an AI generated image and voice lol

    • @deathdefier45
      @deathdefier45 29 วันที่ผ่านมา

      You can hear the keystrokes sometimes

    • @kapzsisag
      @kapzsisag 29 วันที่ผ่านมา

      seems like a voice changer maybe? her voice glitches out sometimes like at 26:47

    • @javierflores09
      @javierflores09 29 วันที่ผ่านมา

      @@deathdefier45 that can be edited in for the effect, I know the person on the thumbnails is definitely AI generated, however I don't know if the voice is. Maybe a voice changer

    • @user-qk4tx9jc4m
      @user-qk4tx9jc4m 29 วันที่ผ่านมา

      Thats what I thought at first moment, but it works. Look at you and me!😂😂

    • @satyayuga0
      @satyayuga0 18 วันที่ผ่านมา

      Voice is real, but picture is obviously AI generated

  • @majidmohamadi5353
    @majidmohamadi5353 หลายเดือนก่อน

    Very nice, GJ

  • @OvidiuIspas
    @OvidiuIspas หลายเดือนก่อน

    Sorry for the somewhat untelated question, but what cursor is that? I also suppose the wm is hyprland? It would be really awesome so share your dotfiles, or why not, a future video of your setup! Thanks in advance!

    • @cg219
      @cg219 หลายเดือนก่อน

      I second all of this

    • @brivism
      @brivism 29 วันที่ผ่านมา

      Looks like default cursor animation in neovide

    • @OvidiuIspas
      @OvidiuIspas 29 วันที่ผ่านมา

      @@brivismthanks for replying, yep it looks like that’s what it was!

    • @eldr-io
      @eldr-io 29 วันที่ผ่านมา

      Hey, yea I use neovide, check the pinned comment for the config! As for WM, I change a lot and some times I'm on Hyprland, Cosmic or GNOME. This video is on gnome on fedora 40 :)

  • @davidherbert6359
    @davidherbert6359 หลายเดือนก่อน

    So Wonderful presentation and git thank you. Nice to see latest HTMX used. I learn so much in a simple and non over whelming way. I am most definitely Subscribed respect to u. Keep on maybe templ/HTMX/auth next pls.

  • @chrisj21b
    @chrisj21b หลายเดือนก่อน

    I'm gonna enjoy it very very much

  • @keerthes
    @keerthes หลายเดือนก่อน

    How much will it take for a beginner to learn ?

    • @eldr-io
      @eldr-io หลายเดือนก่อน

      It depends how much of a beginner you are but if you follow along with the tutorial you should be able to get to the same point of having a HTMX webapp that shows realtime data updates. It could be benificial for you to also watch my videos on structuring Golang projects, pointers in Go and practical concurrency in Go :) hope that helps!

  • @eldr-io
    @eldr-io หลายเดือนก่อน

    Hey guys, The source code for this video tutorial is here: github.com/sigrdrifa/go-htmx-websockets-example and my NVIM config is here: github.com/sigrdrifa/nvim Thanks for watching!

  • @veronez9846
    @veronez9846 หลายเดือนก่อน

    one of the bests videos about concurrency.

  • @joshbassett
    @joshbassett หลายเดือนก่อน

    Fantastic, more Haskell videos please 😃

  • @lev2590
    @lev2590 หลายเดือนก่อน

    Is just the thumbnail ai generated or the whole video 💀

    • @dkkogmaw1311
      @dkkogmaw1311 12 วันที่ผ่านมา

      Whole video 🥱 ppl are just already to lazy and uncreative to make own vids

  • @anassbenhalima7004
    @anassbenhalima7004 หลายเดือนก่อน

    WWE want more go videos

  • @user-vv9lz2ik2t
    @user-vv9lz2ik2t หลายเดือนก่อน

    You sound just like my brother

  • @Linuxhype
    @Linuxhype หลายเดือนก่อน

    Cool thanks for this!

  • @eldr-io
    @eldr-io หลายเดือนก่อน

    The github repo for this video is here: github.com/sigrdrifa/haskell-project-structure My NVIM (neovim) config: github.com/sigrdrifa/nvim Thanks for watching!