À l’époque où je faisais régulièrement des vidéos (ça reviendra mais je promets rien), j’avais déjà parlé d’un super projet dont j’étais fier. J’ai le plaisir de vous annoncer que je relance enfin le développement de ce projet. Je vous narrerai mon parcours dans tous les challenges techniques et les fiertés que je rencontrerai.
Morgenbord tire son nom du norvégien. Vous verrez j’aime bien le norvégien. Morgen veut dire matin et bord veut dire table ou bureau. Leurs étymologies ont pour source de ce qui a donné morning et board en anglais.
En 1992 j’aurais dit que sur ma table, le matin, j’aime bien retrouver mon journal à côté de mon café. Nous sommes 33 ans plus tard donc j’ai les informations en numérique sur plusieurs appareils. Cependant, quelques informations ne sont pas si accessibles depuis mon téléphone ou alors elles le sont en allant sur plusieurs applications. J’aime bien l’idée d’un tableau de bord qui centralise les informations. Ça peut être un tableau de bord personnel pour sa productivité et ça peut être un tableau de bord d’équipe pour bien préparer sa journée.
Morgenbord est un tableau de bord personnalisable, pour tous les usages. Je souhaite proposer une base, un fonctionnement, qui permette d’installer des widgets comme on installe des dépendances. La seule chose nécessaire pour ajouter ou supprimer des widgets devrait se limiter à exécuter `composer require VENDOR/morgenbord-NOM-widget-bundle` ou quelque chose du genre. Ça a toutes sortes d’implications techniques qui représentent de beaux challenges.
J’ai préparé des wireframes juste pour vous. Le premier présente la page d’accueil de Morgenbord. En haut à gauche le logo. À sa droite une zone à définir puis un menu utilisateur. Dessous, une sorte de grille pour créer des widgets de différentes dimensions. Ça devrait vous faire penser au grid system de Bootstrap. Le but sera d’annoncer qu’un widget fait une certaine largeur. Entre les carrés on trouve une gouttière qui met un espace entre deux widgets et cet espace est comblé quand le widget fait 2 ou trois colonnes de large. Je ne sais pas si j’utiliserai Bootstrap, je me suis seulement inspiré du concept.
Ci-dessous, des exemples de positions des widgets.
Les widgets peuvent être ce que vous voulez ! J’en développerai plusieurs et j’espère que d’autres développeurs souhaiteront se lancer dans l’aventure. On pourrait y retrouver :
- une liste de courses avec des cases à cocher
- une zone de notes rapide
- le nombre d’emails non lus de vos multiples boîtes mails
- vos rendez-vous du jour
- le résumé des statistiques de votre produit
- les alertes du matin à gérer en urgence
- vos notifications github
- … tout ce que vous souhaiteriez voir pour piloter votre journée !
Il s’agit d’un logiciel libre et je vous montrerai tous les détails. J’ai très hâte ! Bien que pas mal de code soit déjà fait, je dois le mettre à jour, le tester et le documenter, en plus de vous rédigez de beaux articles pour rendre compte de l’avancée du projet.
À bientôt pour vous présenter la documentation.