Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Cross-Platform Dev Via Electron

Cross-Platform Dev Via Electron

Scheduled Pinned Locked Moved The Lounge
javascriptcsharplinuxhtmlcss
30 Posts 10 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R raddevus

    #realJSOP wrote:

    does DDG show images for you?

    I think I'm missing it. Not sure what DDG is. I did have a problem where my app's icon was not showing up when I ran it on Linux. THen I noticed that my configuration was using lowercase to reference the JPG that represented the app icon and of course on Linux files are case-sensitive. I think you're talking about something else but I'm missing it. Let me know and I'll try to answer. Thanks,

    realJSOPR Offline
    realJSOPR Offline
    realJSOP
    wrote on last edited by
    #20

    DDG = DuckDuckGo search engine

    ".45 ACP - because shooting twice is just silly" - JSOP, 2010
    -----
    You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
    -----
    When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

    R 1 Reply Last reply
    0
    • R raddevus

      CodeWraith wrote:

      Choosing the right algorithm at least helps you to make most of whatever resources you may have.

      I agree 100%. I also found that some _real_ Architecture helped me to build my app on multiple platforms. The Domain objects in every solution are the same so I could simply convert my classes from one language to another and they worked just fine. It really sped development up. But, of course, the UI is the real challenge since every platform requires you to build it in a different way. Great discussion! :thumbsup:

      C Offline
      C Offline
      CodeWraith
      wrote on last edited by
      #21

      raddevus wrote:

      But, of course, the UI is the real challenge since every platform requires you to build it in a different way.

      Then unify that way the UI is built. The MVP (Model View Presenter) did that trick for me. Model and the Presenters have become independent and only the views had to be redone for each specific UI.

      I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

      R 1 Reply Last reply
      0
      • realJSOPR realJSOP

        DDG = DuckDuckGo search engine

        ".45 ACP - because shooting twice is just silly" - JSOP, 2010
        -----
        You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
        -----
        When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

        R Offline
        R Offline
        raddevus
        wrote on last edited by
        #22

        #realJSOP wrote:

        DDG = DuckDuckGo search engine

        Oh, wow, I am slow. :) Yes, I use FireFox and if I click the images tab then I do see images on my search. Are you using a different browser maybe?

        realJSOPR 1 Reply Last reply
        0
        • C CodeWraith

          raddevus wrote:

          But, of course, the UI is the real challenge since every platform requires you to build it in a different way.

          Then unify that way the UI is built. The MVP (Model View Presenter) did that trick for me. Model and the Presenters have become independent and only the views had to be redone for each specific UI.

          I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

          R Offline
          R Offline
          raddevus
          wrote on last edited by
          #23

          CodeWraith wrote:

          Then unify that way the UI is built. The MVP (Model View Presenter) did that trick for me.

          :thumbsup: Great idea.

          C 1 Reply Last reply
          0
          • R raddevus

            CodeWraith wrote:

            Then unify that way the UI is built. The MVP (Model View Presenter) did that trick for me.

            :thumbsup: Great idea.

            C Offline
            C Offline
            CodeWraith
            wrote on last edited by
            #24

            MVP pattern was especially well suited because the views are 'dumb' and contain as little logic as possible. So much less code that you have to implement again. Looks like I find a reason to post this link at least once a week. :-) This thing started out as ASP .Net Webforms: FoC UserClient - Under Construction - YouTube[^]

            I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

            1 Reply Last reply
            0
            • realJSOPR realJSOP

              Completely unrelated question - does DDG show images for you? Mine shows empty panels instead of the expected image...

              ".45 ACP - because shooting twice is just silly" - JSOP, 2010
              -----
              You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
              -----
              When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

              B Offline
              B Offline
              bVagadishnu
              wrote on last edited by
              #25

              I DDG'd for Linda Ronstadt and got an image on the right. Clicked the images link and got lots of images. hth

              But I never wave bye bye

              1 Reply Last reply
              0
              • R raddevus

                #realJSOP wrote:

                DDG = DuckDuckGo search engine

                Oh, wow, I am slow. :) Yes, I use FireFox and if I click the images tab then I do see images on my search. Are you using a different browser maybe?

                realJSOPR Offline
                realJSOPR Offline
                realJSOP
                wrote on last edited by
                #26

                Firefox on Linux...

                ".45 ACP - because shooting twice is just silly" - JSOP, 2010
                -----
                You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
                -----
                When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

                R 2 Replies Last reply
                0
                • realJSOPR realJSOP

                  Firefox on Linux...

                  ".45 ACP - because shooting twice is just silly" - JSOP, 2010
                  -----
                  You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
                  -----
                  When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

                  R Offline
                  R Offline
                  raddevus
                  wrote on last edited by
                  #27

                  #realJSOP wrote:

                  Firefox on Linux...

                  I will try it later (I'm running win10 on my dual boot machine right now) and post back and let you know. :thumbsup:

                  1 Reply Last reply
                  0
                  • realJSOPR realJSOP

                    Firefox on Linux...

                    ".45 ACP - because shooting twice is just silly" - JSOP, 2010
                    -----
                    You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
                    -----
                    When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

                    R Offline
                    R Offline
                    raddevus
                    wrote on last edited by
                    #28

                    Okay, I just tried it from here on Ubuntu (18.04.3 LTS) with FireFox and images do show up.

                    1 Reply Last reply
                    0
                    • R raddevus

                      Because I started running Ubuntu as my main desktop I needed my password creation app (C'YaPass - the WinForms version) on my Ubuntu desktop but wasn't sure of the best (or good) way to create a desktop app for Linux. I DuckDuckGo'd it and found Electron -- Electron is basically Node & Chrome engine that runs natively from your desktop. Visual Studio Code is an Electron app. Anyways, I had already created a very basic HTML5, JavaScript, Bootstrap version of my desktop app (C'YaPass : Never type a password again[^]) and that made the conversion to Electron very fast. Consistent on Windows, Linux, Mac The really cool thing is that when you run the app on Linux, Windows or Mac it looks exactly the same. Here's a snapshot : https://i.stack.imgur.com/yLq7E.png[^] Bootstrap It is interesting because Bootstrap helps create basic controls like we Windows Devs are accustomed to having. Installation Packages I just need to learn how to create an installation package for each platform now. It's really a simple idea (wrapping up browser so users think it is a desktop app) but it works really well. Completely Open Source FYI - You can get the source code at : GitHub - raddevus/CYaPass-Electron: The official C'YaPass desktop app built on Electron (runs on Windows, Linux, Mac)[^] Easy To Try Out You have to have Node (and NPM) installed. But if you do you just: 1. git clone https://github.com/raddevus/CYaPass-Electron 2. npm install 3. npm start

                      B Offline
                      B Offline
                      BillWoodruff
                      wrote on last edited by
                      #29

                      Very interesting, Raddevus, I'd look forward to an article about your work with Electron in the future :)

                      «One day it will have to be officially admitted that what we have christened reality is an even greater illusion than the world of dreams.» Salvador Dali

                      1 Reply Last reply
                      0
                      • R raddevus

                        Because I started running Ubuntu as my main desktop I needed my password creation app (C'YaPass - the WinForms version) on my Ubuntu desktop but wasn't sure of the best (or good) way to create a desktop app for Linux. I DuckDuckGo'd it and found Electron -- Electron is basically Node & Chrome engine that runs natively from your desktop. Visual Studio Code is an Electron app. Anyways, I had already created a very basic HTML5, JavaScript, Bootstrap version of my desktop app (C'YaPass : Never type a password again[^]) and that made the conversion to Electron very fast. Consistent on Windows, Linux, Mac The really cool thing is that when you run the app on Linux, Windows or Mac it looks exactly the same. Here's a snapshot : https://i.stack.imgur.com/yLq7E.png[^] Bootstrap It is interesting because Bootstrap helps create basic controls like we Windows Devs are accustomed to having. Installation Packages I just need to learn how to create an installation package for each platform now. It's really a simple idea (wrapping up browser so users think it is a desktop app) but it works really well. Completely Open Source FYI - You can get the source code at : GitHub - raddevus/CYaPass-Electron: The official C'YaPass desktop app built on Electron (runs on Windows, Linux, Mac)[^] Easy To Try Out You have to have Node (and NPM) installed. But if you do you just: 1. git clone https://github.com/raddevus/CYaPass-Electron 2. npm install 3. npm start

                        S Offline
                        S Offline
                        Stuart Dootson
                        wrote on last edited by
                        #30

                        I've done some Electron development (a translation of a C++/Qt app I developed, just to see what developing for Electron was like) and had the following thoughts: 1. It can be a bit slow (I was extracting & displaying information from 8MB XML files - is that big?) 2. Installing NPM packages with native code was a pain (this was a couple of years ago, so might have improved since then) 2. Is it just me, or does installing Electron/any sizable NPM package pull down almost half the Internet? Felt like it... 3. I was using Javascript, not Typescript (or a similar statically typed language). I don't really like vanilla Javascript, probably because I've used it so little, so that's a problem for me... 4. Packaging the application for distribution yielded something like a 100MB installer, for what was really not that much more than a 'Hello World'. Compared to around 45MB for the C++/Qt apps (yes, that includes all the Qt DLLs - my code compiled down to a 1.5MB EXE). Having said all that, two of the apps I use (and enjoy using) most, VSCode and GitKraken, are based on Electron, so I have no issue with Electron as a technology from a user's viewpoint. Having said that, I know that [GitKraken uses a fair amount of C++ to get improved performance](https://cppcast.com/tyler-angwanek/) (does VSCode? IDK)

                        Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p

                        1 Reply Last reply
                        0
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        • Login

                        • Don't have an account? Register

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Categories
                        • Recent
                        • Tags
                        • Popular
                        • World
                        • Users
                        • Groups