Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test/Support für Adapter rssfeed und vis-2-widgets-rssfeed

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Test/Support für Adapter rssfeed und vis-2-widgets-rssfeed

    This topic has been deleted. Only users with topic management privileges can see it.
    • OliverIO
      OliverIO @Oli last edited by

      @oli

      Dann bitte

      iob diag

      Und prüfe bitte das Laufwerk auf Fehler.

      O 1 Reply Last reply Reply Quote 0
      • O
        Oli @OliverIO last edited by

        @oliverio
        Ich habe ioBroker auf Windows installiert, da geht das glaube ich nicht

        OliverIO 1 Reply Last reply Reply Quote 0
        • OliverIO
          OliverIO @Oli last edited by

          @oli

          dann zumindest die platte prüfen
          Terminal/dos fenster als Admin öffnen und

          chkdsk
          

          ausführen.

          O 1 Reply Last reply Reply Quote 0
          • O
            Oli @OliverIO last edited by

            @oliverio
            da scheint alles in Ordnung zu sein

            Windows PowerShell
            Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.
            
            Installieren Sie die neueste PowerShell für neue Funktionen und Verbesserungen! https://aka.ms/PSWindows
            
            PS C:\Users\Oliver\Desktop> chkdsk
            Der Typ des Dateisystems ist NTFS.
            Die Volumebezeichnung lautet Windows.
            
            WARNUNG! Der Parameter /F wurde nicht angegeben.
            CHKDSK wird im schreibgeschützten Modus ausgeführt.
            
            Phase 1: Die Basisdatei-Systemstruktur wird untersucht...
             1443072 Datensätze verarbeitet.
            Dateiüberprüfung beendet.
            Phasendauer (Datei-Datensatz Überprüfung): 20.68 Sekunden.
             19625 große Datensätze verarbeitet.
            Phasendauer (Wiederherstellung für verwaisten Datei-Datensatz): 11.33 Millisekunden.
             0 ungültige Datensätze verarbeitet.
            Phasendauer (Prüfung auf falschen Datei-Datensatz): 0.44 Millisekunden.
            
            Phase 2: Die Dateinamenverknüpfung wird untersucht...
             133106 Analysedatensätze verarbeitet.
             1630634 Indexeinträge verarbeitet.
            Indexüberprüfung beendet.
            Phasendauer (Indexüberprüfung): 13.83 Sekunden.
             0 nicht indizierte Dateien überprüft.
            Phasendauer (Wiederverbindung für verwaisten Datensatz): 2.74 Sekunden.
             0 nicht indizierte Dateien wiederhergestellt.
            Phasendauer (Wiederherstellung für verwaiste Datensatz): 0.45 Millisekunden.
             133106 Analysedatensätze verarbeitet.
            Phasendauer (Überprüfung von Analysepunkts und Objekt-ID): 340.07 Millisekunden.
            
            Phase 3: Sicherheitsbeschreibungen werden untersucht...
            Überprüfung der Sicherheitsbeschreibungen beendet.
            Phasendauer (Überprüfung für Sicherheits-Deskriptor): 58.42 Millisekunden.
             93782 Datendateien verarbeitet.
            Phasendauer (Datenattributüberprüfung): 1.20 Millisekunden.
            CHKDSK überprüft USN-Journal...
             40970720 USN-Bytes verarbeitet.
            Die Überprüfung von USN-Journal ist abgeschlossen.
            Phasendauer (USN-Journalüberprüfung): 173.53 Millisekunden.
            
            Dateisystem wurde überprüft, keine Probleme festgestellt.
            Keine weiteren Aktionen erforderlich.
            
            999060479 KB Speicherplatz auf dem Datenträger insgesamt
            757963848 KB in 546556 Dateien
               308416 KB in 93783 Indizes
                    0 KB in fehlerhaften Sektoren
              1900287 KB vom System benutzt
                65536 KB von der Protokolldatei belegt
            238887928 KB auf dem Datenträger verfügbar
            
                 4096 Bytes in jeder Zuordnungseinheit
            249765119 Zuordnungseinheiten auf dem Datenträger insgesamt
             59721982 Zuordnungseinheiten auf dem Datenträger verfügbar
            Gesamtdauer: 37.85 Sekunden (37859 ms).
            
            OliverIO 1 Reply Last reply Reply Quote 0
            • OliverIO
              OliverIO @Oli last edited by

              @oli

              ok
              sieht gut aus.
              jetzt muss ich sagen, das ich ratlos bin.
              den installationsprozess des adapters kann ich selbst nicht beeinflussen.
              der adapter wird als paket geladen,in die entsprechende verzeichnisse kopiert und vis dann noch intern den "upload" durchgeführt, was nix anderes ist die dateien beim web adapter zu registrieren.

              du kannst mal in die innereien von vis-2 schauen.
              Also dort wo dein iobroker installiert ist, müsste es das folgende verzeichnis geben. dort werden die inhalte des adapters durch den upload hochgeladen.
              /node_modules/iobroker.vis-2/www/widgets/vis-2-widgets-rssfeed

              das müsste dann wie folgt aussehen
              89dd5a38-363b-446b-810d-6526dde286ef-image.png

              und der assets ordner
              c028bb39-c632-4b5f-9b16-3cf1c9474694-image.png

              im img ordner ist nur das logo

              O 1 Reply Last reply Reply Quote 0
              • O
                Oli @OliverIO last edited by

                @oliverio
                Ordner werden angelegt und befüllt

                0ba60327-3abc-406f-b750-6f27795658d7-image.png

                OliverIO 1 Reply Last reply Reply Quote 0
                • OliverIO
                  OliverIO @Oli last edited by

                  @oli

                  ok dann müssen wir im browser schauen.
                  ich tippe immer noch auf browser cache
                  welchen browser verwendest du?
                  die developer tools kennst du ja
                  öffne die developer tools und wähle den network reiter und drücke dann bitte F5 zum neu laden
                  im filterfeld bitte customwidgets eingeben
                  dann müssten alle customwidgets dateien kommen (je nachdem wieviel vis-2 widgets adapter du noch installiert hast)

                  für vis-2-widgets-rssfeed musst mir dann den http status sagen

                  alternativ dann noch das disable cache kästchen ankreuzen
                  37ccbfa7-3c88-4bec-94a9-1b8525ded7fb-image.png

                  O 1 Reply Last reply Reply Quote 0
                  • O
                    Oli @OliverIO last edited by

                    @oliverio
                    ich verwende edge, chrome und silk überall das gleiche

                    vielleicht hilft dir das weiter:

                    hub.ts:494 
                     Uncaught (in promise) TypeError: Ut(...).isOlderThan is not a function
                        at qt (hub.ts:494:65)
                        at sdk.ts:19:15
                        at t.init (sdk.ts:91:3)
                        at Object._initializeSentry (widgets.min.js:1:20151)
                        at Object.initializeSentry (widgets.min.js:1:19863)
                    qt	@	hub.ts:494
                    (anonymous)	@	sdk.ts:19
                    t.init	@	sdk.ts:91
                    _initializeSentry	@	widgets.min.js:1
                    initializeSentry	@	widgets.min.js:1
                    await in initializeSentry		
                    (anonymous)	@	materialdesign.js:35
                    (anonymous)	@	widgets.min.js:1
                    (anonymous)	@	widgets.min.js:1
                    (anonymous)	@	visEngine.jsx:1199
                    Promise.then		
                    emit	@	visEngine.jsx:1199
                    getObject	@	widgets.min.js:1
                    getVersion	@	widgets.min.js:1
                    (anonymous)	@	materialdesign.js:32
                    (anonymous)	@	widgets.min.js:1
                    setTimeout		
                    waitForVisConnected	@	widgets.min.js:1
                    showVersion	@	materialdesign.js:31
                    (anonymous)	@	widgets.min.js:1
                    customWidgets.js:2 
                     Uncaught SyntaxError: Cannot use import statement outside a module (at customWidgets.js:2:1)
                    visLoadWidgets.tsx:197 
                     Cannot load widget system.adapter.vis-2-widgets-rssfeed.0: Error: Cannot load vis2rssfeedWidgets from ./widgets/vis-2-widgets-rssfeed/customWidgets.js
                    (anonymous)	@	visLoadWidgets.tsx:197
                    Promise.catch		
                    (anonymous)	@	visLoadWidgets.tsx:196
                    n	@	visLoadWidgets.tsx:173
                    (anonymous)	@	visLoadWidgets.tsx:326
                    Promise.then		
                    (anonymous)	@	visLoadWidgets.tsx:326
                    (anonymous)	@	visLoadWidgets.tsx:254
                    Promise.then		
                    r	@	visLoadWidgets.tsx:225
                    (anonymous)	@	visWidgetsCatalog.tsx:302
                    setTimeout		
                    (anonymous)	@	visWidgetsCatalog.tsx:301
                    collectRxInformation	@	visWidgetsCatalog.tsx:300
                    onWidgetsLoaded	@	Runtime.jsx:813
                    onLoaded	@	Runtime.jsx:1028
                    loadWidgets	@	visEngine.jsx:1529
                    await in loadWidgets		
                    (anonymous)	@	visEngine.jsx:208
                    Promise.then		
                    Mt	@	visEngine.jsx:196
                    visLoadWidgets.tsx:198 
                     Cannot load widget system.adapter.vis-2-widgets-rssfeed.0: {}
                    (anonymous)	@	visLoadWidgets.tsx:198
                    Promise.catch		
                    (anonymous)	@	visLoadWidgets.tsx:196
                    n	@	visLoadWidgets.tsx:173
                    (anonymous)	@	visLoadWidgets.tsx:326
                    Promise.then		
                    (anonymous)	@	visLoadWidgets.tsx:326
                    (anonymous)	@	visLoadWidgets.tsx:254
                    Promise.then		
                    r	@	visLoadWidgets.tsx:225
                    (anonymous)	@	visWidgetsCatalog.tsx:302
                    setTimeout		
                    (anonymous)	@	visWidgetsCatalog.tsx:301
                    collectRxInformation	@	visWidgetsCatalog.tsx:300
                    onWidgetsLoaded	@	Runtime.jsx:813
                    onLoaded	@	Runtime.jsx:1028
                    loadWidgets	@	visEngine.jsx:1529
                    await in loadWidgets		
                    (anonymous)	@	visEngine.jsx:208
                    Promise.then		
                    Mt	@	visEngine.jsx:196
                    visLoadWidgets.tsx:197 
                     Cannot load widget system.adapter.vis-2-widgets-rssfeed.0: Error: Cannot load vis2rssfeedWidgets from ./widgets/vis-2-widgets-rssfeed/customWidgets.js
                    (anonymous)	@	visLoadWidgets.tsx:197
                    Promise.catch		
                    (anonymous)	@	visLoadWidgets.tsx:196
                    n	@	visLoadWidgets.tsx:173
                    (anonymous)	@	visLoadWidgets.tsx:326
                    Promise.then		
                    (anonymous)	@	visLoadWidgets.tsx:326
                    (anonymous)	@	visLoadWidgets.tsx:254
                    Promise.then		
                    r	@	visLoadWidgets.tsx:225
                    (anonymous)	@	visWidgetsCatalog.tsx:302
                    setTimeout		
                    (anonymous)	@	visWidgetsCatalog.tsx:301
                    collectRxInformation	@	visWidgetsCatalog.tsx:300
                    onWidgetsLoaded	@	Runtime.jsx:813
                    onLoaded	@	Runtime.jsx:1028
                    loadWidgets	@	visEngine.jsx:1529
                    await in loadWidgets		
                    (anonymous)	@	visEngine.jsx:208
                    Promise.then		
                    Mt	@	visEngine.jsx:196
                    visLoadWidgets.tsx:198 
                     Cannot load widget system.adapter.vis-2-widgets-rssfeed.0: {}
                    (anonymous)	@	visLoadWidgets.tsx:198
                    Promise.catch		
                    (anonymous)	@	visLoadWidgets.tsx:196
                    n	@	visLoadWidgets.tsx:173
                    (anonymous)	@	visLoadWidgets.tsx:326
                    Promise.then		
                    (anonymous)	@	visLoadWidgets.tsx:326
                    (anonymous)	@	visLoadWidgets.tsx:254
                    Promise.then		
                    r	@	visLoadWidgets.tsx:225
                    (anonymous)	@	visWidgetsCatalog.tsx:302
                    setTimeout		
                    (anonymous)	@	visWidgetsCatalog.tsx:301
                    collectRxInformation	@	visWidgetsCatalog.tsx:300
                    onWidgetsLoaded	@	Runtime.jsx:813
                    onLoaded	@	Runtime.jsx:1028
                    loadWidgets	@	visEngine.jsx:1529
                    await in loadWidgets		
                    (anonymous)	@	visEngine.jsx:208
                    Promise.then		
                    Mt	@	visEngine.jsx:196
                    visLoadWidgets.tsx:197 
                     Cannot load widget system.adapter.vis-2-widgets-rssfeed.0: Error: Cannot load vis2rssfeedWidgets from ./widgets/vis-2-widgets-rssfeed/customWidgets.js
                    (anonymous)	@	visLoadWidgets.tsx:197
                    Promise.catch		
                    (anonymous)	@	visLoadWidgets.tsx:196
                    n	@	visLoadWidgets.tsx:173
                    (anonymous)	@	visLoadWidgets.tsx:326
                    Promise.then		
                    (anonymous)	@	visLoadWidgets.tsx:326
                    (anonymous)	@	visLoadWidgets.tsx:254
                    Promise.then		
                    r	@	visLoadWidgets.tsx:225
                    (anonymous)	@	visWidgetsCatalog.tsx:302
                    setTimeout		
                    (anonymous)	@	visWidgetsCatalog.tsx:301
                    collectRxInformation	@	visWidgetsCatalog.tsx:300
                    onWidgetsLoaded	@	Runtime.jsx:813
                    onLoaded	@	Runtime.jsx:1028
                    loadWidgets	@	visEngine.jsx:1529
                    await in loadWidgets		
                    (anonymous)	@	visEngine.jsx:208
                    Promise.then		
                    Mt	@	visEngine.jsx:196
                    visLoadWidgets.tsx:198 
                     Cannot load widget system.adapter.vis-2-widgets-rssfeed.0: {}
                    (anonymous)	@	visLoadWidgets.tsx:198
                    Promise.catch		
                    (anonymous)	@	visLoadWidgets.tsx:196
                    n	@	visLoadWidgets.tsx:173
                    (anonymous)	@	visLoadWidgets.tsx:326
                    Promise.then		
                    (anonymous)	@	visLoadWidgets.tsx:326
                    (anonymous)	@	visLoadWidgets.tsx:254
                    Promise.then		
                    r	@	visLoadWidgets.tsx:225
                    (anonymous)	@	visWidgetsCatalog.tsx:302
                    setTimeout		
                    (anonymous)	@	visWidgetsCatalog.tsx:301
                    collectRxInformation	@	visWidgetsCatalog.tsx:300
                    onWidgetsLoaded	@	Runtime.jsx:813
                    onLoaded	@	Runtime.jsx:1028
                    loadWidgets	@	visEngine.jsx:1529
                    await in loadWidgets		
                    (anonymous)	@	visEngine.jsx:208
                    Promise.then		
                    Mt	@	visEngine.jsx:196
                    visLoadWidgets.tsx:197 
                     Cannot load widget system.adapter.vis-2-widgets-rssfeed.0: Error: Cannot load vis2rssfeedWidgets from ./widgets/vis-2-widgets-rssfeed/customWidgets.js
                    (anonymous)	@	visLoadWidgets.tsx:197
                    Promise.catch		
                    (anonymous)	@	visLoadWidgets.tsx:196
                    n	@	visLoadWidgets.tsx:173
                    (anonymous)	@	visLoadWidgets.tsx:326
                    Promise.then		
                    (anonymous)	@	visLoadWidgets.tsx:326
                    (anonymous)	@	visLoadWidgets.tsx:254
                    Promise.then		
                    r	@	visLoadWidgets.tsx:225
                    (anonymous)	@	visWidgetsCatalog.tsx:302
                    setTimeout		
                    (anonymous)	@	visWidgetsCatalog.tsx:301
                    collectRxInformation	@	visWidgetsCatalog.tsx:300
                    onWidgetsLoaded	@	Runtime.jsx:813
                    onLoaded	@	Runtime.jsx:1028
                    loadWidgets	@	visEngine.jsx:1529
                    await in loadWidgets		
                    (anonymous)	@	visEngine.jsx:208
                    Promise.then		
                    Mt	@	visEngine.jsx:196
                    visLoadWidgets.tsx:198 
                     Cannot load widget system.adapter.vis-2-widgets-rssfeed.0: {}
                    (anonymous)	@	visLoadWidgets.tsx:198
                    Promise.catch		
                    (anonymous)	@	visLoadWidgets.tsx:196
                    n	@	visLoadWidgets.tsx:173
                    (anonymous)	@	visLoadWidgets.tsx:326
                    Promise.then		
                    (anonymous)	@	visLoadWidgets.tsx:326
                    (anonymous)	@	visLoadWidgets.tsx:254
                    Promise.then		
                    r	@	visLoadWidgets.tsx:225
                    (anonymous)	@	visWidgetsCatalog.tsx:302
                    setTimeout		
                    (anonymous)	@	visWidgetsCatalog.tsx:301
                    collectRxInformation	@	visWidgetsCatalog.tsx:300
                    onWidgetsLoaded	@	Runtime.jsx:813
                    onLoaded	@	Runtime.jsx:1028
                    loadWidgets	@	visEngine.jsx:1529
                    await in loadWidgets		
                    (anonymous)	@	visEngine.jsx:208
                    Promise.then		
                    Mt	@	visEngine.jsx:196
                    visLoadWidgets.tsx:197 
                     Cannot load widget system.adapter.vis-2-widgets-rssfeed.0: Error: Cannot load vis2rssfeedWidgets from ./widgets/vis-2-widgets-rssfeed/customWidgets.js
                    (anonymous)	@	visLoadWidgets.tsx:197
                    Promise.catch		
                    (anonymous)	@	visLoadWidgets.tsx:196
                    n	@	visLoadWidgets.tsx:173
                    (anonymous)	@	visLoadWidgets.tsx:326
                    Promise.then		
                    (anonymous)	@	visLoadWidgets.tsx:326
                    (anonymous)	@	visLoadWidgets.tsx:254
                    Promise.then		
                    r	@	visLoadWidgets.tsx:225
                    (anonymous)	@	visWidgetsCatalog.tsx:302
                    setTimeout		
                    (anonymous)	@	visWidgetsCatalog.tsx:301
                    collectRxInformation	@	visWidgetsCatalog.tsx:300
                    onWidgetsLoaded	@	Runtime.jsx:813
                    onLoaded	@	Runtime.jsx:1028
                    loadWidgets	@	visEngine.jsx:1529
                    await in loadWidgets		
                    (anonymous)	@	visEngine.jsx:208
                    Promise.then		
                    Mt	@	visEngine.jsx:196
                    visLoadWidgets.tsx:198 
                     Cannot load widget system.adapter.vis-2-widgets-rssfeed.0: {}
                    (anonymous)	@	visLoadWidgets.tsx:198
                    Promise.catch		
                    (anonymous)	@	visLoadWidgets.tsx:196
                    n	@	visLoadWidgets.tsx:173
                    (anonymous)	@	visLoadWidgets.tsx:326
                    Promise.then		
                    (anonymous)	@	visLoadWidgets.tsx:326
                    (anonymous)	@	visLoadWidgets.tsx:254
                    Promise.then		
                    r	@	visLoadWidgets.tsx:225
                    (anonymous)	@	visWidgetsCatalog.tsx:302
                    setTimeout		
                    (anonymous)	@	visWidgetsCatalog.tsx:301
                    collectRxInformation	@	visWidgetsCatalog.tsx:300
                    onWidgetsLoaded	@	Runtime.jsx:813
                    onLoaded	@	Runtime.jsx:1028
                    loadWidgets	@	visEngine.jsx:1529
                    await in loadWidgets		
                    (anonymous)	@	visEngine.jsx:208
                    Promise.then		
                    Mt	@	visEngine.jsx:196
                    
                    
                    OliverIO 1 Reply Last reply Reply Quote 0
                    • OliverIO
                      OliverIO @Oli last edited by OliverIO

                      @oli

                      http status code der cutomwidgets bitte, so wie im post geschrieben, oder zeigen mit screenshot.
                      wenn die datei nicht geladen wird sind das folgefehler.
                      dann ist ja nix da was ausgeführt werden könnte

                      Cannot load widget system.adapter.vis-2-widgets-rssfeed.0: Error: Cannot load vis2rssfeedWidgets from ./widgets/vis-2-widgets-rssfeed/customWidgets.js

                      O 1 Reply Last reply Reply Quote 0
                      • O
                        Oli @OliverIO last edited by

                        @oliverio
                        ich hoffe, dass ich jetzt das richtige erwischt habe

                        Request URL
                        http://192.168.2.222:8082/vis-2/widgets/vis-2-widgets-rssfeed/customWidgets.js
                        Request Method
                        GET
                        Status Code
                        200 OK
                        Remote Address
                        192.168.2.222:8082
                        Referrer Policy
                        strict-origin-when-cross-origin
                        cache-control
                        public, max-age=60
                        connection
                        keep-alive
                        content-encoding
                        gzip
                        content-type
                        application/javascript; charset=utf-8
                        date
                        Sat, 02 Aug 2025 10:36:33 GMT
                        etag
                        W/"f28-m6ffyixFsaIxy+qdViuvo0tnzh0"
                        keep-alive
                        timeout=5
                        transfer-encoding
                        chunked
                        vary
                        Accept-Encoding
                        accept
                        */*
                        accept-encoding
                        gzip, deflate
                        accept-language
                        de,de-DE;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
                        cache-control
                        no-cache
                        connection
                        keep-alive
                        host
                        192.168.2.222:8082
                        pragma
                        no-cache
                        referer
                        http://192.168.2.222:8082/vis-2/edit.html
                        user-agent
                        Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 Edg/138.0.0.0
                        
                        OliverIO 1 Reply Last reply Reply Quote 0
                        • OliverIO
                          OliverIO @Oli last edited by OliverIO

                          @oli

                          Ok, danke, seltsam. Die Datei wird geladen.
                          Das muss ich mal auf einem cleanen system testen
                          Passt halt nicht zur Fehlermeldung
                          Cannot load widget system.adapter.vis-2-widgets-rssfeed.0: Error: Cannot load vis2rssfeedWidgets from ./widgets/vis-2-widgets-rssfeed/customWidgets.js

                          Kannst du das nochmal checken?
                          Also http Status 200 und gleichzeitig kommt die Fehlermeldung?

                          O 1 Reply Last reply Reply Quote 0
                          • O
                            Oli @OliverIO last edited by

                            @oliverio
                            ja, ist so, http Status ist 200 und gleichzeitig kommt die Fehlermeldung

                            OliverIO 1 Reply Last reply Reply Quote 0
                            • OliverIO
                              OliverIO @Oli last edited by

                              @oli

                              so, habe mal in einem cleanen iobroker system unter windows vis-2 und den adapter vis-2-widgets-rssfeed installiert. Ergebnis: hat alles funktioniert. auf anhieb.
                              meine Vermutung wäre nun, wie schon mal, wo ich nach iob diag nachgefragt habe, das an deinem system irgend etwas nicht stimmt.
                              evtl musst du mal vis-2 deinstallieren und wieder installieren.
                              evtl auch den iobroker komplett neu aufzusetzen.

                              c8b49c49-80d4-415c-8517-b2950f355847-image.png

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              952
                              Online

                              32.0k
                              Users

                              80.5k
                              Topics

                              1.3m
                              Posts

                              adapter atom feed iobroker.rssfeed rdf rss vis widget
                              34
                              690
                              147644
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo