Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • 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
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. neue Visualisierung "webui" (alternative zu vis & vis-2)

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.8k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

neue Visualisierung "webui" (alternative zu vis & vis-2)

Scheduled Pinned Locked Moved Visualisierung
1.1k Posts 21 Posters 351.6k Views 19 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.
  • jogibear9988J Offline
    jogibear9988J Offline
    jogibear9988
    wrote on last edited by
    #859

    eigentlich gehört das in den "wired" elementen gefixt, das die alle events nach außen weiterreichen...

    es sollte eigentlich so funktionieren...:

    03cbfe24-fd63-4ba7-8257-09ad212d5cce-image.png

    aber dazu muss man die wired elemente fixen...

    Check my ioBroker webui - a vis alternative
    see: https://github.com/iobroker-community-adapters/ioBroker.webui

    Smilie108S 1 Reply Last reply
    0
    • jogibear9988J jogibear9988

      eigentlich gehört das in den "wired" elementen gefixt, das die alle events nach außen weiterreichen...

      es sollte eigentlich so funktionieren...:

      03cbfe24-fd63-4ba7-8257-09ad212d5cce-image.png

      aber dazu muss man die wired elemente fixen...

      Smilie108S Online
      Smilie108S Online
      Smilie108
      wrote on last edited by
      #860

      @jogibear9988 ja aber ich vermute das diese keiner mehr bearbeitet zumindes letztes update vor 3 jahren ;( leider.

      export function init(instance) {
         const radioEl = instance._getDomElement('radioEl');
         radioEl.video.addEventListener('playing', (e) => {
             let a=e;
             console.log('testeplayer:' + a + 'endeplayertest');
                     setState("0_userdata.0.Multimedia.Radio_Webui.radisender_top_stopplay", a);
             debugger;
         });
         radioEl.video.addEventListener('pause', (e) => {
             let a=e;
             setState("0_userdata.0.Multimedia.Radio_Webui.radisender_top_stopplay", a);
             debugger;
      

      kann ich das so eigentlich machen ? bzw wo schreibt er dann den cosolen.log raus bzw geht das überhaupt. Sorry aber ich glaub ich weis da noch etwas zuwenig. Dachte das sollte er im debug bei der cosole rausschreiben aber da kommt nichts . Außerdem weil ich bekomme da eine meldung

      error parsing javascript - screenviewer - start TypeError: Cannot read properties of undefined (reading 'addEventListener')
      at Module.init (7071a729-cfc8-4366-a81f-63f6952091ca:9:19)
      at IobrokerWebuiScriptSystem.assignAllScripts (ScriptSystem.js:205:30)
      at async ScreenViewer.loadScreenData (ScreenViewer.js:105:30)

      jogibear9988J 1 Reply Last reply
      0
      • Smilie108S Smilie108

        @jogibear9988 ja aber ich vermute das diese keiner mehr bearbeitet zumindes letztes update vor 3 jahren ;( leider.

        export function init(instance) {
           const radioEl = instance._getDomElement('radioEl');
           radioEl.video.addEventListener('playing', (e) => {
               let a=e;
               console.log('testeplayer:' + a + 'endeplayertest');
                       setState("0_userdata.0.Multimedia.Radio_Webui.radisender_top_stopplay", a);
               debugger;
           });
           radioEl.video.addEventListener('pause', (e) => {
               let a=e;
               setState("0_userdata.0.Multimedia.Radio_Webui.radisender_top_stopplay", a);
               debugger;
        

        kann ich das so eigentlich machen ? bzw wo schreibt er dann den cosolen.log raus bzw geht das überhaupt. Sorry aber ich glaub ich weis da noch etwas zuwenig. Dachte das sollte er im debug bei der cosole rausschreiben aber da kommt nichts . Außerdem weil ich bekomme da eine meldung

        error parsing javascript - screenviewer - start TypeError: Cannot read properties of undefined (reading 'addEventListener')
        at Module.init (7071a729-cfc8-4366-a81f-63f6952091ca:9:19)
        at IobrokerWebuiScriptSystem.assignAllScripts (ScriptSystem.js:205:30)
        at async ScreenViewer.loadScreenData (ScreenViewer.js:105:30)

        jogibear9988J Offline
        jogibear9988J Offline
        jogibear9988
        wrote on last edited by
        #861

        @smilie108

        hast du dir meinen screen angeschaut??? schau dir das HTML an.

        hast du deinem html element auch die id "radioEl" gegeben?

        Und setstae gibt es nicht, da musst du IOB.setState oder so verwenden...

        Check my ioBroker webui - a vis alternative
        see: https://github.com/iobroker-community-adapters/ioBroker.webui

        Smilie108S 1 Reply Last reply
        0
        • jogibear9988J jogibear9988

          @smilie108

          hast du dir meinen screen angeschaut??? schau dir das HTML an.

          hast du deinem html element auch die id "radioEl" gegeben?

          Und setstae gibt es nicht, da musst du IOB.setState oder so verwenden...

          Smilie108S Online
          Smilie108S Online
          Smilie108
          wrote on last edited by Smilie108
          #862

          @jogibear9988 jap die id hab ich vergeben
          das interesannte ist wenn ich es bei dir aufrufe mit gleichem screen ( export bei dir und import bei mir) gleicher browser und nur diesen screen aufgerufen dann hast du

          <wired-video id="radioEl" class="wired-rendered" src="" bind-prop:src="=local_radiosenderauswahl_topplay_okay::src" bind-prop:autoplay="=local_radisender_top_stopplay::autoplay" playsinline="" @playing='{"commands":[{"type":"Co…23","target":"error"}]}' style="position:relativ;left:0p….821px;width:462.016px;">
          

          und bei mir kommt

          error parsing javascript - screenviewer - normalscreens/multimedia/radio(1) TypeError: radioEl.video is undefined
          

          und

          <wired-video id="radioEl" class="wired-rendered" src="" bind-prop:src="=local_radiosenderauswahl_topplay_okay::src" bind-prop:autoplay="=local_radisender_top_stopplay::autoplay" playsinline="" style="position:relativ;left:0p….821px;width:462.016px;">
          

          woher nimmt er bei dir das @playing ? das finde ich bei dir weder im code noch sonst irgendwo
          THX

          jogibear9988J 2 Replies Last reply
          0
          • Smilie108S Smilie108

            @jogibear9988 jap die id hab ich vergeben
            das interesannte ist wenn ich es bei dir aufrufe mit gleichem screen ( export bei dir und import bei mir) gleicher browser und nur diesen screen aufgerufen dann hast du

            <wired-video id="radioEl" class="wired-rendered" src="" bind-prop:src="=local_radiosenderauswahl_topplay_okay::src" bind-prop:autoplay="=local_radisender_top_stopplay::autoplay" playsinline="" @playing='{"commands":[{"type":"Co…23","target":"error"}]}' style="position:relativ;left:0p….821px;width:462.016px;">
            

            und bei mir kommt

            error parsing javascript - screenviewer - normalscreens/multimedia/radio(1) TypeError: radioEl.video is undefined
            

            und

            <wired-video id="radioEl" class="wired-rendered" src="" bind-prop:src="=local_radiosenderauswahl_topplay_okay::src" bind-prop:autoplay="=local_radisender_top_stopplay::autoplay" playsinline="" style="position:relativ;left:0p….821px;width:462.016px;">
            

            woher nimmt er bei dir das @playing ? das finde ich bei dir weder im code noch sonst irgendwo
            THX

            jogibear9988J Offline
            jogibear9988J Offline
            jogibear9988
            wrote on last edited by
            #863

            @smilie108

            @playing kann raus, das geht ja nicht...

            Check my ioBroker webui - a vis alternative
            see: https://github.com/iobroker-community-adapters/ioBroker.webui

            1 Reply Last reply
            0
            • Smilie108S Smilie108

              @jogibear9988 jap die id hab ich vergeben
              das interesannte ist wenn ich es bei dir aufrufe mit gleichem screen ( export bei dir und import bei mir) gleicher browser und nur diesen screen aufgerufen dann hast du

              <wired-video id="radioEl" class="wired-rendered" src="" bind-prop:src="=local_radiosenderauswahl_topplay_okay::src" bind-prop:autoplay="=local_radisender_top_stopplay::autoplay" playsinline="" @playing='{"commands":[{"type":"Co…23","target":"error"}]}' style="position:relativ;left:0p….821px;width:462.016px;">
              

              und bei mir kommt

              error parsing javascript - screenviewer - normalscreens/multimedia/radio(1) TypeError: radioEl.video is undefined
              

              und

              <wired-video id="radioEl" class="wired-rendered" src="" bind-prop:src="=local_radiosenderauswahl_topplay_okay::src" bind-prop:autoplay="=local_radisender_top_stopplay::autoplay" playsinline="" style="position:relativ;left:0p….821px;width:462.016px;">
              

              woher nimmt er bei dir das @playing ? das finde ich bei dir weder im code noch sonst irgendwo
              THX

              jogibear9988J Offline
              jogibear9988J Offline
              jogibear9988
              wrote on last edited by
              #864

              @smilie108 said in neue Visualisierung "webui" (alternative zu vis & vis-2):

              @jogibear9988 jap die id hab ich vergeben
              das interesannte ist wenn ich es bei dir aufrufe mit gleichem screen ( export bei dir und import bei mir) gleicher browser und nur diesen screen aufgerufen dann hast du

              <wired-video id="radioEl" class="wired-rendered" src="" bind-prop:src="=local_radiosenderauswahl_topplay_okay::src" bind-prop:autoplay="=local_radisender_top_stopplay::autoplay" playsinline="" @playing='{"commands":[{"type":"Co…23","target":"error"}]}' style="position:relativ;left:0p….821px;width:462.016px;">
              

              und bei mir kommt

              error parsing javascript - screenviewer - normalscreens/multimedia/radio(1) TypeError: radioEl.video is undefined
              

              und

              <wired-video id="radioEl" class="wired-rendered" src="" bind-prop:src="=local_radiosenderauswahl_topplay_okay::src" bind-prop:autoplay="=local_radisender_top_stopplay::autoplay" playsinline="" style="position:relativ;left:0p….821px;width:462.016px;">
              

              woher nimmt er bei dir das @playing ? das finde ich bei dir weder im code noch sonst irgendwo
              THX

              hab das script angepasst....
              schau mal obs so geht

              Check my ioBroker webui - a vis alternative
              see: https://github.com/iobroker-community-adapters/ioBroker.webui

              Smilie108S 1 Reply Last reply
              0
              • jogibear9988J jogibear9988

                @smilie108 said in neue Visualisierung "webui" (alternative zu vis & vis-2):

                @jogibear9988 jap die id hab ich vergeben
                das interesannte ist wenn ich es bei dir aufrufe mit gleichem screen ( export bei dir und import bei mir) gleicher browser und nur diesen screen aufgerufen dann hast du

                <wired-video id="radioEl" class="wired-rendered" src="" bind-prop:src="=local_radiosenderauswahl_topplay_okay::src" bind-prop:autoplay="=local_radisender_top_stopplay::autoplay" playsinline="" @playing='{"commands":[{"type":"Co…23","target":"error"}]}' style="position:relativ;left:0p….821px;width:462.016px;">
                

                und bei mir kommt

                error parsing javascript - screenviewer - normalscreens/multimedia/radio(1) TypeError: radioEl.video is undefined
                

                und

                <wired-video id="radioEl" class="wired-rendered" src="" bind-prop:src="=local_radiosenderauswahl_topplay_okay::src" bind-prop:autoplay="=local_radisender_top_stopplay::autoplay" playsinline="" style="position:relativ;left:0p….821px;width:462.016px;">
                

                woher nimmt er bei dir das @playing ? das finde ich bei dir weder im code noch sonst irgendwo
                THX

                hab das script angepasst....
                schau mal obs so geht

                Smilie108S Online
                Smilie108S Online
                Smilie108
                wrote on last edited by
                #865

                @jogibear9988 da bekomme ich das gleiche wie auf deinem
                Uncaught TypeError: radioEl.video is undefined
                bzw beim play stop drücken
                Uncaught (in promise) DOMException: The media resource indicated by the src attribute or assigned media provider object was not suitable.

                Smilie108S jogibear9988J 2 Replies Last reply
                0
                • Smilie108S Smilie108

                  @jogibear9988 da bekomme ich das gleiche wie auf deinem
                  Uncaught TypeError: radioEl.video is undefined
                  bzw beim play stop drücken
                  Uncaught (in promise) DOMException: The media resource indicated by the src attribute or assigned media provider object was not suitable.

                  Smilie108S Online
                  Smilie108S Online
                  Smilie108
                  wrote on last edited by
                  #866

                  @jogibear9988
                  Lass es gut danke für deine Hilfe ich glaub ich hab das soweit verstanden wie es gehen sollte mit dem event listener aber wenn es nicht will dann will es nicht ;) alles gut ich glaube ich muss das nochmal überdencken wie ich das mache ;) bzw wie ich das einbinden will.
                  ABER HERZLICHEN DANK FÜR DEINE BEMÜHUNGEN
                  Gruß tom

                  1 Reply Last reply
                  0
                  • Smilie108S Smilie108

                    @jogibear9988 da bekomme ich das gleiche wie auf deinem
                    Uncaught TypeError: radioEl.video is undefined
                    bzw beim play stop drücken
                    Uncaught (in promise) DOMException: The media resource indicated by the src attribute or assigned media provider object was not suitable.

                    jogibear9988J Offline
                    jogibear9988J Offline
                    jogibear9988
                    wrote on last edited by
                    #867

                    @smilie108 said in neue Visualisierung "webui" (alternative zu vis & vis-2):

                    @jogibear9988 da bekomme ich das gleiche wie auf deinem
                    Uncaught TypeError: radioEl.video is undefined

                    kein plan warum das noch kommt. Wenn musst deinen ganzen screen nochmals hochladen, dann kann ich schauen

                    Check my ioBroker webui - a vis alternative
                    see: https://github.com/iobroker-community-adapters/ioBroker.webui

                    Smilie108S 1 Reply Last reply
                    0
                    • jogibear9988J jogibear9988

                      @smilie108 said in neue Visualisierung "webui" (alternative zu vis & vis-2):

                      @jogibear9988 da bekomme ich das gleiche wie auf deinem
                      Uncaught TypeError: radioEl.video is undefined

                      kein plan warum das noch kommt. Wenn musst deinen ganzen screen nochmals hochladen, dann kann ich schauen

                      Smilie108S Online
                      Smilie108S Online
                      Smilie108
                      wrote on last edited by
                      #868

                      @jogibear9988 hab ich gemacht unter smilie108 radio1

                      jogibear9988J 1 Reply Last reply
                      0
                      • Smilie108S Smilie108

                        @jogibear9988 hab ich gemacht unter smilie108 radio1

                        jogibear9988J Offline
                        jogibear9988J Offline
                        jogibear9988
                        wrote on last edited by
                        #869

                        @smilie108 said in neue Visualisierung "webui" (alternative zu vis & vis-2):

                        @jogibear9988 hab ich gemacht unter smilie108 radio1

                        nun gehts... ist das problem, die wired elmente sind noch nicht geladen, wenn man das event ranhängen will. Nun warte ich darauf, schau dir das script an.

                        Check my ioBroker webui - a vis alternative
                        see: https://github.com/iobroker-community-adapters/ioBroker.webui

                        1 Reply Last reply
                        0
                        • jogibear9988J Offline
                          jogibear9988J Offline
                          jogibear9988
                          wrote on last edited by jogibear9988
                          #870

                          Diesen Code führe ich aus:

                          https://github.com/node-projects/base-custom-webcomponent/blob/795eb5cc78fbead59ba1d6d99bb8d0a343faa937/src/BaseCustomWebComponent.ts#L621

                          Der wartet darauf das alle child webcomponenten geupgraded sind.

                          Check my ioBroker webui - a vis alternative
                          see: https://github.com/iobroker-community-adapters/ioBroker.webui

                          Smilie108S 1 Reply Last reply
                          1
                          • jogibear9988J jogibear9988

                            Diesen Code führe ich aus:

                            https://github.com/node-projects/base-custom-webcomponent/blob/795eb5cc78fbead59ba1d6d99bb8d0a343faa937/src/BaseCustomWebComponent.ts#L621

                            Der wartet darauf das alle child webcomponenten geupgraded sind.

                            Smilie108S Online
                            Smilie108S Online
                            Smilie108
                            wrote on last edited by
                            #871

                            @jogibear9988 ja jetzt gehts ;) Danke . das muss man sich für die zukunft merken ;)
                            Danke

                            1 Reply Last reply
                            0
                            • jogibear9988J Offline
                              jogibear9988J Offline
                              jogibear9988
                              wrote on last edited by
                              #872

                              Was gibts neues....

                              Kommt in der nächsten Version (ist noch nicht live)

                              CSS-Specificity wird nun angezeigt, und die Styles nach dieser sortiert:
                              der wert: (a-b-c)
                              dadurch weiß man welche styles benutzt werden.

                              b5105f8f-d191-4ef4-950e-7e010dba0742-image.png

                              Check my ioBroker webui - a vis alternative
                              see: https://github.com/iobroker-community-adapters/ioBroker.webui

                              1 Reply Last reply
                              1
                              • jogibear9988J Offline
                                jogibear9988J Offline
                                jogibear9988
                                wrote on last edited by
                                #873

                                Sooo, hab mal ein bisschen an den zoom properties gearbeitet. Nun kann man Screens in andere Screens einbetten und zoomen. Dabei kann man noch eine Größe festlegen, von welcher aus der Zoom berechnet wird (wenn der ursprüngliche Screen keine fixe Größe hat).

                                05f59931-8deb-499b-b2a9-08f1512edc18-image.png

                                Check my ioBroker webui - a vis alternative
                                see: https://github.com/iobroker-community-adapters/ioBroker.webui

                                1 Reply Last reply
                                1
                                • jogibear9988J Offline
                                  jogibear9988J Offline
                                  jogibear9988
                                  wrote on last edited by
                                  #874

                                  I've added a few of the samples to a new "start" page of webui:

                                  9f785835-1ad3-4658-bcf8-99cc73990227-image.png

                                  http://129.159.205.3:8082/webui/runtime.html

                                  Check my ioBroker webui - a vis alternative
                                  see: https://github.com/iobroker-community-adapters/ioBroker.webui

                                  Smilie108S 1 Reply Last reply
                                  0
                                  • jogibear9988J jogibear9988

                                    I've added a few of the samples to a new "start" page of webui:

                                    9f785835-1ad3-4658-bcf8-99cc73990227-image.png

                                    http://129.159.205.3:8082/webui/runtime.html

                                    Smilie108S Online
                                    Smilie108S Online
                                    Smilie108
                                    wrote on last edited by Smilie108
                                    #875

                                    @jogibear9988 in firefox geht nichts mer in chrome gehts keine ahnung warum
                                    Firefox debug bringt

                                    
                                    
                                    
                                    Uncaught SyntaxError: redeclaration of const importMapWidgets
                                        <anonymous> http://192.168.1.173:8082/webui.0.widgets/importmap.js:1
                                    
                                    Uncaught (in promise) NS_ERROR_UNEXPECTED: 
                                        loadScreenData http://192.168.1.173:8082/webui/dist/frontend/runtime/ScreenViewer.js:165
                                    ScreenViewer.js:165
                                    

                                    js geht auch in chrome nicht ( menue und player usw ) in Chrome zeigt er mir wenigstens das startbild

                                    Version 1.9.8

                                    jogibear9988J B 3 Replies Last reply
                                    0
                                    • Smilie108S Smilie108

                                      @jogibear9988 in firefox geht nichts mer in chrome gehts keine ahnung warum
                                      Firefox debug bringt

                                      
                                      
                                      
                                      Uncaught SyntaxError: redeclaration of const importMapWidgets
                                          <anonymous> http://192.168.1.173:8082/webui.0.widgets/importmap.js:1
                                      
                                      Uncaught (in promise) NS_ERROR_UNEXPECTED: 
                                          loadScreenData http://192.168.1.173:8082/webui/dist/frontend/runtime/ScreenViewer.js:165
                                      ScreenViewer.js:165
                                      

                                      js geht auch in chrome nicht ( menue und player usw ) in Chrome zeigt er mir wenigstens das startbild

                                      Version 1.9.8

                                      jogibear9988J Offline
                                      jogibear9988J Offline
                                      jogibear9988
                                      wrote on last edited by
                                      #876

                                      @smilie108

                                      sorry, ich schaus mir nacher an. ;-)

                                      Ich schau auch mal das ich ein paar UI tests baue.

                                      Check my ioBroker webui - a vis alternative
                                      see: https://github.com/iobroker-community-adapters/ioBroker.webui

                                      1 Reply Last reply
                                      0
                                      • Smilie108S Smilie108

                                        @jogibear9988 in firefox geht nichts mer in chrome gehts keine ahnung warum
                                        Firefox debug bringt

                                        
                                        
                                        
                                        Uncaught SyntaxError: redeclaration of const importMapWidgets
                                            <anonymous> http://192.168.1.173:8082/webui.0.widgets/importmap.js:1
                                        
                                        Uncaught (in promise) NS_ERROR_UNEXPECTED: 
                                            loadScreenData http://192.168.1.173:8082/webui/dist/frontend/runtime/ScreenViewer.js:165
                                        ScreenViewer.js:165
                                        

                                        js geht auch in chrome nicht ( menue und player usw ) in Chrome zeigt er mir wenigstens das startbild

                                        Version 1.9.8

                                        B Offline
                                        B Offline
                                        Blockmove
                                        wrote on last edited by
                                        #877

                                        @smilie108 said in neue Visualisierung "webui" (alternative zu vis & vis-2):

                                        @jogibear9988 in firefox geht nichts mer in chrome gehts keine ahnung warum

                                        Kann ich bestätigen.

                                        The difference beetween Man and Boys:
                                        The price of their toys 😀

                                        1 Reply Last reply
                                        0
                                        • jogibear9988J Offline
                                          jogibear9988J Offline
                                          jogibear9988
                                          wrote on last edited by
                                          #878

                                          Firefox nightly ging, nur der aktuelle nicht.

                                          hatte diesen code:

                                           if (Document.parseHTMLUnsafe) {
                                                  //@ts-ignore
                                                  myDocument = Document.parseHTMLUnsafe(html)
                                          

                                          und ein fallback wenn es "parseHTMLUnsafe" nicht gibt. Problem, im aktuellen Firefox gibts die API, ist aber kaputt. In nightly geht Sie. Hab den code für firefox nun erst mal deaktiviert.
                                          Dadurch geht in Firefox DeclarativeShadowDom nicht (nutzt aber eh keiner)

                                          Check my ioBroker webui - a vis alternative
                                          see: https://github.com/iobroker-community-adapters/ioBroker.webui

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          697

                                          Online

                                          32.4k

                                          Users

                                          81.5k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe