Es hat sich so entwickelt, dass die russische Q&A-Ressource im IT-Bereich in den GUS-Staaten recht populär ist - . Doch ihm fehlte etwas, als ich begann, mich intensiver damit zu beschäftigen. Das führte zu einer Verbesserung in Form einer Browser-Erweiterung. Hier ist sie.
Hauptmerkmale:
- Name: Toaster Comfort.
- Nutzerstatistik: Prozentsatz der Fragen mit Lösung; Karma von Habr; Zusammenfassung im Profil - all dies befindet sich in der Liste der Toaster-Fragen.
- Benachrichtigungen: Echtzeit-Benachrichtigungen auf der Website, auf dem Symbol, plus Push-Benachrichtigungen, viele Einstellungen, die Website muss geöffnet sein ().
- Filter: Bedingungen basierend auf Formeln: Fragen können ausgeblendet, farbig hervorgehoben und Benachrichtigungen angezeigt werden - all dies kann flexibel in Form logischer Bedingungen eingestellt werden ().
- Benutzeroberfläche: Kleine Verbesserungen, zum Beispiel die Anzeige exakter Daten oder den Status des Abonnements in der Fragenliste.
- Habr-Oberfläche: Kleine Verbesserungen (optional), zum Beispiel Linien für Einzüge in den Kommentaren.
- Open Source: Kann nach Belieben angepasst werden ().
- Kostenlos: MIT Lizenz.
- Plattform: , .
- Speicherverbrauch: 30-50MB, abhängig von den Optionen und der Nutzungshäufigkeit des Toasters.
- Größe: 93KB für v0.8.1 (entpackter, nicht minimierter Code).
- Framework: nicht vorhanden, reines JS (Minimalismus).
- Codequalität: durchschnittlich, Stilmischungen, große Funktionen, schmutzige Tricks, wenig Kommentare.
- Berechtigungen:
toster.ru, habr.com, notifications, storage, unlimitedStorage
Ursprünglich wurde die Erweiterung für mich selbst mit dem einzigen Ziel entwickelt: den Prozentsatz der Fragen des Nutzers anzuzeigen, bei denen er die Schaltfläche „Als gelöst markieren“ gedrückt hat. Dann kamen nach und nach andere Wünsche hinzu, bis das Werkzeug zu einem Monster von hundert Kilobyte gewachsen ist. Dennoch wurde das Prinzip „nichts Überflüssiges verwenden“ bis zum Ende eingehalten.
Eine der Hauptfunktionen besteht jetzt darin, Formeln in den Einstellungen zu verwenden. Mit ihnen kann man fast alles machen, was man sich für das Management seiner Aufmerksamkeit wünscht. Es ist wichtig, zu wissen, was man will. Verbergen, Farben ändern und Benachrichtigungen - das sind die drei Hauptaspekte der Aufmerksamkeit bei der Arbeit mit der Website. Die Filterung von allem und jedem ist der Schlüssel zur Benutzerfreundlichkeit.
Ein Beispiel für eine flexible Regel, die Benachrichtigungen zu einem bestimmten Thema ermöglicht:
!tag("Advertentie blokkeren") && !contains(t,"advertent") && contains(t,"blokkeren") && !tag("HTACCESS") || containsWord(t,"rkn") || contains(t,"roskomnadzor") || contains(t,"roskompozor") || contains(t,"staat") || contains(t,"verboden") || contains(t,"verboden") || contains(t,"piraterij") || containsWord(t,"omzeiling") || containsWord(t,"rostelecom") || containsWord(t,"yarovaya") || containsWord(t,"rf") && tag("Computernetwerken") = notifyIk zeg het meteen, de eval() functie mocht niet worden gebruikt. Dus ik kon niet al te veel uitpakken. Daarom moest ik mijn eigen tijdelijke oplossing schrijven van 5 kB code, gebruikmakend van . Dit is, om het zo te zeggen, een sterk ingekorte JS, zowel qua functies als qua syntaxis.
Onlangs was er een post over . Als je het vergelijkt, dan heeft TE een vriendelijker interface en enkele functies die niet beschikbaar zijn in Toster Comfort. Echter, mijn extensie legt de nadruk op het verbruik van middelen. Maar niemand weerhoudt je ervan om beide extensies te gebruiken, ze zouden geen conflicten moeten veroorzaken.
Eerlijk gezegd moet TC vanaf nul herschreven worden, omdat het werk minstens verdubbeld kan worden, en het werken met caches kan met een factor tien worden versneld door localStorage en JSON.stringify() af te schaffen en enkele architecturale beslissingen te wijzigen. Maar die opgave is al niet meer voor mij. En ik ben een voorstander van het principe "werkt — raak het niet aan". Terwijl ik op vakantie ben, accepteer ik actief issues en PR, maar niet ten koste van minimalisme. Bedankt voor uw aandacht!
Bron: habr.com
