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. Error/Bug
  4. "iobroker update" -> 404 json nicht gefunden

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    927

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

"iobroker update" -> 404 json nicht gefunden

Scheduled Pinned Locked Moved Error/Bug
37 Posts 5 Posters 3.6k Views
  • 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.
  • HomoranH Do not disturb
    HomoranH Do not disturb
    Homoran
    Global Moderator Administrators
    wrote on last edited by
    #21

    @ruhr70:

    .. welches nimmt er denn… `
    Er nimmt das, welches du im ersten Reiter als aktiver Verwahrungsort eingestellt hast.

    @ruhr70:

    Zu den Updates vermute ich, dass da schon ein paar Tage nichts mehr über die URL kam. `
    Seltsam, ich bin auf dem gleichen Stand wie du, über die WebUI werden mir die Updates nicht angeboten.

    Gruß

    Rainer

    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    1 Reply Last reply
    0
    • ruhr70R Offline
      ruhr70R Offline
      ruhr70
      wrote on last edited by
      #22

      @Homoran:

      @ruhr70:

      .. welches nimmt er denn… Er nimmt das, welches du im ersten Reiter als aktiver Verwahrungsort eingestellt hast.

      Die erste Zeile ist "default" und die hat sich die ganze Zeit nicht geändert.

      conf/sources-dist.json

      Die zweite Zeile ist "online"

      Und die ging erst nicht (404).

      Also meinst Du mit erster Zeile/Reiter, die erste externe Adresse :?: :?

      Adapter: Fritzbox, Unify Circuit
      Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

      1 Reply Last reply
      0
      • HomoranH Do not disturb
        HomoranH Do not disturb
        Homoran
        Global Moderator Administrators
        wrote on last edited by
        #23

        @ruhr70:

        Also meinst Du mit erster Zeile/Reiter, die erste externe Adresse `
        Nope!

        http://www.iobroker.net/?page_id=6227&l … stellungen

        Gruß

        Rainer

        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

        1 Reply Last reply
        0
        • ruhr70R Offline
          ruhr70R Offline
          ruhr70
          wrote on last edited by
          #24

          Oh es gibt eine Doku ;-)

          Danke!

          mh… bei mir ist es trotzdem an zweiter Stelle und der erste Eintrag wird anscheinend ignoriert.

          [EDIT]

          Kannst Du die URLS in der Doku noch als Text hinzufügen.

          Dann muss man sie nicht abtippen ;-)

          Adapter: Fritzbox, Unify Circuit
          Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

          1 Reply Last reply
          0
          • HomoranH Do not disturb
            HomoranH Do not disturb
            Homoran
            Global Moderator Administrators
            wrote on last edited by
            #25

            Die Stelle in der repo liste ist egal.

            Entscheidend ist was du im pulldown bei Haupteinstellungen auswählst.

            @ruhr70:

            Kannst Du die URLS in der Doku noch als Text hinzufügen.

            Dann muss man sie nicht abtippen `
            Kann ich machen.

            Ich war davon ausgegangen, dass sie bei einem update des Admin-Adapters automatisch angepasst werden.

            Bluefox schreibt das oben ja auch.

            Gruß

            Rainer

            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            1 Reply Last reply
            0
            • HomoranH Do not disturb
              HomoranH Do not disturb
              Homoran
              Global Moderator Administrators
              wrote on last edited by
              #26

              Seltsam - ich habe von default = fast-online auf online umgestellt.

              • passierte nichts.

              Dann wieder zurück auf default

              • jetzt sind die updates auch da :?: :?:

              EDIT:

              …und direkt wieder weg

              Gruß

              Rainer

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              1 Reply Last reply
              0
              • HomoranH Do not disturb
                HomoranH Do not disturb
                Homoran
                Global Moderator Administrators
                wrote on last edited by
                #27

                …jetzt habe ich sie wiedergefunden :D

                als Repository musste ich "online" einstellen.

                Updates laufen.

                Gruß

                Rainer

                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                1 Reply Last reply
                0
                • ruhr70R Offline
                  ruhr70R Offline
                  ruhr70
                  wrote on last edited by
                  #28

                  @Homoran:

                  Dann wieder zurück auf default

                  • jetzt sind die updates auch da :?: :?: `

                  Hast Du denn seitdem wieder Updates angeboten bekommen?

                  Habe ein kleines Skript geschrieben, welches auf Updates prüft und ich bei Erfolg vervollständigen möchte und habe nun seit Deinem letzten Post keine Updates mehr angeboten bekommen. Sonst ist da mehr los… oder es ist einfach nur meine Ungeduld :lol:

                  Das ist meine aktuelle Einstellung, mit der letztens 10 Updates nachkamen:

                  327_verwahrungsorte.jpg

                  Adapter: Fritzbox, Unify Circuit
                  Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                  1 Reply Last reply
                  0
                  • HomoranH Do not disturb
                    HomoranH Do not disturb
                    Homoran
                    Global Moderator Administrators
                    wrote on last edited by
                    #29

                    @ruhr70:

                    Hast Du denn seitdem wieder Updates angeboten bekommen? `
                    Ich habe nochmal auf online umgestellt und da tauchten sie auf. Seitdem nichts mehr.

                    Aber wo du mich gerade erinnerst, ich muss auf fast-online zurückstellen.

                    Gruß

                    Rainer

                    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                    1 Reply Last reply
                    0
                    • ruhr70R Offline
                      ruhr70R Offline
                      ruhr70
                      wrote on last edited by
                      #30

                      @Homoran:

                      Ich habe nochmal auf online umgestellt und da tauchten sie auf. Seitdem nichts mehr.

                      Aber wo du mich gerade erinnerst, ich muss auf fast-online zurückstellen. `

                      wo wir an anderer Stelle beim "neu Anlernen" waren… :-(

                      Ich habe auch hier "vergessen", dass man den aktiven Verwahrungsort einen Reiter zuvor in den Haupteinstellungen auswählt.

                      Na ja... Du hast es ja in Deiner Anleitung nicht beschrieben :lol: http://www.iobroker.net/?page_id=6227&l … stellungen :lol:

                      327_haupteinstellungen.jpg

                      Und ich war die ganze Zeit am Rätseln, nach welcher Methode jetzt das Repo ausgewählt ausgewählt wird.

                      Und auch hier Schande über mein Haupt. Du hattest es weiter oben geschrieben.

                      So… von default auf online umgestellt und es gibt ein Update :-)

                      Das Skript arbeitet grundsätzlich auch.

                      Verbesserungsvorschlag für Admin:

                      Die Auswahl vom Reiter "Haupteinstellungen" zum Reiter "Verwahrungsorte" überhalb der Liste platzieren. Eventuell auch eine Online-Hilfe ;-)

                      Adapter: Fritzbox, Unify Circuit
                      Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                      1 Reply Last reply
                      0
                      • HomoranH Do not disturb
                        HomoranH Do not disturb
                        Homoran
                        Global Moderator Administrators
                        wrote on last edited by
                        #31

                        @ruhr70:

                        Na ja… Du hast es ja in Deiner Anleitung nicht beschrieben `
                        Muss ich nachsehen, hatte es dir aber beim letzen mal schon versucht zu erklären :evil:

                        Wollte dir gerade meinen Versuch verlinken und las dann, dass du es schon selbst gefunden hattest :D

                        Aber damit
                        @ruhr70:

                        Verbesserungsvorschlag für Admin:

                        Die Auswahl vom Reiter "Haupteinstellungen" zum Reiter "Verwahrungsorte" überhalb der Liste platzieren. `
                        Weiss ich überhaupt nicht was du willst :oops:

                        Gruß

                        Rainer

                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                        1 Reply Last reply
                        0
                        • ruhr70R Offline
                          ruhr70R Offline
                          ruhr70
                          wrote on last edited by
                          #32

                          @Homoran:

                          Aber damit
                          @ruhr70:

                          Verbesserungsvorschlag für Admin:

                          Die Auswahl vom Reiter "Haupteinstellungen" zum Reiter "Verwahrungsorte" überhalb der Liste platzieren. Weiss ich überhaupt nicht was du willst :oops:

                          Die in der Doku nicht beschriebene Einstellmöglichkeit "Aktiver Verwahrungsort", siehe Kasten in meinem Screenshot, wäre einen Reiter/Tab weiter besser aufgehoben.

                          D.h. vom letzten Punkt auf dem ersten Reiter entfernen und einen Reiter weiter ("Verwahrungsorte") oberhalb der Liste der Verwahrungsorte einbauen.

                          Adapter: Fritzbox, Unify Circuit
                          Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                          1 Reply Last reply
                          0
                          • ruhr70R Offline
                            ruhr70R Offline
                            ruhr70
                            wrote on last edited by
                            #33

                            327__nderung_verwahrungsorte.jpg

                            Adapter: Fritzbox, Unify Circuit
                            Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                            1 Reply Last reply
                            0
                            • HomoranH Do not disturb
                              HomoranH Do not disturb
                              Homoran
                              Global Moderator Administrators
                              wrote on last edited by
                              #34

                              Ich hatte den Datz jetzt bestimmt zehnmal gelesen und anders interpretiert. Folglich ist meine Antwort:

                              Nein!

                              Diese Einstellung gehört schon auf die erste Seite. Im pulldown stehen ja alle angelegten Repositories als "Übersicht " drin.

                              Nur hier wird eingestellt, im zweiten Reiter werden Pfade zu Repos angelegt.

                              Aber auch dort könnte man wenn du es immer noch für wichtig hältst ;) einen Hinweis "momentan ausgewähltes Repository" oben drübersetzen oder das ausgewählte in fettschrift…..

                              Aber muss es wirklich?

                              Und ich muss den Punkt tatsächlich in der Doku ergänzen :oops:

                              Gruß

                              Rainer

                              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              1 Reply Last reply
                              0
                              • ruhr70R Offline
                                ruhr70R Offline
                                ruhr70
                                wrote on last edited by
                                #35

                                @Homoran:

                                Ich hatte den Datz jetzt bestimmt zehnmal gelesen und anders interpretiert. Folglich ist meine Antwort:

                                Nein!

                                Diese Einstellung gehört schon auf die erste Seite. Im pulldown stehen ja alle angelegten Repositories als "Übersicht " drin.

                                Nur hier wird eingestellt, im zweiten Reiter werden Pfade zu Repos angelegt.

                                Aber auch dort könnte man wenn du es immer noch für wichtig hältst ;) einen Hinweis "momentan ausgewähltes Repository" oben drübersetzen oder das ausgewählte in fettschrift…..

                                Aber muss es wirklich? `

                                Nun ja… mind. ein User (ruhr70, der Depp) ist daran jetzt Monate gescheitert.

                                Die meisten werden da nicht dran gehen und es dann auch nicht so schnell finden.

                                Dein Nein! in Ehren. Warum sich zusammenhängende Einstellungen NICHT auf einer Seite befinden erschliesst sich mir trotz Deines Arguments 8-) "diese Einstellung gehört schon auf die erste Seite" nicht.

                                Noch eine Alternative: Oder die aktiv ausgewählte Repo in der Liste fett, bunter, heller oder blinkender darstellen… :mrgreen:

                                (Aber auch dann würde ich überlegen, warum das jetzt so ist).

                                Ist alles nicht lebenswichtig. Zu mindestens ich bin nun schon zigmal drüber gestolpert.

                                Adapter: Fritzbox, Unify Circuit
                                Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                                1 Reply Last reply
                                0
                                • HomoranH Do not disturb
                                  HomoranH Do not disturb
                                  Homoran
                                  Global Moderator Administrators
                                  wrote on last edited by
                                  #36

                                  Na dann will ich dem Deppen mal meine Sicht der Dinge erklären :D

                                  Die Einstellungen finden alle auf der ersten Seite statt (deswegen auch Haupteinstellungen).

                                  Die Liste der Repos wird bei Änderung von Pfaden automatisch bei einem Update des Admins geändert. Der user muss da "eigentlich" nicht ran.

                                  Gruß

                                  Rainer

                                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                  1 Reply Last reply
                                  0
                                  • ruhr70R Offline
                                    ruhr70R Offline
                                    ruhr70
                                    wrote on last edited by
                                    #37

                                    Das Skript zur Überwachung der Repo:

                                    ! ```
                                    `// fragt die angebotenen Updates von ioBroker ab
                                    // Abfrage dauert etwas (ca. 1 Minute)
                                    //
                                    // Repository muss in den ioBroker Einstellungen richtig gepflegt sein
                                    ! var logOn = false; // Logausgabe im Skript
                                    var forecreation = false; // true: Datenpunkte werden überschrieben (ween z.B. Bezeichnungen geändert wurden)
                                    ! var pfad = "Systeminfos.iobroker" + "."; // Pfad in dem die Datenpunkte angelegt werden
                                    ! // Datenpunktnamen:
                                    var idListOK = pfad + 'update_liste_verfuegbar';
                                    var idUpdateList = pfad + "update_liste";
                                    var idUpdateCount = pfad + "Adapter_updates";
                                    var idStatusTime = pfad + "status_datum";
                                    var idAvailableCount = pfad + "Adapter_verfuegbar";
                                    var idInstalledCount = pfad + "Adapter_installiert";
                                    var idAktivRepo = pfad + "Repo_aktiv";
                                    var idAktivRepoUrl = pfad + "Repo_url";
                                    ! // regelmässige Wiederholungen der Abfrage
                                    var cronStr = "57 */2 * * *";
                                    ! var abfrageUpdates = 'iobroker update';
                                    var abfrageRepo = 'iobroker repo';
                                    ! var test = 'Adapter "javascript" : 3.2.8 , installed 3.2.6 [Updateable]';
                                    ! // -----------------------------------------------------------------------------
                                    ! // Error: 404: Not Found
                                    // ohne Updates
                                    ! createState(idListOK, false, forecreation, {
                                    name: 'iobroker update Liste konnte gelesen werden',
                                    desc: 'iobroker update Liste konnte gelesen werden',
                                    type: 'boolean',
                                    unit: '',
                                    role: 'value'
                                    });
                                    ! createState(idUpdateList, "initalisiert", forecreation, {
                                    name: 'Liste der verfügbaren Updates',
                                    desc: 'Liste der verfügbaren Updates',
                                    type: 'string',
                                    unit: '',
                                    role: 'value'
                                    });
                                    ! createState(idUpdateCount, 0, forecreation, {
                                    name: 'Anzahl verfügbarer Updates',
                                    desc: 'Anzahl verfügbarer Updates der installierten Adapter',
                                    type: 'number',
                                    unit: '',
                                    role: 'value'
                                    });
                                    ! createState(idAvailableCount, 0, forecreation, {
                                    name: 'Anzahl verfügbarer Adapter',
                                    desc: 'Anzahl verfügbarer Adapter',
                                    type: 'number',
                                    unit: '',
                                    role: 'value'
                                    });
                                    ! createState(idInstalledCount, 0, forecreation, {
                                    name: 'Anzahl installierter Adapter',
                                    desc: 'Anzahl installierter Adapter',
                                    type: 'number',
                                    unit: '',
                                    role: 'value'
                                    });
                                    ! createState(idStatusTime, now(), forecreation, {
                                    name: 'Zeitpunkt der letzten Statusabfrage',
                                    desc: 'Zeitpunkt der letzten Statusabfrage',
                                    type: 'string',
                                    unit: '',
                                    role: 'value'
                                    });
                                    ! createState(idAktivRepo, "initalisiert", forecreation, {
                                    name: 'Als aktiv eingestelltes Repo',
                                    desc: 'ZAls aktiv eingestelltes Repo',
                                    type: 'string',
                                    unit: '',
                                    role: 'value'
                                    });
                                    ! createState(idAktivRepoUrl, "initalisiert", forecreation, {
                                    name: 'url des aktiven Repo',
                                    desc: 'url des aktiven Repo',
                                    type: 'string',
                                    unit: '',
                                    role: 'value'
                                    });
                                    ! // -----------------------------------------------------------------------------
                                    ! function now() {
                                    return formatDate(new Date(), "hh:mm:ss, YYYY-MM-DD");
                                    }
                                    ! function writeJson(json) {
                                    return JSON.stringify(json); // JSON in String umwandeln, damit das JSON in einem Datenpunkt geschrieben werden kann
                                    }
                                    ! function abfrageConsoleUpdates() {
                                    exec(abfrageUpdates, function(err, stdout, stderr) {
                                    if(logOn) log("Abfrage: "+abfrageUpdates);
                                    if (err) {
                                    log("Fehler ioBroker Statusabfrage: " + err,"error");
                                    return;
                                    }
                                    var out = stdout.toString();
                                    //log(out);
                                    if(out.match("Error: 404: Not Found") || out.match("Cannot download json")) {
                                    setState(idUpdateList,"ioBroker Repository nicht gefunden");
                                    log("ioBroker Repository nicht gefunden","warn");
                                    setState(idListOK,false);
                                    return;
                                    }
                                    var arrInstalled = out.match(/.+installed.+\n/g);
                                    var arrUpdates = out.match(/.+Updateable.+\n/g);
                                    var arrAvailable = out.match(/Adapter /g);

                                        var updates         = 0;
                                        var installiert     = -1;
                                        var verfuegbar      = -1;
                                        var updateJson      = [];
                                    
                                        if(typeof arrInstalled !== 'undefined' && arrInstalled !== null && arrInstalled.length > 0) installiert = arrInstalled.length;
                                        if(typeof arrUpdates !== 'undefined' && arrUpdates !== null && arrUpdates.length > 0)  updates = arrUpdates.length;
                                        if(typeof arrAvailable !== 'undefined' && arrAvailable !== null && arrAvailable.length > 0) verfuegbar = arrAvailable.length;
                                    
                                        if(updates > 0) {
                                            var i;
                                            for ( i=0; i<updates; i++/)/{/var/arrupdate="/.+&quot;(.+)&quot;.+(\d+.\d+.\d+).+(\d+.\d+.\d+)/g.exec(arrUpdates[i]);" updatejson.push({/adapter:/arrupdate[1],/update:/arrupdate[2],/version:/arrupdate[3]/});/}/setstate(idupdatecount,updates);/setstate(idavailablecount,verfuegbar);/setstate(idinstalledcount,installiert);/setstate(idupdatelist,writejson(updatejson));/setstate(idlistok,true);/setstate(idstatustime,now());/if(logon)/log("anzahl/adapter/verfügbar:/"/+/verfuegbar);/installiert:/installiert);/mit/updates:/updates);/function/abfrageconsolerepo()/exec(abfragerepo,/function(err,/stdout,/stderr)/log("abfrage:/"+abfragerepo);/if/(err)/log("fehler/iobroker/statusabfrage:/err,"error");/return;/out="stdout.toString();" log(stdout);/aktivrepo="stdout.match(/Active" repo:/(.+)/)[1];/log("aktive/aktivrepo);/regex="new" regexp("^"+aktivrepo+":/(.+)",/"gm");/aktivrepourl="stdout.match(/^online:" gm).tostring().replace(aktivrepo+":/","");/repo/url:/aktivrepourl);/setstate(idaktivrepo,aktivrepo);/setstate(idaktivrepourl,aktivrepourl);/abfragen()/abfrageconsoleupdates();/abfrageconsolerepo();/regelmässige/wiederholungen/-----------------------------------------------------------------------------/schedule(cronstr,/abfragen);/main/main()/abfragen();/start/skript:/settimeout(main,/500);/<e=""></updates;>`
                                    

                                    ! Und wie es bei mir visualisiert ist:
                                    ! 327_repo_monitoring.jpg [/i]

                                    Adapter: Fritzbox, Unify Circuit
                                    Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                                    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

                                    406

                                    Online

                                    32.6k

                                    Users

                                    82.2k

                                    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