Let's Automate Node.js Dependency Updates ![rw-book-cover](https://i.ytimg.com/vi/xiLjgBPnQT0/maxresdefault.jpg) ## Metadata - Author: [[OpenJS Foundation]] - Full Title: Let's Automate Node.js Dependency Updates - Category: #articles - Document Note: --- tags: [#para, #obsidian, #secondbrain] - #para - #obsidian - #secondbrain Author: John Maverick Source: YouTube - "Go From PARA Method Beginner to Second Brain Pro with Obsidian MD (Free Setup Templates and Course)" Reference: [Watch on YouTube](https://www.youtube.com/watch?v=445yxZbj4H4) date created: 2025-08-24 07:15 --- # Title: Going Beyond Folders: PARA Method and Second Brain with Obsidian ## Table of Contents: - [๐Ÿ“ Summary](#-summary) - [๐Ÿ“– Main Content](#-main-content) - [๐Ÿ—’๏ธ Notes](#๏ธ-notes) - [๐Ÿ“– References](#-references) - [๐Ÿ—ฃ๏ธ Paraphrase](#-paraphrase) - [๐Ÿ“ฐ Newsletter](#-newsletter) - [โœ… Action Items](#-action-items) - [๐Ÿงช Hypotheses](#-hypotheses) - [๐Ÿ“Š Methodology](#-methodology) - [โ“ Questions](#-questions) - [๐Ÿ”ฎ Future Research](#-future-research) - [๐Ÿ’ก Implications](#-implications) - [๐Ÿง  Learning Styles Assessment](#-learning-styles-assessment) - [๐Ÿ“Š Accessibility Assessment](#-accessibility-assessment) - [๐ŸŒ DEIB Assessment](#-deib-assessment) - [โœ… Logical Validity](#-logical-validity) - [๐Ÿ” DARVO Analysis](#-darvo-analysis) - [๐Ÿ” SEO Evaluation](#-seo-evaluation) - [๐ŸŽฏ Conclusion](#-conclusion) --- ## ๐Ÿ“ Summary: The PARA method (Projects, Areas, Resources, Archives) provides a framework for digital knowledge management. While many use folders to implement it, this approach is limiting. In Obsidian, notes can act as organizational containers, enhanced with links, templates, and queries. By evolving from simple folders to note-based systems, users can transform Obsidian into a second brainโ€”capable of cross-linking, tracking, and personalizing information. Plugins like **Templator** and **Dataview** enable automation, classification, and database-like queries, elevating the system from storage to dynamic knowledge expression. --- ## ๐Ÿ“– Main Content: The video emphasizes moving beyond folders, which are static and restrictive, toward dynamic note-based systems. John Maverick introduces a three-level model: - **Level 1**: Folders (traditional, limited). - **Level 2**: Links (notes referencing other notes, multi-context usage). - **Level 3**: Templates and Queries (automation, dashboards, personalization). Obsidian becomes more than a note repositoryโ€”it transforms into a **knowledge management engine**. Using plugins, metadata properties (tags, deadlines, status) can be embedded in notes, which are then queried and displayed in dashboards. This mimics how the brain connects ideas, making knowledge accessible, adaptable, and actionable. ### ๐Ÿ—’๏ธ Notes - [00:04](https://www.youtube.com/watch?v=445yxZbj4H4&t=4) Folders = entry-level PARA use. - Projects, Areas, Resources, Archives. - Limit: notes can only live in one folder. - [02:15](https://www.youtube.com/watch?v=445yxZbj4H4&t=135) Links replace rigid folders. - Notes-as-folders โ†’ flexible, customizable. - Headers and bullets structure knowledge. - [04:34](https://www.youtube.com/watch?v=445yxZbj4H4&t=274) Notes gain context. - Include titles, thumbnails, scripts. - Links interconnect multiple contexts. - [06:43](https://www.youtube.com/watch?v=445yxZbj4H4&t=403) Templates add metadata. - Properties: status, tags, deadlines, links. - Plugins automate structure creation. - [11:00](https://www.youtube.com/watch?v=445yxZbj4H4&t=660) Dataview plugin โ†’ Obsidian as database. - Queries generate tables, lists, Kanban boards. - Cross-note dashboards highlight relationships. - [13:14](https://www.youtube.com/watch?v=445yxZbj4H4&t=794) Automation reduces redundancy. - Single link creates bidirectional tracking. - Notes self-update in dashboards. - [15:39](https://www.youtube.com/watch?v=445yxZbj4H4&t=939) Sorting & organizing at scale. - Alphabetical, chronological, categorical. - PARA is only one piece; CODE (Capture, Organize, Distill, Express) completes the second brain. --- ## ๐Ÿ“– References: - Tiago Forte, *Building a Second Brain*. - Obsidian Documentation: [https://help.obsidian.md](https://help.obsidian.md) - Dataview Plugin Docs: [https://blacksmithgu.github.io/obsidian-dataview/](https://blacksmithgu.github.io/obsidian-dataview/) - Templater Plugin: [https://silentvoid13.github.io/Templater/](https://silentvoid13.github.io/Templater/) --- ## ๐Ÿ—ฃ๏ธ Paraphrase: 1. **Original**: โ€œFolders were made over a hundred years agoโ€ฆ but now weโ€™re in the digital age.โ€ **Paraphrase**: Traditional folder systems belong to the paper era, but digital knowledge requires dynamic tools. 2. **Original**: โ€œWe can now use templates and queries to automate classification.โ€ **Paraphrase**: By applying templates and Dataview, notes self-organize and surface insights automatically. --- ## ๐Ÿ“ฐ Newsletter: ๐Ÿง  **Level Up Your PARA with Obsidian!** Folders alone wonโ€™t build your second brain. In his latest tutorial, John Maverick shows how to **transform PARA from static storage to dynamic knowledge flow** using Obsidian. โœจ Highlights: - Move from rigid folders to **flexible linked notes**. - Add **metadata + templates** to personalize projects. - Use **Dataview queries** to generate dashboards, Kanban boards, and resource maps. ๐ŸŽ Bonus: Grab the free **Obsidian Vault + course** to set up your own second brain. ๐Ÿ‘‰ Watch now: [Go From PARA Method Beginner to Second Brain Pro](https://www.youtube.com/watch?v=445yxZbj4H4) --- ## โœ… Action Items: - Position PARA + Obsidian as a case study in **open-source tools for personal knowledge management**. - Draw parallels between second-brain practices and **sustainable contributor onboarding**. - Emphasize metadata โ†’ community health metrics in WordPress. - Highlight plugin ecosystem as an example of **open-source extensibility**. - Apply learnings to OSPO design: structured knowledge = sustainable governance. --- ## ๐Ÿงช Hypotheses: - Dynamic linking + templates improve contributor onboarding. - Metadata-driven dashboards reduce friction in collaboration. - PARA + Obsidian principles can inform WordPress contributor documentation design. ### ๐Ÿ“Š Methodology: - User testing with new contributors using folder vs linked-note systems. - Comparative analysis: traditional docs vs Dataview dashboards. - Surveys to measure time-to-value in onboarding. ### โ“ Questions: - How can PARA inform contributor pathways in WordPress? - Should OSS projects adopt metadata-first documentation? - Could Dataview-like dashboards become standard in OSPO knowledge hubs? ### ๐Ÿ”ฎ Future Research: - Explore PARA/CODE alignment with **OSS contributor journey**. - Test plugin-driven governance dashboards in WordPress. - Assess accessibility of metadata-driven systems for neurodiverse contributors. ### ๐Ÿ’ก Implications: - Could lead to **next-gen contributor onboarding** frameworks. - May establish **open knowledge best practices** in OSPO governance. - Enhances transparency, sustainability, and inclusivity. --- ## ๐Ÿง  Learning Styles Assessment: - **Visual**: Demonstrations + Obsidian interface shown โ†’ โœ…. Add flowcharts. - **Aural**: Narrated video explains well โ†’ โœ…. Could offer audio-only summary. - **Verbal**: Clear, analogy-driven โ†’ โœ…. Add more real-world metaphors. - **Kinesthetic**: Guided demo steps = partial โœ…. Add hands-on exercises. - **Logical**: Strong structure + stepwise logic โ†’ โœ…. More comparative charts needed. - **Social**: Minimal โ†’ โŒ. Suggest community discussion prompts. - **Solitary**: Journaling/reflection prompts missing โ†’ โŒ. Add practice logs. - **Naturalistic**: None โ†’ โŒ. Could add analogies from ecosystems. --- ## ๐Ÿ“Š Accessibility Assessment: - Screen reader: likely weak due to plugin-heavy visuals โ†’ โŒ. Add alt-text. - Keyboard navigation: not discussed โ†’ โŒ. Suggest improvement. - Contrast: clear in Obsidian, but video examples lacked contrast text. - Responsiveness: depends on Obsidian theme; not universal. --- ## ๐ŸŒ DEIB Assessment: - Cultural diversity: Absent. Add global knowledge practices. - Inclusive language: โœ… gender-neutral, accessible tone. - Neurodiversity: Potential overload from plugins โ†’ needs chunking. - Representation: No diverse identities highlighted. - - Summary: The author describes an initiative to automate the dependency updates for Node.js, which is a best practice to ensure that all dependencies are up to date, reducing errors, enhancing security, and maintaining compatibility. The project includes documentation, update scripts, GitHub actions, and backward initiatives. It is an ongoing process, with still some work to be done, but it has already had good results, with 51% of all dependencies being automated in 2023, thanks to the work of the security working group and contributors like Tobias Ranieri and Targos. - URL: https://www.youtube.com/watch?v=xiLjgBPnQT0&list=PLyspMSh4XhLO15jJD9Sj069fN18j12AbQ&index=11&ab_channel=OpenJSFoundation okay let's get started soyeah tonight we're going to talk aboutlet's automate node dependency updateI'm very happy to be here at thecollaborator Summit in my first time solet me introduce myselfI'm Marco Polito I'm working near firmas a development experience engineer andalso I'm a node.js collaborator activein security and HTTP module I'm From Italy now it's 1am so yeah I'm going toto be quiet as possibleso let's get startedohso as you might know from the previoustalk from Raphael and Michael there werea few quite a few initiatives from thesecurity working group this year one ofthem was permission model that had great success andyeah it was amazingand one of the other initiative that youcan find here one of them is theautomate dependency update sobasically what we are doing is uh as thename suggests Alchemy the dependencyupdate of all node dependencies whichare quite a fewokay but why we want to do this so yeah the the main reason isto ensure that all dependencies are upto date so this allows to save a lot oftime and effort so later you will seesome statistics some data about how manypull requests are donefor dependencies and hundreds of them sothere are people who have openedhundreds around like 300 full requests in the past few years just to updatedependencies and that's a lot of effortand also we want to reduce errors wewant to enhance the project security sowe don't really have tokeep track of new patches because everyweek there will be updated sothat'sthat reduces a lot of area of attack ofall dependencies and basically it reduce all the human error because it's allautomated soand another thing is it helpsmaintaining compatibility because if weupdate dependencies step by step weensure that every the update iscompatible with the previous one well ifwe jump from one version to anothermeasure there might be breaking changesand might require a lot of workso let's see what have we doneso mostlythere were four areas on which wefocusedso the first of allum is documentation because our maingoal is to have a document that keepstrack of all dependencies so to be clearand easy to understand which are thedependencies of the node.js project and second of all we wanted to createupdate scripts that workmanually but also automatically so if Ineed to update a dependency or gentlybecause for example there is a urgentvulnerability that needs to be patched Ican do it manually I don't need to waitfor the automation to do its thingand the third one is GitHub actionswe're going to go in that of all of themsoI'm just giving a quick overview the third one is GitHub action so we want tocreate we want to use GitHub action withuh quite handy for this stuff and sothey will run weeklyand do a lot of operations thatotherwise would be has to be donemanually and that's required thatrequires a lot of assetsand the fourth one and it's back partingso we want to back part dependencyupdates to previous release line but we will go into that in a while sodocumentation so what have we done inthe in the documentation side so wecreated under the maintaining foldera document that basically keeps track ofevery single dependency which are 22currently in the v20 version andbasically describes what everydependency does and how to update it and this is something that node.js waslacking and basically it required on asort of tribal knowledgeto know exactly what every dependencywas doing and how to update it so havinga document really helps a lot thecommunity and also makes it easier tocontribute and to fix problemand also we wanted to create a folderwhere we store all the maintaining documents which are basically documentsthat describe a process to maintain adependency or to do somethingsome maintenance work on the project sowe store everything in the same placeand obviouslyit's a good thingso on the second one we have updateScriptsso as I said before we created a bashscript for every dependency so we have the whole process automated afew ones were quite tricky for exampleV8 butalsowe updated the old ones because in thepast you need to manually input theversion you want to Target for thatdependence update and we basicallyautomated so every script search for thelatest version and downloads it andreplace it into the adapts folder and we go to GitHub actionsso we have a GitHub action that runsevery Sunday morningat5am sowhere when everybody in Europe issleeping and basically runs all theseScriptsand uh yeah it checks if there are newdependencies on the Upstreamand it will download them and replace the in the depths folderand also we have created some particularGitHub actions forcomplex update procedures for exampleopen SSL required a complex workflowalso V8 requires a complex workflow sobasically it's a an extra step to ensurethat the process runs smoothly and it's also easier to maintain instead ofhaving just one action one big actionfor everything we wanted to isolatespecial cases and take care of themseparatelyand at last we have backwards this is aongoing[Music]initiative still ongoing so if you wantto help with that please reach out sobasically what we want to do is when we have a new patch on a dependencycurrently it only update on the mainbranch so what we want to do is to takethat commit and bring it to anotherrelease line for example from Main to 20to 18 to 16. so that we can have alsoall the release lines up to dateand also we want to take care of dependencies that are no longercompatible with main because for examplethey don't exist anymore on Main or theyuse a different measureand so basically until now they are abit forgottenso if nobody decided to back part ortouch them manually they will not bepatched and if there are vulnerabilitiesor security concernsthis might be a problem so that's why we wanted to automate the back partingprocedureand facilitate the this whole processsoa bit of numbersright now so I I did a query on GitHubto sayum how things change in the in the pastyearsso basicallywhat I did is search how many dependency PR were done in the past years so in thein 2031 there were193 closed pool requests that had in thetitle that's which is the keyword fordependencies and 0.5 percent of themwere automated so just one from thepandabotso all the work was done manually sothere was someone that took care of all of this dependencies manually whichis a lot of work and we can see theprogression here in 2022 we have 24percent which isbetter but not quiteas you can see we have like58 dependencies opened by bot becausethis alldependency update initially started uhin 2022and it has been ongoing uh until now it's still open but we automated almostevery dependency so there's just oneleft and as you can see in 2023 51 ofall the dependencies were automated andthis trend is going to increase asthingsare as we add more and more automationmore and more dependencies and backports so this is this represents the the great job that has been done soI want to thank the security workinggroup for all the work and as you cansee this initiative uh it was 22 pullrequests from four contributors which isTobias Ranieri 93 and meand with this initiative we brought intothe node project a new contributor which is Ranieri with he made his firstcommentwith a dependency update and alsoumI want to do a big time to targosbecause it did basically take care ofall the dependency update he didsomething like 300 dependence updatefull requests in the past few years sothat's a crazy amount of workthat we have automatedand yeah basically that's it I'm trying tokeep it short because very late tonightand yeahthere are any questions I will read themin chat wellthere are no questionsumvery happy tobe here and I would like to thank youeverybody especially in your form forall the work that are sponsored on thenode.js projectand big thanks toeverybody here tonight and thanks a lotguys, Let's Automate Node.js Dependency Updates, OpenJS Foundation, 01h3j60325jtv58qdzyh4mf217.