Il se trouve que dans la CEI, il existe une ressource Q&A en russe sur les thèmes informatiques qui est assez populaire — . Cependant, il lui manquait quelque chose lorsque j'ai commencé à m'y plonger sérieusement. Cela a donné lieu à une amélioration sous la forme d'une extension de navigateur. Voici la présentation.
Caractéristiques principales :
- Nom : Toaster Comfort.
- Statistiques des utilisateurs : pourcentage de questions avec solutions ; karma de Habr ; résumé du profil — tout cela est visible dans la liste des questions du Toaster.
- Notifications : en temps réel sur le site, sur l'icône, plus des notifications push, de nombreux paramètres, le site doit être ouvert ().
- Filtres : conditions basées sur des formules : il est possible de cacher des questions, de les colorer, ainsi que d'afficher des notifications, — tout cela est configuré de manière flexible sous forme de conditions logiques ().
- Interface : petites améliorations, comme l'affichage des dates exactes ou l'affichage du statut d'abonnement dans la liste des questions.
- Interface de Habr : petites améliorations (optionnelles), comme les lignes d'indentation dans les commentaires.
- Open source : peut être modifié selon vos besoins, si le cœur vous en dit ().
- Gratuit : Licence MIT.
- Plateforme : , .
- Consommation de mémoire : 30-50 Mo, selon les options et l'intensité d'utilisation du Toaster.
- Taille : 93 Ko pour v0.8.1 (code non minimisé et non compressé).
- Cadre : absence de, code JS pur (minimalisme).
- Qualité du code : moyenne, mélange de styles, grandes fonctions, techniques sale, peu de commentaires.
- Autorisations :
toster.ru, habr.com, notifications, stockage, unlimitedStorage
À l'origine, l'extension a été créée pour moi avec un seul objectif : afficher le pourcentage de questions auxquelles l'utilisateur a eu la gentillesse de cliquer sur le bouton « Marquer comme résolu ». Ensuite, peu à peu, différentes fonctionnalités ont été ajoutées, jusqu'à ce que l'outil devienne un monstre de plusieurs centaines de kilo-octets. Néanmoins, le principe de « ne rien utiliser de superflu » a été respecté jusqu'à la fin.
L'une des fonctionnalités principales actuellement est l'utilisation de formules dans les paramètres. Avec elles, on peut pratiquement faire tout ce qu'on veut, n'importe quelle fonctionnalité pour gérer son attention. Il suffit de savoir ce que l'on veut. Masquage, changement de couleur et notifications — voici les trois aspects principaux de l'attention lors de l'utilisation du site. La filtration de tout et n'importe quoi est la clé du confort.
Exemple d'une règle flexible qui permettra de recevoir des notifications sur un sujet spécifique :
!tag("Blocage de la publicité") && !contains(t,"publicit") && contains(t,"blocage") && !tag("HTACCESS") || containsWord(t,"rkn") || contains(t,"roskomnadzor") || contains(t,"roskompozor") || contains(t,"état") || contains(t,"interdit") || contains(t,"interdiction") || contains(t,"pirate") || containsWord(t,"contournement") || containsWord(t,"rostelecom") || containsWord(t," Yarovaya") || containsWord(t,"rf") && tag("Réseaux informatiques") = notifyJe vais le dire tout de suite, la fonction eval() ne pouvait pas être utilisée. Donc, on ne peut pas vraiment se lâcher. J'ai donc dû écrire ma propre solution bricolée de 5 Ko de code, utilisant . C'est, on peut le dire, un JS fortement amputé, tant en termes de fonctions que de syntaxe.
Récemment, il y a eu un post sur . En comparaison, TE a une interface plus agréable et certaines fonctions qui n'existent pas dans Toster Comfort. Cependant, mon extension met l'accent sur la consommation des ressources. Cela dit, rien n'empêche d'utiliser les deux extensions, elles ne devraient pas entrer en conflit.
Idéalement, TC devrait être réécrit entièrement, car le travail peut être accéléré d'au moins deux fois, et le traitement du cache — dix fois, en se passant de localStorage et JSON.stringify() et en modifiant certaines décisions architecturales. Mais cet exploit ne sera plus à faire par moi. Et je suis fan du principe "si ça marche, ne touche pas". Pour l'instant, en vacances, j'accepte activement les problèmes et les PR, mais sans compromettre le minimalisme. Merci de votre attention !
Source : habr.com
