KrISS feed 8.7 - A simple and smart (or stupid) feed reader. By Tontof
  • Wednesday 05 October 2016 - 09:22

    ... vu par Gee !

    Gee ?!

    Ben oui, Simon Giraudot pour les intimes, Gee pour la Toile.


    [Ceci est une parenthèse]

    Gee est l'auteur d'une BD, désormais terminée, qui a pas mal tournée : le geektionnerd. Ce membre actif de Framasoft (il paraît même qu'il fait parti de la co-présidence...) y officie notamment à travers plusieurs illustrations ici et là. Animé par les mêmes principes fondamentaux que ceux défendus par l'association, il aime se servir de ses talents graphiques pour illustrer des coups de gueule, ses engagements ou plus largement un regard critique sur des notions liées aux enjeux numériques.

    [Ceci était une parenthèse]


    Dans son dernier billet, Gee aborde les algorim' !

    C'est le moment d'enfin comprendre clairement en quoi ça consiste !

    et merci à Jørd pour le coup de coude

    (Photo by Rubén Bagüés)

  • Saturday 24 December 2016 - 09:40

    Le développement est un mode de vie. Ou juste un boulot. Ça dépend des gens. Et des boulots.

    En mettant les mains dans le développement, j'ai trouvé un superbe moyen de réagir face aux situations foireuses, désagréables ou merdiques, par de l'excès.

    Une prise de gueule avec quelqu'un ? = une refactorisation [1]
    Une tuile financière ? = un lecteur de flux RSS
    Une emmerde santé ? = un browsergame dystopique

    [etc]

    Au final, cet excès a les mêmes effets que n'importe quelle fuite (blocage des pensées, réflexions orientées, ...) à un putain de détail près : c'est un excès constructif

    Finalement, dans la majorité des coups durs, occupation de l'esprit + construction, c'est le truc idéal. Avec en bonus, la diversité des langages techniques à utiliser pour se faire comprendre par le serveur/navigateur/compilateur.

    Et c'est comme ça que tu te retrouves à passer des 31 décembre à développer des addons Firefox, des anniversaires à créer des routines d'export en PDF[2] ou des soirées de mariage à finaliser le paramétrage d'un Spamassassin[3]...

    Gilles Roustan [4], lui, il en a occupé sa nuit de Noël. Et finalement, au delà de l'épisode douloureux qu'il évoque, il y présente les mêmes avantages et les mêmes intérêts que ceux que j'éprouve dans ces moments d'excès.

    [Lien vers l'article]

    Avec en bonus, la présentation de sa technique du Pomodoro. Parce que merde, développer par excès, pourquoi pas. Mais autant être organisé.


    ---
    [1] - Refonte (simplification, nettoyage, optimisation, ...) d'un code informatique
    [2] - Je vous ai déjà parlé de combien wkhtmltopdf à sauvé ma vie relationnelle ?
    [3] - Logiciel que l'on place sur un serveur de mail afin d'en asurer le filtrage, notamment des mails de spam
    [4] - Encore une belle réference ce mec. Avec de vraies réflexions et quelques belles réalisations : https://github.com/gbprod

    (Photo by Marko Blažević)

  • Friday 27 January 2017 - 09:08

    J'ai beau passer 99,9% de mon temps sur des distributions Linux, incluant dans la grande majorité des cas un espace LAMP(1), il me faut assez régulièrement un "véritable" espace de développement pour certains projets.

    Sur une base LAMP/WAMP, un simple "http://localhost/monprojetquitue" convient parfaitement. Parfois, une petite modification du fichier host(2) permet d'avoir une jolie URL bien reconnue en "http://monprojetquitue.local" et pouf on en parle plus.

    Toutefois, certains projets, généralement un peu plus volumineux, spécifiques et/ou denses, impliquent des configurations particulières. Il pourra s'agir de versions spécifiques, de tests de tâches CRON(3) ou encore de modules Apache particuliers. Mais du coup, avouons le, installer une distribution serveur, se taper la configuration de base pour ensuite poser le projet, c'est passablement gonflant. On a beau faire un boulot de branleur, trop d'inactivité nuis à la consommation de café.

    Il y a quelques années, j'étais tombé sur une super solution : Docker. Comme l'évoque l'ami Wikipédia, Docker se résume à "[...] un outil qui peut empaqueter une application et ses dépendances dans un conteneur isolé, qui pourra être exécuté sur n'importe quel serveur Linux" Mais j'avoue qu'à la longue, j'ai très souvent eu l'impression de déployer une machine de guerre pour une simple application de test sur Silex(4).

    Au final, j'ai réglé le problème à l'arrache : une petite todo list regroupant les manipulations de base avec un petit serveur Debian(5) installé sous VirtualBox. Je ne présente plus ce superbe outil(6).

    Bref. Je vous partage tout ça.

    On va partir du principe que vous avez déjà téléchargé-installé-paramétré VirtualBox et récupéré une image iso d'une Debian 8

    Les différentes saisies sont à réaliser en ligne de commande
    Nous partons du principe que l'adresse IP locale de la machine virtualisée est : 192.168.1.17
    Nous partons du principe que l'utilisateur système crée lors de l'installation est : bsp
    Nous partons du principe que nous désirons créer cet espace de développement pour une application nommée Watson


    Adaptez donc ces informations à votre situation

    C'est parti !

    ~~ coté machine virtuelle
    ~ installation de sudo & récupération de l'adresse IP de votre machine virtuelle, les commandes sont à saisir dans la fenêtre ouverte VirtualBox après le démarrage de votre machine virtuelle

    su root
    ~ saisir "ifconfig" puis repérer l'adresse IP. Dans notre cas, c'est 192.168.1.17
    apt-get install sudo
    adduser bsp sudo
    reboot

    Une fois la machine redémarrée, se connecter en ssh à partir de l'ordinateur hôte (votre ordinateur)
    Pour les utilisateurs de Mac et Linux : utilisez directement votre terminal
    Pour les utilisateurs Windows : utilisez le logiciel Putty(7)


    ~~ coté ordinateur hôte, on se connecte
    ssh bsp@192.168.1.17
    sudo su

    ~ installation LAMP & paquets requis pour les manipiulations suivantes
    apt-get install mysql-server mysql-client apache2 php5 php5-mysql libapache2-mod-php5 phpmyadmin apache2-mpm-itk git vim proftpd

    Des étapes de configuration propres à chaque logiciel vont vous être proposées

    ~ activation de modules Apache
    a2enmod userdir rewrite
    Note : "userdir" est un module Apache permettant d'avoir un répertoire "web" pour chaque utilisateur système. Assez pratique pour segmenter "1 site/application = 1 utilisateur système = 1 répertoire cible". Le module "rewrite" permet de gérer la réécriture d'URL(8)

    ~ paramétrage Apache pour avoir une application web = utilisateur système : on édite donc le fichier adapté
    vim /etc/apache2/mods-enabled/userdir.conf

    ~ pour y remplacer le contenu par (les tirets sont bien entendu à supprimer) :
    - <IfModule mod_userdir.c>
    --- UserDir public_html
    --- UserDir disabled root
    ---
    --- <Directory /home//public_html>
    ------- AllowOverride All
    ------- Options MultiViews Indexes SymLinksIfOwnerMatch
    ------- <Limit GET POST OPTIONS>
    ------------ Order allow,deny
    ------------ Allow from all
    ------- </Limit>
    ------- <LimitExcept GET POST OPTIONS>
    ------------ Order deny,allow
    ------------ Deny from all
    ------- </LimitExcept>
    --- </Directory>
    - </IfModule>

    *~ ajout d'un utilisateur système dédié à notre application

    adduser watson

    Pensez à garder en mémoire le mot de passe que vous renseignez...

    ~ création du sous répertoire où sera placé l'application & assigniation de droits adaptés sur le répertoire crée
    cd /home/watson && mkdir public_html && chown watson:watson public_html

    ~ activation de PHP au sein des répertoires utilisateurs, en éditant le fichier :
    vim /etc/apache2/mods-available/php5.conf

    ~ commenter les lignes suivantes en ajoutant un dièse en début de ligne
    - <IfModule mod_userdir.c>
    --- <Directory /home//public_html>
    ------ php_admin_value engine Off
    --- </Directory>
    - </IfModule>

    *~ configuration du virtualhost dédié à notre application
    *
    cd /etc/apache2/sites-available/
    vim watson.conf

    ~ y saisir le contenu suivant (les tirets sont bien entendu à supprimer) :
    - <VirtualHost :80>
    ---- ServerName watson.local
    ---- ServerAlias www.watson.local
    ----
    ---- DocumentRoot /home/watson/public_html/
    ----
    ---- <IfModule mpm_itk_module>
    -------- AssignUserId watson watson
    ---- </IfModule>
    ----
    ---- <Directory "/home/watson/public_html/">
    -------- AllowOverride all
    -------- Require all granted
    ---- </Directory>
    ----
    ---- ErrorLog ${APACHE_LOG_DIR}/watson-error.log
    ---- CustomLog ${APACHE_LOG_DIR}/watson-access.log combined
    - </VirtualHost>

    *Remarque: notre site va "répondre" aux domaines watson.local et www.watson.local/.


    ~ activation du site dans la configuration Apache
    a2ensite watson.conf

    ~ redémarrage Apache pour prendre en compte nos multiples modifications
    service apache2 restart

    Côté ordinateur "hôte", on va modifier notre fichier hosts pour rediriger le domaine "watson.local" (et "www.watson.local") vers notre machine virtuelle

    ~ sur Linux & Cie:
    sudo vim /etc/hosts

    ~ sur Windows : ouverture du bloc note en "administrateur" puis ouverture du fichier "C:\Windows\System32\drivers\etc\hosts"

    ~ y ajouter les lignes suivantes :
    192.168.1.17 watson.local
    192.168.1.17 www.watson.local


    Et voilà

    En saisissant le domaine "www.watson.local" dans votre super navigateur, vous serez automatiquement redirigés sur le "contenu" présent dans le répertoire /home/watson/public_html de votre super serveur virtuel de développement. Pour y déposer votre application et ses fichiers, vous pourrez soit directement utilisé GIT que nous avons installé en début de manipulation, soit passer par votre super logiciel FTP(9).

    Pour vous connecter en FTP, il vous suffira de remplir les informations suivantes :
    Hôte : watson.local
    Utilisateur : watson
    Mot de passe : celui que vous avez renseigné lors de la création de l'utilisateur "watson"

    En vous connectant, vous serez automatiquement redirigé dans votre répertoire "/home/watson"

    Et pouf


    ---

    [1] - Linux Apache MySQL PHP - On pourra aussi parler de WAMP pour une base Windows ou de MAMP pour une base Mac. Ensemble de logiciels permettant de créer des serveurs Web assez basiques.

    [2] - Un gros, c'est un fichier livré avec le système d'exploitation de votre machine : il permet de faire une correspondance IP > nom de domaine, avant même d'interroger les serveurs DNS. En modifiant le fichier "host" de votre machine, vous pouvez ainsi ruser pour avoir localement la configuration IP > nom de domaine de votre choix. Quelques infos de plus par ici

    [3] - Non ce n'est pas un gros mot. C'est simplement un petit programme tournant sur les systèmes UNIX, permettant l'execution automatique de tâches (scripts, commandes, ...) à un instant donné, avec notamment la possibilité de spécifier une réccurence. Exemples : vider les fichiers temporaires d'un site tous les jours à une heure précise, réaliser une sauvegarde automatique des données du serveur deux fois par jours, ...

    [4] - Il s'agit d'un framework PHP, version allégée de Symfony. Nous aurons sûrement l'occasion d'en parler dans une prochaine propa. Plus d'infos sur Silex : http://silex.sensiolabs.org/

    [5] - Dans ces cas là, je pars généralement sur une "netinstall" : cela permet de réduire le téléchargement initial et de partir avec une distribution assez légère et de ne récupérer, par Internet, que le nécessaire.

    [6] - VirtualBox permet de virtualiser des systèmes d'exploitation sur un ordinateur hôte. Parfois un peu chiant pour gérer certaines subitlités (réseaux & périphériques notamment), je m'en suis beaucoup servi pour avoir un Photoshop tournant sur un Windows, lui même lancé (via VirtualBox) sur mon Linux. Certaines (mauvaises) langues (ou pas) diront que c'est un des rares bon trucs géré par Oracle. https://www.virtualbox.org/

    [7] - Site officiel de PuTTY. Compte tenu du développement stagnant de PuTTY, Bros nous propose aussi d'utiliser Kitty

    [8] - Pour avoir des URL du type http://www.monsite.com/contact plutôt que http://www.monsite.com/index.php?page=contact (par exemple)

    [9] - Vous connaissez bien sûr FileZilla ?

    (Photo by Autumn Mott)

  • Wednesday 28 June 2017 - 21:54

    Il y a peu de temps, Liandri me sollicitait sur Framapiaf pour un petit peu de bidouille de code. Il était demandé un outil très simpliste, sans interface et avec de la simple édition de fichier, permettant de fusionner plusieurs flux RSS au sein d'un seul, tout en paramétrant d'éventuels filtres basés sur des mots-clés. Avec bien sûr, l'habituelle contrainte du "je pose ça sur mon serveur et ça se débrouille". Petit point de détail, comme dans toutes mes aventures de bidouillage, l'ami Bronco était aussi de la partie, rappelant notamment un outil qu'il avait lui même mis sur pied : Funnel (promo-copaing !)

    Quelques heures plus tard, j'ai pondu une première version. J'ai notamment basé une partie de ce travail sur des morceaux que j'avais pondu pour Froxiss, le lecteur RSS KISS (et désormais totalement obsolète, non maintenu et bugué) que j'avais mis sur pied il y a quelques temps.

    Bref, les sources se trouvent bien entendu sur Framagit : RSS-Fusion

    La doc d'installation est d'ailleurs posée là bas, ainsi qu'un rapide descriptif que je vous remet ici :

    • Fusion de flux RSS multiples
    • Sans base de données
    • Script auto hébergeable facilement
    • Gestion des flux RSS/ATOM
    • Génération flux global
    • Surcharge de personnalisation
    • Système de mise en cache des flux (durée = 1h)
    • Données triées par date/heure décroissante
    • Possibilité de spécifier des mots clés (pour mettre en avant ou mettre de côté des items)
    • Suppression automatique des fichiers de configuration non consultés depuis plus de 3 semaines
    • Gestion de token

    Bon, par contre, un script, c'est rigolo, mais en l'état il nécessitait d'être gentiment paramétré, utilisé et intégré pour faire le taf demandé par Liandri. J'ai donc pondu une démo de RSS-Fusion, dont les sources se trouvent ici.

    D'ailleurs, une démo en ligne est parfois disponible, selon l'état du serveur en mousse qui l'héberge.

    Il y a encore pas mal de taf, à commencer par revoir l'interface (ceci dit, les sources sont dispo, bricolez donc votre propre version avec un peu de CSS et d'huile de coude), mettre en place un système de suppression automatique des configuration de flux ayant dépassé une certaine date(check) ou encore un système de token(check) ou captcha pour éviter le spam.

    Mais bon, pour l'heure, le taf est plus ou moins fait. Et j'ai bien rigolé.

    (Photo by Matt Lewis)

  • Sunday 16 July 2017 - 09:00

    Bienvenue dans cette première version totalement subjective, personnelle et bordélique ! Cette revue regroupe quelques trouvailles, recherches ou liens qui m'ont récemment interpellés.


    ->- Je suis tombé sur Coorsy, plateforme de recherche de cours en ligne. Elle inclue également des cours et formations annoncées mais par encore lancées.

    ->- J'ai eu l'occasion de voir circuler une offre d'emploi qui implique de grosses questions

    ->- Par ailleurs, la démo de RSS-Fusion est passée en version 0.6.4, ajoutant son lot de correctifs et de fonctionnalités. Et ça c'est chouette.

    ->- Dans le cadre d'une conférence Amazon Web Services (AWS), j'ai eu l'occasion d'échanger pas mal sur leur service Lex. Dans le cadre d'un projet perso, je bosse pas mal sur la saisie et la reconnaissance vocale. Jusqu'à présent, j'étais parti uniquement sur une solution Google. Mais avec 2500 € de crédits Amazon qui m'ont été offert, je vais au minimum réaliser quelques tests...

    ->- #RienAvoir - Entre deux algo, je suis tombé sur cette vidéo publiée par le journal Le Monde
    Game of Thrones, les six premières saisons résumées en 7 minutes. Utile pour le début de la saison 7...

    ->- Je suis retombé sur un article que j'avais égaré, traitant notamment du projet de La Brique Internet, avec notamment une version tournant sur un Raspberry Pi. Si vous ne connaissez pas ce projet d'Internet décentralisé, foncez !

    ->- Après une rapide recherche, j'ai commencé à tester Vesta Control Panel, interface de gestion de serveur. Je ne suis pas du genre à aimer passer par des interfaces pour ce types d'usages, mais la résultat est assez intéressant.

    ->- J'ai découvert unpkg, proposant un service de CDN assez simple à prendre en main. 'Pratique pour vos projets Web. Mais à utiliser avec parcimonie pour limiter vos dépendances externes... ;-)

    ->- J'ai pris plaisir à écouter une excellente émission passée sur France Culture en juin : Coder, ce n'est ni facile, ni marrant. Vraiment chouette. Et ça fait du bien au moral.

    ->- Suite à plusieurs échanges sur Mastodon, j'ai commandé (mais pas sur Amazon) un bouquin au titre un peu trop #putaclik mais au contenu de qualité : La face cachée d'Internet. Rayna Stamboliyska est une pointure, réellement intéressante avec une approche globale mais néanmoins précise et centrée sur l'individu. Par ailleurs, le bouquin est préfacé par l'excellent Stéphane Bortzmeyer (ce mec ressemble étrangement à Ted de la série Scrubs Oo')

    ->- On m'a transmis une liste de matériels informatiques qui, selon la Free Software Fondation, respecte votre vie privée.

    ->- Et sinon, vous saviez que Linux Mint était sortie en version 18.2 et que Fedora 26 avait - enfin - montré le bout de son nez ?

    [Photo by Annie Spratt]

  • Thursday 07 September 2017 - 09:50

    Bienvenue dans cette seconde version totalement subjective, personnelle et bordélique ! Cette revue regroupe quelques trouvailles, recherches ou liens qui m'ont récemment interpellés.

    Let's go !



    ->- Interpellé par quelques Mastonnautes, j'ai eu l'immense plaisir de découvrir ce ramassis de conneries portant sur le Deep Web (so evil). Le mec te donne un cours sur le sujet, tout en gérant les bases : "(...)des moteurs de recherche tels que Mozilla Firefox ou Internet Explorer(...)". En réponse à ce type de conneries, Goat in the Shell propose quelques précisions =D

    ->- Je suis tombé sur gpu.js : une lib' Javascript pas trop conne, qui donne votre JS au module WebGL afin de le faire traiter par le GPU plutôt que par le CPU. Le Hollandais Volant fait remarquer : "Ça ne marche pas dans tous les cas, typiquement juste dans les cas où les calculs sont parallélisables (chose que le GPU font plus vite)". A vos tests !

    ->- Un putain de super talk (qui devrait notamment plaire à une certaine Miloon...), développant un regard critique portant sur le monde des startup, les droits de l'Homme sur Internet, et comment construire un meilleur monde numérique : putain mais lancez-vous dans la résistance et la construction d'utopies numériques, ça fait du bien

    ->- Je sais qu'il y a des aficionados du SQL dans l'coin, mais perso', même après 10 années de *dév' oueb, je galère parfois sur certaines jointure SQL. Et puis je suis tombé là dessus. En anglais, avec des illustrations basiques qu'apprécieront les débutants. (ou les boulets comme moi)

    ->- Cela fait quelques temps que je m’intéresse à la reconnaissance vocale pour un projet en cours. Et là, pouf, Mozilla lance l'initiative Common Voice : enregistrez donc quelques phrases pour donner un coup de main !



    Mais aussi quelquesoutils à la con qui peuvent faire gagner un peu de temps ou faire la différence sur certains projets :

    ->-
    pasition : afin de faire de la manipulation animée d'images SVG, en Javascript.

    ->- Ressemble.js : analyse et comparaison d'images, toujours en Javascript

    ->-Un petit CHMOD Generator pour aider à gérer ses droits (c'est comme le tar.gz, je me plante toujours !)



    Dans la catégorie des articles "techniques, huile de coude et bidouillage" :

    ->- L'ami Bronco a remis à jour une de ses créations, Googol (lien vers ma propre instance), permettant d'effectuer quelques recherches avec un Google moins bavard. Self-hosted, avec sources par ici

    ->- Un article de LinuxFR m'a permis de découvrir matrix, outil pour décentraliser Skype, Whatsapp, Signal, Slack et Discord

    ->- Suite à quelques emmerdes avec les flics, l'ami aeris passe au "tout chiffré" et propose un article pour un stockage chiffré intégral sur serveur distant

    ->-Appréciant toujours autant bidouiller avec mon Raspberry Pi, je suis tombé sur ce moyen de filtrer les appels avec un raspberry et un peu d'huile de coude. Je galère un poil avec la configuration du SIP, mais ça devrait se boucler sous peu !




    Et enfin, deux-trois conneries m'ont captivées :

    ->- TeachCraft : Minecraft + Python, pour apprendre le Python dans un contexte assez fun et bien foutu. Bohors / Jørd, c'est pour toi !

    ->- OpenMW : "Opensource Elderscrolls III: Morrowind engine reimplementation". Oui oui.

    ->- WORLDBUILDING : comment créer un univers SF complet, mais en respectant des principes scientifiques. Ce truc est une véritable pépite.

    (Photo by Will Fuller)

  • Monday 22 January 2018 - 10:41

    Sur les Internets, on parle régulièrement d'accessibilité et de code valide. Ce n'est jamais simple à gérer, mais cela répond à une nécessité bien réelle ! Amélioration du référencement, adaptation des sites internets aux outils luttant contre les handicapes, bonnes pratiques, ...

    Bien sûr, il existe des outils en ligne pour vérifier la validité de son code HTML et CSS, tel que le validateur mis à disposition par le W3C. Mais c'est globalement imbitable, et implique d'aller se rendre sur le site, de copier/coller son lien, et donc de perdre un temps monstrueux de quelques secondes.

    Or, les développeurs sont des fainéants, c'est bien connu.

    C'est là qu'intervient a11y.css (prononcez "Alix")

    Cet outil proposé par Gaël Poupard se résume en une feuille de style CSS que l'on injecte à sa page, permettant de mettre en avant les erreurs à la con.

    A partir du site du projet, vous pouvez renseigner quelques paramètres (niveau d'erreur à afficher, langue), ce qui a pour effet de vous proposer d'ajouter un bookmarklet à votre navigateur.

    Ainsi, à chaque fois que vous consultez une page, un clic et pouf, tout s'illumine. Ou pas selon la propreté de votre code.

    C'est pratique, c'est utile et c'est bon pour la planète.

    (Photo by Daniel Beilinson)

  • Tuesday 13 February 2018 - 11:49

    Le développement le plus con du monde, KISS jusqu'à son nom !

    Dans le cadre d'un projet à la con, je me suis retrouvé face à la problématique d'un quiz simple. L'idée était d'avoir un truc pas trop moche ( = "fluide"), sans traitement à la clé (simple message du genre "Vous avez fais X erreurs"), et sans restriction en entrée.

    Au final, j'ai décidé de bricoler avec reveal.js. Le principal soucis que j'ai rencontré était de pouvoir charger dynamiquement les questions, sans tout rendre disponible dans le fichier source. D'où l'ajout en AJAX. En gros, chaque réponse déclenche le chargement de la question suivante, avec un effet de transition au passage.

    On se retrouve donc avec un truc qui hérite de la personnalisation d'interface de reveal.js (voir le fichier README.md pour plus d'info), avec la possibilité de gérer des questions enrichies (support des balises de code, de la mise en forme HTML, des images, ...), d'un nombre illimité de propositions de réponses (avec les mêmes possibilités de mise en forme), et d'autres conneries en tout genre.

    La marche à suivre !

    • git clone https://framagit.org/Erase/KISS-quiz.git
    • Ouvrir le fichier /inc/inc.banque.php
    • Modifier/ajouter des questions
    • Ouvrir le fichier /inc/inc.final.php
    • Modifier le texte final qui s'affichera selon le nombre d'erreurs
    • Et c'est tout

    C'est con hein ?
    La démo c'est par ici : http://demo.green-effect.fr/KISS-quiz/
    Les sources c'est par là : https://framagit.org/Erase/KISS-quiz
    Pour les questions, les remarques et tout, passez par Framagit ou sinon par le mail présent en fichier README.md

    (Photo by Alessio)

  • Thursday 08 March 2018 - 17:14

    J'adore bricoler des trucs. Toujours un peu à l'arrache mais ça fait le charme des projets persos. Avec mes nouvelles obligations, je ne suis plus (trop) censé bricoler du code. Mais bordel, ça me manque.

    Alors quand L'anar geek relance un vieux projet, ça donne envie de s'y remettre.

    Donc en somme voici une nouvelle version de Froxiss dont j'avais déjà eu l'occasion de parler par ici. Sauf que j'ai tellement tout cassé qu'il me semblait évident de créer un nouveau dépôt.

    Voici donc Froxiss Reload. Ne me demandez pas pourquoi ce nom, j'en ai aucune idée.

    Version classique

    Froxiss-Reload version large

    Version responsive - mobile

    Froxiss-Reload version mobile

    Comme évoqué sur la page du projet, on se retrouve avec un truc que j'espère léger et simple d'installation. Après, c'est livré "tel quel", avec de vrais morceaux de bugs et des fonctionnalités manquantes. 'faudra me dire.

    Mais en gros, ça donne :

    • Sans base de données
    • Script auto hébergeable
    • Gestion des flux RSS/ATOM
    • Gestion du multi-flux
    • Espace privé
    • Flux RSS global
    • Responsive Design
    • Options d'afichage des flux
    • Gestion de favoris
    • Fonctionnement possible en sous répertoire

    Côté installation, 'faut pas trop s'emmerder, tout est précisé ici. Et pas de démo parce que bon, c'est mono utilisateur. N'hésitez toutefois pas à passer par votre page Paramètres pour bien tenir à jour votre installation : ça risque encore de swinguer dans les prochains jours.

    En tout cas, une fois encore j'ai bien rigolé.

    Avec une mention spéciale pour Liandri, mon habituel cobaye testeur de l'extrème (et ses 350 000 flux RSS). Et puis aussi Bronco pour ce superbe outil qu'est Goofi.

    Sources : Froxiss-Reload

    (Photo by Timothy Eberly)

  • Tuesday 12 June 2018 - 17:00

    Il y a quelques mois, j'étais tombé sur l'excellente extension Tabliss.

    Le principe ? Modifier la page d'accueil et de nouvel onglet de votre Firefox préféré, avec en gros une jolie image issue de l'excellent site Unsplash, et quelques trucs annexes genre champ de recherche, heure, message d'accueil selon l'heure.

    Toutefois, j'aime bien réinventer la roue et surtout me "réapproprier" ce que j'aime.

    Voici donc Start-slow. Le truc est autant exceptionnel que son nom est orignal. C'est pour dire.

    L'habituel listing de fonctionnalités :

    • simple à poser chez soi, en mode "tu prends, tu balances, ça fonctionne"
    • affichage dynamique de l'heure courante
    • message d'accueil selon l'heure
    • image de fond issue de Unsplash
    • météo déterminée par ville
    • champ de recherche principal (pointant vers http://encrypted.google.com/ par défaut)
    • raccourcis pour pointer sur d'autres espaces de recherche (des explications par ici)
    • possibilité d'épingler des liens pour les avoir sous la main (stockage côté client via localStorage)
    • pseudo responsive
    • et quelques commandes à la con

    Comme tout le monde n'habite pas Paris ou n'a pas les mêmes habitudes de navigation, la majorité des éléments fonctionnels sont personnalisables, en éditant le contenu du fichier config.json :

    • unsplashCollectionID : identifiant de la collection Unsplash ciblée pour les images de fond
    • defaultWeatherLocation : ville ciblée pour déterminer la recherche météo
    • defaultSearchBaseURL : URL du moteur de recherche par défaut
    • commands : permet de modifier les moteurs de recherche et leurs commandes de raccourcis
    • messages : permet de définir les messages qui s'afficheront selon une plage horaire précise (heure min et heure max)

    Version classique

    Capture écran de Start-slow, version classique

    Version mobile

    Capture écran de Start-slow, version mobile

    Pour le reste, tout est précisé dans le fichier README du projet. Les sources (HTML, CSS, JS) sont passées à la moulinette par l'intermédiaire de Gulp, dont les dépendances NPM sont précisées dans le fichier package.json. Donc en somme, les sources non minifiées pour bidouillage sont présentes dans le répertoire src, les sources minifiées pour utilisation sont dans le répertoire dist.

    Sources : Start-slow
    Démo : Instance de Start-Slow sur Green Effect

    (Photo by Annie Spratt)