TUTORIAL - Electron JS - Custom Title Bar / Frameless Window - IPC Main/IPC Renderer - MODERN GUI

Поделиться
HTML-код
  • Опубликовано: 19 мар 2021
  • Hi guys,
    After many requests on how to create a custom title bar for Electron JS here on the channel I decided to record for you.
    This video focused on the logical part, the HTML and CSS interface part will not be aborted, because have a large amount of content that exists on the internet on this subject. Another problem is that for CSS and HTML it is necessary to write a lot of code, which makes the tutuorial have more than an hour.
    I am using FLEX CSS to align the interface.
    SOURCE CODE:
    The source code for this project is available to Patreon supporters:
    🔗 Patreon: N/A
    TOOLS:
    Electron JS with Node JS
    Visual Studio Code and Inkscape for drawing icons.
    -----
    //// DONATE ////
    🔗 Donate (Gumroad): gum.co/mHsRC
    //// PATREON ////
    🔗 Patreon: / wandersonismyname
    //// DISCORD ////
    🔗 Discord: / discord
    Subscribe to not miss any news from the channel.
    See you in the next videos.
    -----------------------------
    Feather by Waywell / waywell
    Creative Commons - Attribution-ShareAlike 3.0 Unported - CC BY-SA 3.0
    Free Download / Stream: bit.ly/_feather
    Music promoted by Audio Library • Feather - Waywell (No ...
    -----------------------------
  • НаукаНаука

Комментарии • 82

  • @Sindayah
    @Sindayah Год назад +10

    It's worth pointing out (so others don't struggle like me) that the region where "-webkit-app-region: drag;" is applied will have its mouse events disabled. So if you have CSS for some hover effect in that region - the hover effect won't trigger

    • @akbarmansurov1545
      @akbarmansurov1545 Месяц назад +1

      So minimize, maximize and close button (child elements) should get "-webkit-app-region: no-drag;"

  • @blackd3er941
    @blackd3er941 2 года назад +2

    Your tutorials help my life. Thank you so much!

  • @sadkcoban625
    @sadkcoban625 3 года назад

    This is massive. Thanks. You are master of desktop development :)

  • @honeypots345
    @honeypots345 3 года назад +5

    Best teacher in this world 🔥🔥🔥

  • @timoncarstens9081
    @timoncarstens9081 3 года назад

    Goood Thank you! I allready give up with IPC and do it on another way but know i need IPC again and i found your video and know it works.

  • @onurokumus
    @onurokumus 3 года назад

    great work! we need more electron js content

  • @subhamshaw1726
    @subhamshaw1726 2 года назад

    Thank u for this great video. Lot of useful stuff really needed it

  • @kamilzurek3301
    @kamilzurek3301 2 года назад

    Thank you very much for this, worked first time! Saved me a lot of hassle

  • @jorgegomes83
    @jorgegomes83 3 года назад

    This is awesome!

  • @simpleshorts389
    @simpleshorts389 2 года назад +1

    Powerful trick bro, awesome 👌😎👏🏿🙌💪

  • @JenuelDev
    @JenuelDev 3 года назад

    this is the best tutorial,, I have learned something

  • @nebuladevelopments
    @nebuladevelopments 2 года назад

    Hi there. Any ideas on how to fix the window not resizing? Been bugging me for ages, and can't find a fix anywhere.

  • @AndyDev404
    @AndyDev404 2 года назад

    Please add more content of Electron JS. The best channel! thank you

  • @nocnoc146
    @nocnoc146 2 года назад

    you are the gui king

  • @enriquesalomon8197
    @enriquesalomon8197 3 года назад

    Is there a way I can make the app Electron JS examination App. That prevents users from opening any other window while the online examination process is going on.The user is allowed to access only the examination window?

  • @cozerlive5440
    @cozerlive5440 2 года назад

    so I'm getting this error:
    Uncaught error require is not defined
    so appearently you can't the browser can't require modules but node.js can do that
    which step did i miss?

  • @duyduy1707
    @duyduy1707 3 года назад

    thank you bro

  • @Milkyway20239
    @Milkyway20239 2 года назад

    thank you so much ❤️

  • @LuisVega777
    @LuisVega777 Год назад

    este tutorial vale oro

  • @zuzzubaid2897
    @zuzzubaid2897 Год назад

    wow, sangat jelas. video yang ditampilkan. terimakasih banyak

  • @user-oy1bb7tq5g
    @user-oy1bb7tq5g Год назад

    Hi. Great video! One question: Why "-webkit-app-region: drag;" is not showing to me when I type?

  • @KhaledBairamBikDaghstani
    @KhaledBairamBikDaghstani 11 месяцев назад

    Thank's you so much!

  • @elitetatsuya
    @elitetatsuya Год назад +6

    so you editing code for electron by using vscode made by electron

    • @Roommate6
      @Roommate6 8 месяцев назад

      who was first electron or vscode?

    • @ukyo.studio
      @ukyo.studio 5 месяцев назад

      @@Roommate6 vscode was made in electron

  • @ShaneAJM
    @ShaneAJM 3 года назад

    Great content! Do you think you could make a video on how to do this with an already existing website? (Using LoadURL instead of loading files locally?)

  • @Chastr89
    @Chastr89 2 года назад +1

    Thank you for this wonderful video! Question though, how would I add content (i.e links) into the sidebar? (left menu one)

    • @richardprakash4630
      @richardprakash4630 2 года назад

      I suppose it would be in the index.html file. It would be just like a regular web app (i,e using nav, ul and li elements). If you want to load different views on click of it. Consider adding routes just like a regular web application, as a end user it would not be visible but the web container keeps track of this and loads different views

  • @paraxmaxter1738
    @paraxmaxter1738 2 года назад

    Quando vi a notificação em portugues pensei:
    "Algo de errado não está certo" kkkkk

  • @mwbgeometrydashpcaccount6372
    @mwbgeometrydashpcaccount6372 2 года назад

    browser preview doesn't work for me just because i have so many extensions

  • @nevespt
    @nevespt 2 года назад

    já tentei procurar bastante até em cursos pagos e nao encontro como deixar a area clara (do lado da barra lateral) a ser a app principal, ou seja a app principal a rodar toda na area clara e mantendo a barra de titulo e barra lateral sem carregar novamente

    • @oni9619
      @oni9619 7 месяцев назад

      Estou me matando tentando encontrar uma forma de conseguir fazer isso haha. Já se passou 1 ano, vc desistiu ou conseguiu resolver? Como?

  • @soyciro4623
    @soyciro4623 3 года назад

    Hey! Could you make a video explaining preload.js functionality? Tried to read the docs but it wasn't so clear for me.
    There's not enough info about it!
    Thanks for the content!

  • @MelvinG24
    @MelvinG24 2 года назад

    Thank you very much! I have entered afternoon looking how can I do a customized window in electron!, Thank you very much again

  • @prajneshshetty6155
    @prajneshshetty6155 2 года назад

    Hi, great content, however is it possible to customize title bar with an existing webpage using LoadUrl

  •  3 года назад

    Thank you so match my friend this help me a lot
    like and subscribe for you

  • @iHariPatel
    @iHariPatel 2 года назад

    Works fine

    • @WandersonItsMe
      @WandersonItsMe  2 года назад

      Glad to hear this technique is still working in 2022

  • @Ibrahim-oc5ql
    @Ibrahim-oc5ql 2 года назад

    I have a job interview coming up soon that needs me to create a mock-up, I'll let you know what happens!

  • @pazararabas411
    @pazararabas411 Год назад

    Thanks

  • @vivivijay1920
    @vivivijay1920 3 года назад

    Nice

  • @asaadelaissami
    @asaadelaissami 3 года назад

    which do you think is better for desktop GUI, python + qt or electron.js?

    • @WandersonItsMe
      @WandersonItsMe  3 года назад +1

      Electron ++++, haha. Python is not very stable for Qt 😢, but with C++ is a good option. Electron have, Discord, VS Code, Skype, Atom and much more another moderns apps.

    • @asaadelaissami
      @asaadelaissami 3 года назад +1

      @@WandersonItsMe ohh, What exactly do you mean, it's not very stable? don't you recommend python + qt (pyside + qwidgets or pyside + qml)?

  • @welly7973
    @welly7973 2 года назад

    tem versão em português?

  • @UzHandy
    @UzHandy 2 года назад

    Please make a video about how you record this video. What tools, setup, apps, mic, recorders you use? Pls, include all of them.

  • @fredoscott2346
    @fredoscott2346 Год назад

    Setting contextIsolation to false is a security risk. So is setting nodeIntegration to true. If you're only loading local content, it's no problem, but if you load any remote content, you're asking for trouble.

  • @itsaname3986
    @itsaname3986 3 месяца назад

    Still good in 2024

  • @mujtabaaltayib7417
    @mujtabaaltayib7417 3 года назад

    Any video just to explain link between python and qt quick, pyside, to explain it more please because I couldn't go forward using python wit qt

    • @WandersonItsMe
      @WandersonItsMe  3 года назад +1

      See this videos(10, 11 and 12): ruclips.net/video/BSMm2_2COT4/видео.html
      ruclips.net/video/DYvS4m25-wU/видео.html

    • @mujtabaaltayib7417
      @mujtabaaltayib7417 3 года назад

      @@WandersonItsMe I don't know how to thank you, your efforts are appreciated ❤️🌹🌹🌹

  • @priyankasubramanyam8412
    @priyankasubramanyam8412 10 месяцев назад

    The issue with this is that context isolation set to false is not a recommended approach.

  • @mastertmplayer
    @mastertmplayer 2 года назад +1

    Como se tornou fluente em se comunicar em inglês? foi devido a algum curso ou foi sozinho?

    • @WandersonItsMe
      @WandersonItsMe  2 года назад +1

      Fala Anderson, infelizmente eu não sou fluente ainda e preciso melhorar muito. Essa voz é de uma API da Microsoft do qual fiz um APP para traduzir os textos em voz. Meu inglês infeliz ainda precisa melhorar muito.

    • @mastertmplayer
      @mastertmplayer 2 года назад

      @@WandersonItsMe que maneiro ficou isso, poderia fazer um conteúdo sobre isso, seria muito legal, possuo um canal que foco em gerar conteúdo também em inglês geralmente sobre HTML, CSS, JS, porém os vídeos tem apenas músicas de fundo pois não sei conversar em inglês ainda, isso me ajudaria bastante hahaha

  • @vivivijay1920
    @vivivijay1920 3 года назад

    Nuce

  • @glowbunny8925
    @glowbunny8925 3 года назад

    Do you make the music by yourself? I all ways hear the tune. Good music tho

    • @WandersonItsMe
      @WandersonItsMe  3 года назад

      It wasn't me, it has the credits in the video description 😁

  • @retrom
    @retrom 3 года назад

    Any plans on a python with react app tutorial?

    • @WandersonItsMe
      @WandersonItsMe  3 года назад

      Not at the moment, I haven't studied React yet

  • @sheez-5486
    @sheez-5486 3 года назад +1

    PLEASE, make these kind of cool videos in Qt Designer, i really want them, there is no one that makes videos about PyQt5 like yours, so please, make some...

  • @LostInAutism
    @LostInAutism Год назад

    So you explicitly go against the security recommendation of nodeIntegration: false and contextIsolation: true? God I wish there were something better....

  • @digitaltrade436
    @digitaltrade436 3 года назад

    like

  • @mvpmc69
    @mvpmc69 2 года назад

    great tutorial, but would be better without the music, i have my own playlist

  • @DevSmite
    @DevSmite Год назад

    9:17

  • @MineCraftSitePL
    @MineCraftSitePL 3 года назад

    Npm extension didn't make a "npm scripts" tab :

    • @nobody008eermac949
      @nobody008eermac949 3 года назад

      you need to enable it by clicking on the three dots button next to explorer

  • @RealmOfCode
    @RealmOfCode 2 года назад

    Great, but if I already had configured my own menubar, then how do I maintain accessibility to it?? :-s No custom-titlebar tutorial explains this ;-(

  • @ewtwetrwerwteet
    @ewtwetrwerwteet Год назад

    anyone else watch this and go F it, I'm shipping my product with the fugly default bar lol 😆

  • @jithind-feverx2818
    @jithind-feverx2818 2 года назад

    Machine voice?

  • @alexander499zero
    @alexander499zero Месяц назад

    Thank you. But make it free (:

  • @R3fuge
    @R3fuge 2 года назад +2

    The audio is so incredibly tacky.

  • @philcartwright2309
    @philcartwright2309 3 года назад

    Your music is very very annoying... its just not needed

    • @WandersonItsMe
      @WandersonItsMe  3 года назад +1

      Ok 😅🤣

    • @nicollasfelix26
      @nicollasfelix26 2 года назад +1

      @@WandersonItsMe I love the song, surely pump me up to keep going, nice tutorial please mooore!!! Thanks so much.
      By the way I could not manage to get the side menu to appear, for some reason the BG collor only pops up when I put some content on it. Looking around to see if I can figure it ou, so far code is the same as yours.

  • @iHariPatel
    @iHariPatel 2 года назад

    Nice