TaskNotes : transformer des notes Markdown en tâches reliées
callumalpass/tasknotes offre une implémentation open source exploitable en conditions réelles avec une structure réutilisable.
En bref
- De quoi s’agit-il ?
- Task and time-tracking management with calendar integration for Obsidian Cette analyse relie ses fonctions documentées à leurs conditions d’usage.
- À qui s’adresse-t-il ?
- tasknotes convient aux personnes qui acceptent ses dépendances et ses limites documentées. Il ne convient pas à un usage exigeant des garanties que le README ne donne pas.
- Puis-je l’utiliser commercialement ?
- Oui. MIT est une licence permissive : vous pouvez utiliser, modifier et vendre un logiciel qui en dépend, à condition de conserver les mentions de droit d’auteur et de licence.
- Est-il encore maintenu ?
- Oui. Les derniers commits datent d’il y a 1 jour.
- En quel langage est-il écrit ?
- Principalement TypeScript, d’après les statistiques de langage de GitHub.
Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 14 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.
ANALYSE OPEN SOURCE APPROFONDIE
Markdown, métadonnées et tâches
TaskNotes est un plugin de gestion de tâches pour Obsidian dont le choix de conception déterminant est que chaque tâche est une note Markdown distincte avec un frontmatter YAML, plutôt qu'un enregistrement dans une base de données propre au plugin. Le README présente cela comme un avantage de portabilité : les tâches sont de simples fichiers Markdown, lisibles avec n'importe quel outil, transformables par scripts, ou migrables ailleurs. Le frontmatter est extensible, donc des champs comme energy-level ou client deviennent disponibles dans Bases pour le filtrage et le regroupement sans configuration supplémentaire. Le projet est écrit en TypeScript, et les métadonnées du dépôt indiquent 2 012 étoiles et 202 forks, avec 410 problèmes ouverts.
Le point utile à retenir est le lien entre cette promesse et un artefact vérifiable du dépôt. Une commande, un fichier de configuration, une sortie JSON ou un journal doit permettre de voir ce qui s’est réellement passé. Les informations absentes du README restent absentes de cette analyse : elles ne sont pas remplacées par une garantie imaginaire. Cette distinction compte lorsque le projet touche au matériel, à des comptes, à des données personnelles ou à des services externes. Dans le cas de tasknotes, vérifiez concrètement markdown, métadonnées et tâches en conservant le nom du projet et les fichiers cités par sa documentation. Notez la sortie obtenue, les erreurs et les conditions du test ; ce sont ces éléments qui permettent de distinguer une fonction disponible d’une intégration complète. Le matériau indique une implémentation en TypeScript, sous licence MIT, avec 2078 étoiles et 452 issues ouvertes. Ces métadonnées décrivent l’état observé, pas un niveau de support garanti.
Liens entre notes et dépendances
Chaque vue dans TaskNotes est une requête Bases. Bases est le plugin central d'Obsidian qui transforme les notes en bases de données ; il lit les propriétés des notes et permet de filtrer, trier et regrouper sans écrire de code. TaskNotes stocke les tâches comme des notes avec un frontmatter structuré, puis utilise Bases pour les interroger et les afficher. Les vues Liste de tâches, Kanban, Calendrier et Agenda sont toutes des fichiers .base. TaskNotes s'enregistre comme source de données Bases et fournit quatre types de vues personnalisées : tasknotesTaskList, tasknotesKanban, tasknotesCalendar et tasknotesMiniCalendar. Le fichier Agenda par défaut est une vue liste tasknotesCalendar préconfigurée en mode listWeek. Comme les fichiers .base sont en texte brut, les filtres et tris peuvent être modifiés directement, ou dupliqués pour créer de nouvelles vues.
Le point utile à retenir est le lien entre cette promesse et un artefact vérifiable du dépôt. Une commande, un fichier de configuration, une sortie JSON ou un journal doit permettre de voir ce qui s’est réellement passé. Les informations absentes du README restent absentes de cette analyse : elles ne sont pas remplacées par une garantie imaginaire. Cette distinction compte lorsque le projet touche au matériel, à des comptes, à des données personnelles ou à des services externes. Dans le cas de tasknotes, vérifiez concrètement liens entre notes et dépendances en conservant le nom du projet et les fichiers cités par sa documentation. Notez la sortie obtenue, les erreurs et les conditions du test ; ce sont ces éléments qui permettent de distinguer une fonction disponible d’une intégration complète. Le matériau indique une implémentation en TypeScript, sous licence MIT, avec 2078 étoiles et 452 issues ouvertes. Ces métadonnées décrivent l’état observé, pas un niveau de support garanti.
Vues, filtres et recherche
Les fichiers .base par défaut incluent des propriétés de formule pour des valeurs calculées. Le README en montre quatre : daysUntilDue, isOverdue, urgencyScore et efficiencyRatio. daysUntilDue est la différence en jours entre la date d'échéance et aujourd'hui ; isOverdue signale les tâches dont la date est dépassée et dont le statut n'est pas done. urgencyScore ajoute au poids de priorité le nombre de jours restants, plafonné à dix, et efficiencyRatio exprime le temps suivi en pourcentage de l'estimation de temps. Les utilisateurs peuvent trier par urgencyScore, filtrer pour n'afficher que les tâches en retard, ou ajouter ces formules comme colonnes. La liste complète des formules incluses est documentée dans docs/views/default-base-templates.md, vers lequel le README pointe.
Le point utile à retenir est le lien entre cette promesse et un artefact vérifiable du dépôt. Une commande, un fichier de configuration, une sortie JSON ou un journal doit permettre de voir ce qui s’est réellement passé. Les informations absentes du README restent absentes de cette analyse : elles ne sont pas remplacées par une garantie imaginaire. Cette distinction compte lorsque le projet touche au matériel, à des comptes, à des données personnelles ou à des services externes. Dans le cas de tasknotes, vérifiez concrètement vues, filtres et recherche en conservant le nom du projet et les fichiers cités par sa documentation. Notez la sortie obtenue, les erreurs et les conditions du test ; ce sont ces éléments qui permettent de distinguer une fonction disponible d’une intégration complète. Le matériau indique une implémentation en TypeScript, sous licence MIT, avec 2078 étoiles et 452 issues ouvertes. Ces métadonnées décrivent l’état observé, pas un niveau de support garanti.
Configurer le dossier de travail
Le README documente la structure des tâches avec un exemple YAML. Une tâche peut porter un titre, un statut, une date d'échéance, une priorité, des contextes, des projets, une estimation de temps, et une liste d'entrées de temps avec horodatages de début et de fin. Les tâches récurrentes utilisent le format RRULE avec suivi d'achèvement par instance : une réunion hebdomadaire peut lister complete_instances comme tableau de dates. Quand une occurrence individuelle a besoin de sa propre note, TaskNotes peut matérialiser cette occurrence comme une tâche normale avec les champs recurrence_parent et occurrence_date. Selon le README, les notes d'occurrence héritent des métadonnées de planification du parent récurrent, comme l'heure prévue, le décalage d'échéance, les tags, contextes, projets, rappels, détails et l'estimation de temps, mais ne copient pas la règle de récurrence, l'historique d'achèvement ou les entrées de temps du parent. Tous les noms de propriétés sont configurables ; un coffre utilisant deadline au lieu de due peut le remapper dans les paramètres.
Le point utile à retenir est le lien entre cette promesse et un artefact vérifiable du dépôt. Une commande, un fichier de configuration, une sortie JSON ou un journal doit permettre de voir ce qui s’est réellement passé. Les informations absentes du README restent absentes de cette analyse : elles ne sont pas remplacées par une garantie imaginaire. Cette distinction compte lorsque le projet touche au matériel, à des comptes, à des données personnelles ou à des services externes. Dans le cas de tasknotes, vérifiez concrètement configurer le dossier de travail en conservant le nom du projet et les fichiers cités par sa documentation. Notez la sortie obtenue, les erreurs et les conditions du test ; ce sont ces éléments qui permettent de distinguer une fonction disponible d’une intégration complète. Le matériau indique une implémentation en TypeScript, sous licence MIT, avec 2078 étoiles et 452 issues ouvertes. Ces métadonnées décrivent l’état observé, pas un niveau de support garanti.
Observer les fichiers produits
TaskNotes prend en charge la synchronisation de calendrier avec les comptes Google et Microsoft via OAuth, ainsi qu'avec tout flux ICS. Le suivi du temps fonctionne avec démarrage et arrêt par tâche, un minuteur Pomodoro et un historique de sessions. Les tâches récurrentes prennent en charge des calendriers fixes ou flexibles. Le README liste aussi les dépendances entre tâches, l'analyse en langage naturel pour la création de tâches, ainsi que les statuts, priorités et champs définis par l'utilisateur. Le README ne décrit pas comment les dépendances sont représentées dans le frontmatter des tâches ; ce détail n'est donc pas vérifiable à partir de cette source.
Le point utile à retenir est le lien entre cette promesse et un artefact vérifiable du dépôt. Une commande, un fichier de configuration, une sortie JSON ou un journal doit permettre de voir ce qui s’est réellement passé. Les informations absentes du README restent absentes de cette analyse : elles ne sont pas remplacées par une garantie imaginaire. Cette distinction compte lorsque le projet touche au matériel, à des comptes, à des données personnelles ou à des services externes. Dans le cas de tasknotes, vérifiez concrètement observer les fichiers produits en conservant le nom du projet et les fichiers cités par sa documentation. Notez la sortie obtenue, les erreurs et les conditions du test ; ce sont ces éléments qui permettent de distinguer une fonction disponible d’une intégration complète. Le matériau indique une implémentation en TypeScript, sous licence MIT, avec 2078 étoiles et 452 issues ouvertes. Ces métadonnées décrivent l’état observé, pas un niveau de support garanti.
Adoption progressive dans un dossier existant
TaskNotes dispose d'une API HTTP optionnelle, ainsi que d'une extension de navigateur et d'une CLI hébergées dans des dépôts GitHub séparés. Les webhooks peuvent notifier des services externes lors de changements de tâches ; le README renvoie à docs/HTTP_API.md et docs/webhooks.md pour les détails. L'interface du plugin est disponible en anglais, allemand, espagnol, français, japonais, russe, chinois, portugais et coréen. L'analyse en langage naturel couvre l'anglais, l'allemand, l'espagnol, le français, l'italien, le japonais, le néerlandais, le portugais, le russe, le suédois, l'ukrainien et le chinois. Le README crédite FullCalendar.io pour les composants de calendrier. Le projet est sous licence MIT ; la licence accorde le droit d'utiliser, copier, modifier, fusionner, publier, distribuer, sous-licencier et vendre le logiciel, et précise qu'il est fourni sans garantie. Elle ne dit rien de la posture de sécurité, des engagements de support ou de la préparation à la production.
Le point utile à retenir est le lien entre cette promesse et un artefact vérifiable du dépôt. Une commande, un fichier de configuration, une sortie JSON ou un journal doit permettre de voir ce qui s’est réellement passé. Les informations absentes du README restent absentes de cette analyse : elles ne sont pas remplacées par une garantie imaginaire. Cette distinction compte lorsque le projet touche au matériel, à des comptes, à des données personnelles ou à des services externes. Dans le cas de tasknotes, vérifiez concrètement adoption progressive dans un dossier existant en conservant le nom du projet et les fichiers cités par sa documentation. Notez la sortie obtenue, les erreurs et les conditions du test ; ce sont ces éléments qui permettent de distinguer une fonction disponible d’une intégration complète. Le matériau indique une implémentation en TypeScript, sous licence MIT, avec 2078 étoiles et 452 issues ouvertes. Ces métadonnées décrivent l’état observé, pas un niveau de support garanti.
Conclusion éditoriale
tasknotes convient aux personnes qui acceptent ses dépendances et ses limites documentées. Il ne convient pas à un usage exigeant des garanties que le README ne donne pas. Avant adoption, exécutez le parcours propre à tasknotes, observez les sorties et vérifiez les permissions, les données et la version réellement utilisées.
Notes de la communauté