XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    XO Lite Development

    Scheduled Pinned Locked Moved XO Lite
    15 Posts 5 Posters 2.4k Views 5 Watching
    Loading More Posts
    • 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.
    • olivierlambertO Offline
      olivierlambert Vates 🪐 Co-Founder CEO
      last edited by

      Sure, let me bring here the people in charge of XO Lite dev, so they can help you to make your first steps 🙂 Stay tuned!

      1 Reply Last reply Reply Quote 0
      • ByscriptsB Offline
        Byscripts
        last edited by

        Hi @borzel

        I would be glad to help you getting started with XO Lite.

        This project uses Vue JS 3.4 and TypeScript 5.3.

        Here is a quick overview for anyone wanting to help.

        Setup

        1. Clone the Xen Orchestra repository
        2. Head to @xen-orchestra/lite directory
        3. Copy the .env.dist file to .env and fill in the VITE_XO_HOST with the host URL (e.g. http://1.2.3.4)
        4. Still in the @xen-orchestra/lite directory, run yarn to install deps, then yarn dev to run the development server.
        5. XO Lite WebUI will be available at http://127.0.0.1:3000/

        Here is the various folders/files which can be found in src :

        assets - Images and CSS
        components - Vue SFC components
        composables - Vue Composables
        directives - Vue Directives
        libs - Code which does not fit in any other directory
        locales - Vue i18n translation files
        router - Vue Router configuration
        stores - Pinia stores
        stories - Component stories, a playground to try and document components (accessible at http://127.0.0.1:3000/#/story when dev server is running)
        types - TypeScript types
        views - The app pages (accessible via the router)
        App.vue - Main layout of the app
        context.ts - Context configuration files (see below)
        i18n.ts - i18n configuration file
        main.ts - Entry point

        Feel free to follow the various links and ask for extra help if needed.

        1 Reply Last reply Reply Quote 3
        • borzelB Offline
          borzel XCP-ng Center Team
          last edited by

          I'm having fun 🙂

          https://github.com/vatesfr/xen-orchestra/issues/7284

          borzel created this issue in vatesfr/xen-orchestra

          open xo-lite german translation #7284

          1 Reply Last reply Reply Quote 1
          • borzelB Offline
            borzel XCP-ng Center Team
            last edited by borzel

            How do you debug xo-lite in VSCode?

            My breakpoints don't match up, it stops way to early. Breakpoint is on line 64, VSCode jumps to line 11 😕

            My Setup:

            • Ubuntu 23.10
            • Firefox (Snap)
            • VSCode 1.85.1

            My config:

            vite.config.ts

                sourcemap: true,
            

            launch.json

            {
                "version": "0.2.0",
                "configurations": [
                    {
                        "name": "Launch localhost",
                        "type": "firefox",
                        "request": "launch",
                        "reAttach": true,
                        "url": "http://localhost:3000",
                        "webRoot": "${workspaceFolder}",
                        "tmpDir": "/home/alex/tmp",
                        "pathMappings": [
                            {
                                "url": "http://localhost:3000",
                                "path": "${workspaceFolder}"
                            }
                        ],
                        "keepProfileChanges": true,
                        "profileDir": "/home/alex/snap/firefox/common/.mozilla/firefox/12b2my3n.debug",
                        "log": {
                            "consoleLevel": {
                                "PathConversion": "Debug",
                                "default": "Error"
                            }
                        }
                    }
                ]
            }
            
            ByscriptsB DanpD 2 Replies Last reply Reply Quote 0
            • olivierlambertO Offline
              olivierlambert Vates 🪐 Co-Founder CEO
              last edited by

              That's a good question for @Byscripts 😄

              1 Reply Last reply Reply Quote 0
              • borzelB Offline
                borzel XCP-ng Center Team
                last edited by borzel

                what I build so far (yet uncommited, just local)

                don't know if that is usefull in the end... at least it was a good exercise to get a bit familiar with the sourcecode 🙂

                8915f0b8-aedc-4ed8-9bc7-bf748b206978-grafik.png

                1 Reply Last reply Reply Quote 1
                • ByscriptsB Offline
                  Byscripts @borzel
                  last edited by Byscripts

                  @borzel said in XO Lite Development:

                  How do you debug xo-lite in VSCode?

                  My breakpoints don't match up, it stops way to early. Breakpoint is on line 64, VSCode jumps to line 11 😕

                  Hi. I'm sorry but I'm not familiar with VSCode.

                  Personally, I'm using the debugger [1] [2] statement then I'm debugging directly with the Brave (Chrome) integrated debug tools (Or, possibly, that I connect to WebStorm)

                  borzelB 1 Reply Last reply Reply Quote 0
                  • borzelB Offline
                    borzel XCP-ng Center Team
                    last edited by

                    is there a great plan, what should be implemented first, or should someone just start and PR on Github?

                    1 Reply Last reply Reply Quote 0
                    • olivierlambertO Offline
                      olivierlambert Vates 🪐 Co-Founder CEO
                      last edited by

                      Right now, the thing we do is to mostly build components needed while following the UX directions given by our UX designer, @clemencebx

                      Let me ask internally how we could share "good first issues" and things we could delegate to move faster together!

                      borzelB 1 Reply Last reply Reply Quote 0
                      • borzelB Offline
                        borzel XCP-ng Center Team @olivierlambert
                        last edited by

                        @olivierlambert ok, so I was a bit too fast here: https://github.com/vatesfr/xen-orchestra/pull/7290

                        😉

                        borzel opened this pull request in vatesfr/xen-orchestra

                        draft feat(xo-lite): Storage Repositories #7290

                        1 Reply Last reply Reply Quote 0
                        • olivierlambertO Offline
                          olivierlambert Vates 🪐 Co-Founder CEO
                          last edited by

                          No problem, we'll see with @clemencebx if it's OK and what we planned for this part of the design 🙂

                          1 Reply Last reply Reply Quote 0
                          • borzelB Offline
                            borzel XCP-ng Center Team @Byscripts
                            last edited by

                            @Byscripts thanks for the debugger infos 👍

                            1 Reply Last reply Reply Quote 0
                            • DanpD Online
                              Danp Pro Support Team @borzel
                              last edited by

                              @borzel said in XO Lite Development:

                              My breakpoints don't match up

                              FWIW, this appears to work correctly with Chrome --

                              launch.json

                              {
                                  "version": "0.2.0",
                                  "configurations": [
                                      {
                                          "name": "WSL Chrome",
                                          "type": "chrome",
                                          "request": "launch",
                                          "url": "http://localhost:3000",
                                          "webRoot": "${workspaceFolder}/src",
                                          "sourceMapPathOverrides": {
                                              "webpack:///./src/*": "${webRoot}/*",
                                              "webpack:///src/*": "${webRoot}/*"
                                          }
                                        }        
                                  ]
                              }
                              
                              1 Reply Last reply Reply Quote 0
                              • J Offline
                                john.c
                                last edited by john.c

                                @borzel With my PWA manifest merged you can do further development work around it if you wish. However don't add to much extra Java script if you do so, as it can seriously affect performance and security.

                                Also too many abstractions can affect the ability to understand how Xen Orchestra, as well as XCP-ng works and fix any issues, by thus limiting the number of people who can understand the code and its workings in order to fix them. As read any code from libraries and frameworks used in order to understand them and avoid any vulnerabilities in the code.

                                Not to mention that people who wish to use it may not have Java script enabled browsers or have Java script disabled (maybe even blocked). If the software can't work at all without Java script in the browsers currently support available at the moment now, then they will boycott using the software or website.

                                1 Reply Last reply Reply Quote 0
                                • First post
                                  Last post