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. [Projekt] Material Design CSS für ioBroker.vis

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

[Projekt] Material Design CSS für ioBroker.vis

Scheduled Pinned Locked Moved Visualisierung
650 Posts 111 Posters 231.0k Views 68 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.
  • UhulaU Offline
    UhulaU Offline
    Uhula
    wrote on last edited by
    #8

    OK. Ich werde den Style dann weiter entwickeln. Habe gerade auch mit CSS flex-boxen getestet um ein responsive Design zu bekommen. D.h. es wird dann (fast) egal sein, mit welchem Gerät man sich seinen Views ansieht, die Widgets werden automatisch je nach verfügbaren Platz angeordnet. Man muss dann z.B. nicht mehr 4 Views für 4 Auflösungen/Geräte entwerfen.

    Demobilder folgen demnächst.

    Uhula - Leise und Weise
    Ex: ioBroker on Gigabyte NUC Proxmox

    1 Reply Last reply
    1
    • P Offline
      P Offline
      pix
      wrote on last edited by
      #9

      @Uhula:

      OK. Ich werde den Style dann weiter entwickeln. Habe gerade auch mit CSS flex-boxen getestet um ein responsive Design zu bekommen. D.h. es wird dann (fast) egal sein, mit welchem Gerät man sich seinen Views ansieht, die Widgets werden automatisch je nach verfügbaren Platz angeordnet. Man muss dann z.B. nicht mehr 4 Views für 4 Auflösungen/Geräte entwerfen.

      Demobilder folgen demnächst. `
      Da bin ich sehr gespannt. So was fehlt mir noch…

      ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

      1 Reply Last reply
      0
      • UhulaU Offline
        UhulaU Offline
        Uhula
        wrote on last edited by
        #10

        Hat leider etwas länger gedauert, dafür ist der Style nun aber auch responsible und bietet Left/Right-Navigation mit Side-Panels.

        Einen Demo-Film gibt es hier: https://github.com/Uhula/ioBroker-Material-Design-Style/blob/master/docs/MaterialDesign4ioBroker.mp4 (dort downloaden)

        Ein Demo-Projekt für den Import in ioBroker.vis hier: https://github.com/Uhula/ioBroker-Material-Design-Style/blob/master/ioBroker%20projects/MD_Demo.zip

        Ein Simple-Projekt als Basis für eigene Projekte hier: https://github.com/Uhula/ioBroker-Material-Design-Style/blob/master/ioBroker%20projects/MD_Simple.zip

        Das Handbuch hier: https://github.com/Uhula/ioBroker-Material-Design-Style/blob/master/docs/anleitung.pdf

        Viel Spaß!

        Uhula - Leise und Weise
        Ex: ioBroker on Gigabyte NUC Proxmox

        1 Reply Last reply
        0
        • rantanplanR Offline
          rantanplanR Offline
          rantanplan
          wrote on last edited by
          #11

          Super Arbeit!!!!

          Ein rundum Komplettpacket. Hut ab!

          Grüße

          Rantanplan

          CCU3 / MS Server 2019(VM) / Scripten mit Blockly

          1 Reply Last reply
          0
          • MeistertrM Offline
            MeistertrM Offline
            Meistertr
            Developer
            wrote on last edited by
            #12

            Echt hamma

            Gesendet von meinem Handy

            1 Reply Last reply
            0
            • blauholstenB Offline
              blauholstenB Offline
              blauholsten
              Developer
              wrote on last edited by
              #13

              @Uhula:

              Hat leider etwas länger gedauert, dafür ist der Style nun aber auch responsible und bietet Left/Right-Navigation mit Side-Panels.

              Einen Demo-Film gibt es hier: https://github.com/Uhula/ioBroker-Material-Design-Style/blob/master/docs/MaterialDesign4ioBroker.mp4 (dort downloaden)

              Ein Demo-Projekt für den Import in ioBroker.vis hier: https://github.com/Uhula/ioBroker-Material-Design-Style/blob/master/ioBroker%20projects/MD_Demo.zip

              Ein Simple-Projekt als Basis für eigene Projekte hier: https://github.com/Uhula/ioBroker-Material-Design-Style/blob/master/ioBroker%20projects/MD_Simple.zip

              Das Handbuch hier: https://github.com/Uhula/ioBroker-Material-Design-Style/blob/master/docs/anleitung.pdf

              Viel Spaß! `

              Das ist ganz ganz großes Kino!!!!

              Entwickler vom: - Viessman Adapter
              - Alarm Adapter

              1 Reply Last reply
              0
              • coyoteC Offline
                coyoteC Offline
                coyote
                Most Active
                wrote on last edited by
                #14

                Sieht sehr gut aus. Top Arbeit

                Gesendet von meinem VTR-L09 mit Tapatalk

                1 Reply Last reply
                0
                • MeistertrM Offline
                  MeistertrM Offline
                  Meistertr
                  Developer
                  wrote on last edited by
                  #15

                  Habs gerade mal schnell getestet und mein Mund stand die ganze Zeit offen und ich bin aus dem staunen nicht heraus gekommen. echt genial was alles möglich ist..

                  Gesendet von meinem Handy

                  1 Reply Last reply
                  0
                  • BBTownB Offline
                    BBTownB Offline
                    BBTown
                    wrote on last edited by
                    #16

                    @Meistertr:

                    Habs gerade mal schnell getestet und mein Mund stand die ganze Zeit offen ` das trifft den Nagel auf den Kopf.

                    Auch von mir ein heftiges "WOW !!" :o

                    und dazu ein großes Dankeschön fürs Teilen, Uhula !!

                    ioBroker auf NUC (VM debian v13 (Trixie ), node v22.21.0 npm v10.9.4, js-controller v7.1.0 jsonl/jsonl / HomeMatic CCU-2 (Wired und Funk) / Philips HUE / echo.DOT / Broadlink RM pro / SONOS

                    1 Reply Last reply
                    0
                    • htreckslerH Offline
                      htreckslerH Offline
                      htrecksler
                      Forum Testing
                      wrote on last edited by
                      #17

                      @BBTown:

                      @Meistertr:

                      Habs gerade mal schnell getestet und mein Mund stand die ganze Zeit offen ` das trifft den Nagel auf den Kopf.

                      Auch von mir ein heftiges "WOW !!" :o

                      und dazu ein großes Dankeschön fürs Teilen, Uhula !! `

                      Perfekt … ganz viele Daumen hoch

                      Gruss Hermann

                      ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

                      1 Reply Last reply
                      0
                      • ? Offline
                        ? Offline
                        A Former User
                        wrote on last edited by
                        #18

                        habe innerhalb kürzester Zeit ein komplett neues Design hinbekommen.

                        bin auch begeistert… total begeistert.

                        in der Android App iobroker.vis liegt nun leider der Button zum einblenden der left navigation genau auf der gleichen Stelle wie auch der Button (drei kleine Punkte) zum aufrufen der Einstellungen der Android App.

                        Kann man den Button der Android App vielleicht an eine andere Stelle verschieben?

                        Hat jemand ähnliche Schwierigkeiten

                        1 Reply Last reply
                        0
                        • UhulaU Offline
                          UhulaU Offline
                          Uhula
                          wrote on last edited by
                          #19

                          Das mit dem Button in der ioBroker AndroidApp ist mir auch aufgefallen. Da ich aber den Fully Kiosk Browser nutze, störte es mich nicht. Zur Lösung könntest du den Menü-Button im ioBroker.vis Material Design, der sich im abar-View an der Position Left=0 befindet, einfach auf Left=48px verschieben.

                          Die ioBroker App braucht nun mal eine Möglichkeit das Setup zu öffnen. Der Fully Kiosk Browser nutzt dazu eine Swipe-Geste vom linken Rand, eine andere Browser App einen Doppel-Tap. Wäre evtl. auch für die ioBroker App eine optionale Möglichkeit.

                          Uhula - Leise und Weise
                          Ex: ioBroker on Gigabyte NUC Proxmox

                          1 Reply Last reply
                          0
                          • kmxakK Offline
                            kmxakK Offline
                            kmxak
                            Most Active
                            wrote on last edited by
                            #20

                            Moin, echt klasse was du da gezaubert hast.

                            Ich habe aber aktuell noch eine Frage.

                            Habe dieses Widget das soll je nachdem welchen Wert ich bei den Signalbild eingestellt habe eine andere Textfarbe haben.

                            [{"tpl":"tplJquiIconNav","data":{"g_fixed":true,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":true,"g_css_border":false,"g_gestures":false,"g_signals":true,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":">=","signals-val-0":"1","signals-icon-0":"","signals-icon-size-0":0,"signals-blink-0":true,"signals-horz-0":"8","signals-vert-0":"-65","signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":"0","signals-icon-1":"","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":"8","signals-vert-1":"-65","signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"class":"mdui-title mdui-flatbutton","text":"","nav_view":"cardadmin-alarm","signals-oid-0":"javascript.0.zählenLowbat.anzahlLOWBAT","signals-text-0":"Smart Home","signals-text-style-0":"mdui-red","signals-text-class-0":"mdui-red","signals-oid-1":"javascript.0.zählenLowbat.anzahlLOWBAT","signals-text-1":"Smart Home"},"style":{"left":"64px","top":"16px","height":"15px","width":"100px","z-index":"0","text-align":"left","padding":"6"},"widgetSet":"jqui"}]
                            

                            Ich habe unter Signalbilder: CSS Textstyl [1]:

                            Klassen [1]:

                            Dort nimmt er aber nicht das mdui-red sondern nur oben unter css Klasse.

                            Hast du einen Tipp für mich?

                            Gruß Alex

                            1 Reply Last reply
                            0
                            • E Offline
                              E Offline
                              eastcoast
                              wrote on last edited by
                              #21

                              Sowas habe ich mir schon lange gewünscht und mir zwischenzeitlich mit Teilen aus dem MUI CSS framework beholfen.

                              Es gab auch schon mal einen Thread bzgl. Material Design dazu http://forum.iobroker.net/viewtopic.php?f=30&t=3812

                              Habe mir bisher nur kurz das Demo Video angesehen…

                              ...sind eigentlich die verwendeten Farben auch aus der offiziellen Guidline (https://material.io/guidelines/style/color.html#)?

                              1 Reply Last reply
                              0
                              • UhulaU Offline
                                UhulaU Offline
                                Uhula
                                wrote on last edited by
                                #22

                                @kmxak:

                                Ja. Dort wird eine Farbangabe erwartet, keine CSS-Klasse. Du musst deshalb dort die Material Design Farben selbst eintragen, es sind immer die 500er Colors von folgender Seite: https://material.io/guidelines/style/color.html#color-color-palette.

                                Für "mdui-red" also z.B. #F44336

                                Viel Erfolg!

                                @eastcoast:

                                Ja, es sind die https://material.io/guidelines/style/color.html#color-color-palette (primär die 500er, 800er und 900er, da dunkler Theme; weiß nicht, ob ein heller Theme überhaupt Sinn macht, da man Nachts ja kein Taschenlampentablett haben möchte :-) )

                                Uhula - Leise und Weise
                                Ex: ioBroker on Gigabyte NUC Proxmox

                                1 Reply Last reply
                                0
                                • kmxakK Offline
                                  kmxakK Offline
                                  kmxak
                                  Most Active
                                  wrote on last edited by
                                  #23

                                  @Uhula:

                                  @kmxak:

                                  Ja. Dort wird eine Farbangabe erwartet, keine CSS-Klasse. Du musst deshalb dort die Material Design Farben selbst eintragen, es sind immer die 500er Colors von folgender Seite: https://material.io/guidelines/style/color.html#color-color-palette.

                                  Für "mdui-red" also z.B. #F44336

                                  Viel Erfolg! `

                                  Danke dir.. mal wieder extrem zu kompliziert gedacht.

                                  Es ist anfangs etwas verwirrend wo was hinkommt aber langsam wird es. 8-)

                                  Gruß Alex

                                  1 Reply Last reply
                                  0
                                  • UhulaU Offline
                                    UhulaU Offline
                                    Uhula
                                    wrote on last edited by
                                    #24

                                    Wenn besondere Aufmerksamkeit gefordert wird, kann das farbige Blinken von Widgets hilfreich sein. Der mdui-CSS Style kann recht leicht um so etwas erweitert werden. Es stehen dann 4 verschiedene Farben zum Flashen, Blinken und Pulsieren für (fast) jedes Widget zur Verfügung. Im Beispiel basic-HTML und jqui-Widgets.
                                    3336_mdui-flash.gif
                                    Erreicht wird dieses einfach durch das Setzen weiterer CSS-Klassen wie z.B. mdui-red-flash. Eine Integration in den mdui-CSS Style und eine nähere Beschreibung in der PDF-Anleitung gibt es demnächst. Für eigene Versuche hier der CSS-Code:

                                    ! ````
                                    /* -----
                                    flash
                                    ----- */
                                    .mdui-red-flash {
                                    outline: 2px solid transparent;
                                    animation: mdui-red-flash-ani 1s linear infinite;
                                    }
                                    @keyframes mdui-red-flash-ani {
                                    0% { outline-color: rgba(254,67,54,1);
                                    box-shadow: 0 0 32px 4px rgba(254,67,54,1)}

                                    20%,100% { outline-color: transparent; }
                                    }
                                    .mdui-yellow-flash {
                                    outline: 2px solid transparent;
                                    animation: mdui-yellow-flash-ani 1s linear infinite;
                                    }
                                    @keyframes mdui-yellow-flash-ani {
                                    0% { outline-color: rgba(255,235,59,1);
                                    box-shadow: 0 0 32px 4px rgba(255,235,59,1)}
                                    20%,100% { outline-color: transparent; }
                                    }
                                    .mdui-blue-flash {
                                    outline: 2px solid transparent;
                                    animation: mdui-blue-flash-ani 1s linear infinite;
                                    }
                                    @keyframes mdui-blue-flash-ani {
                                    0% { outline-color: rgba(43,150,243,1);
                                    box-shadow: 0 0 32px 4px rgba(43,150,243,1)}
                                    20%,100% { outline-color: transparent; }
                                    }
                                    .mdui-green-flash {
                                    outline: 2px solid transparent;
                                    animation: mdui-green-flash-ani 1s linear infinite;
                                    }
                                    @keyframes mdui-green-flash-ani {
                                    0% { outline-color: rgba(76,175,80,1);
                                    box-shadow: 0 0 32px 4px rgba(76,175,80,1)}
                                    20%,100% { outline-color: transparent; }
                                    }

                                    ! /* -----
                                    blink
                                    ----- /
                                    ! .mdui-red-blink {
                                    outline: 2px solid transparent;
                                    animation: mdui-red-blink-ani 1s linear infinite;
                                    }
                                    @keyframes mdui-red-blink-ani {
                                    50% { outline-color: rgba(254,67,54,1);
                                    box-shadow: 0 0 32px 4px rgba(254,67,54,1); }
                                    25%,75% { outline-color: transparent; }
                                    }
                                    .mdui-yellow-blink {
                                    outline: 2px solid transparent;
                                    animation: mdui-yellow-blink-ani 1s linear infinite;
                                    }
                                    @keyframes mdui-yellow-blink-ani {
                                    50% { outline-color: rgba(255,235,59,1);
                                    box-shadow: 0 0 32px 4px rgba(255,235,59,1); }
                                    25%,75% { outline-color: transparent; }
                                    }
                                    .mdui-blue-blink {
                                    outline: 2px solid transparent;
                                    animation: mdui-blue-blink-ani 1s linear infinite;
                                    }
                                    @keyframes mdui-blue-blink-ani {
                                    50% { outline-color: rgba(43,150,243,1);
                                    box-shadow: 0 0 32px 4px rgba(43,150,243,1); }
                                    25%,75% { outline-color: transparent; }
                                    }
                                    .mdui-green-blink {
                                    outline: 2px solid transparent;
                                    animation: mdui-green-blink-ani 1s linear infinite;
                                    }
                                    @keyframes mdui-green-blink-ani {
                                    50% { outline-color: rgba(76,175,80,1);
                                    box-shadow: 0 0 32px 4px rgba(76,175,80,1); }
                                    25%,75% { outline-color: transparent; }
                                    }
                                    ! /
                                    -----
                                    pulse
                                    ----- */
                                    .mdui-red-pulse {
                                    outline: 2px solid rgba(254,67,54,0.5);
                                    animation: mdui-red-pulse-ani 3s linear infinite;
                                    }
                                    @keyframes mdui-red-pulse-ani {
                                    50% { outline-color: rgba(254,67,54,1);
                                    box-shadow: 0 0 32px 4px rgba(254,67,54,1); }
                                    }
                                    .mdui-yellow-pulse {
                                    outline: 2px solid rgba(255,235,59,0.5);
                                    animation: mdui-yellow-pulse-ani 3s linear infinite;
                                    }
                                    @keyframes mdui-yellow-pulse-ani {
                                    50% { outline-color: rgba(255,235,59,1);
                                    box-shadow: 0 0 32px 4px rgba(255,235,59,1); }
                                    }
                                    .mdui-blue-pulse {
                                    outline: 2px solid rgba(43,150,243,0.5);
                                    animation: mdui-blue-pulse-ani 3s linear infinite;
                                    }
                                    @keyframes mdui-blue-pulse-ani {
                                    50% { outline-color: rgba(43,150,243,1);
                                    box-shadow: 0 0 32px 4px rgba(43,150,243,1); }
                                    }
                                    .mdui-green-pulse {
                                    outline: 2px solid rgba(76,175,80,0.5);
                                    animation: mdui-green-pulse-ani 3s linear infinite;
                                    }
                                    @keyframes mdui-green-pulse-ani {
                                    50% { outline-color: rgba(76,175,80,1);
                                    box-shadow: 0 0 32px 4px rgba(76,175,80,1); }
                                    }
                                    ! ````

                                    Uhula - Leise und Weise
                                    Ex: ioBroker on Gigabyte NUC Proxmox

                                    1 Reply Last reply
                                    0
                                    • kmxakK Offline
                                      kmxakK Offline
                                      kmxak
                                      Most Active
                                      wrote on last edited by
                                      #25

                                      und schon sprudelt mir die nächste frage raus.

                                      Ich würde gerne bei mir im Content Bereich sache immer mittig haben.

                                      Dazu habe ich in den contpage das widget auf calc(50% -hälfte des widgetspx) gesetzt.

                                      Beim Simplen html widget scheint das wunderbar zu gehen.

                                      Bei einem anderen View mit mehreren Widgets geht es wieder nicht.

                                      Habe diverse css beispiele aus dem netzt durch probiert aber fündig bin ich nicht geworden.

                                      Hoffe das ist soweit verständlich. :)

                                      Dann noch eine Frage. Ist es möglich bei zu großen Widgets diese per css o.ä zu verkleinern? Mein Webcam Bild passt unter Windows rein aber auf dem Tablet nicht. Gibt es da eine möglichkeit das automatisch auf die device Größe anzupassen?

                                      Falls sich das ganze zu weit vom Material Design CSS für ioBroker.vis Beitrag entfernt gebt mir bitte ein Feedback dann starte ich einen neuen eigenen Beitrag. ;)

                                      Gruß Alex

                                      1 Reply Last reply
                                      0
                                      • UhulaU Offline
                                        UhulaU Offline
                                        Uhula
                                        wrote on last edited by
                                        #26

                                        Das sind keine speziellen Material Design Fragen, sondern eher allgemeine CSS Fragen, trotzdem der Versuch einer Antwort.

                                        Zentrieren:

                                        Geht, ist aber leicht tricky und funktioniert nur in Browsern, die das flex-Modell unterstützen (ich meine, die ioBroker-App hat damit Probleme). Und auch der ioBroker.vis Editor kommt dann teilweise durcheinander und du musst diesen mit [F5] immer wieder aktualiseren.

                                        Dazu musst du folgendes machen:

                                        (a) in der CSS zwei neue CSS-Klassen anlegen, eine für den flex-Container und eine für die flex-Items (wir müssen einige feste ioBroker-Styleangaben überschreiben).

                                        .mdui-flex {
                                          display: flex !important;
                                          flex-wrap: wrap;
                                          align-items: center;
                                          justify-content: center;
                                        }
                                        .mdui-flex-item{
                                          position:relative !important;
                                          left:0 !important;
                                          top:0 !important;
                                          margin:4px !important;
                                        }
                                        
                                        

                                        (b) dem contXXX View dann die CSS-Klasse mdui-flex zuordnen; damit wird es zum flex-Container

                                        © den dort drin liegenden basic-Containern (mit den cardXXX-Views) nicht mehr mdui-float zuweisen, sondern stattdessen mdui-flex-item

                                        Scaling

                                        Geht auch. Da dabei aber alles skaliert wird, ist eine (Touch-) Bedienung dann schwerer möglich.

                                        (a) Dazu eine neue CSS-Klasse anlegen, z.B. für eine 70% 70% Skalierung :

                                        .mdui-scale-70 {
                                            transform: scale(0.7, 0.7);
                                        }
                                        
                                        

                                        (b) Dem Widget (oder dem basic-Container) dann diese CSS Klasse zuweisen

                                        Sieht dann so aus (die 2.Card wurde skaliert):
                                        3336_md_demo_flex_scale.png

                                        Alternativ kann man basic-images z.B. auch mit width/height:100% angeben, dann sollten sie automatisch skalieren.

                                        Uhula - Leise und Weise
                                        Ex: ioBroker on Gigabyte NUC Proxmox

                                        1 Reply Last reply
                                        0
                                        • kmxakK Offline
                                          kmxakK Offline
                                          kmxak
                                          Most Active
                                          wrote on last edited by
                                          #27

                                          Hi Danke. Das mit dem Flex hatte ich schon mal drin war aber erfolglos. Schade. Mit dem Scale schau ich mir nochmal an.

                                          Gesendet von meinem SM-G930F mit Tapatalk

                                          Gruß Alex

                                          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

                                          349

                                          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