Using Generative AI to generate tons of content can create a giant mess. One must keep your content clean and consistent and version controlled.
It's a pain, and it involves a lot of scripting and command line work.
Let's aggregate all that here.
I'm trying to create an "observer" that uses the node filesystem built in functions to watch for changes in the content submodule and then enforce various yaml standards.
. |-- 2025-03-25_tree--scripts.html |-- 2025-03-26_tree-tidyverse.html |-- changelog-scripts | `-- runChangelogSinceLastCheckpoint.cjs |-- README.md `-- tidy-up |-- assure-tidy-frontmatter-delimiters | |-- detectYoutubeUrlsAsKeyLinesInFrontmatter.cjs | |-- removeBrokenYoutubeUrlsInsideFrontmatter.cjs | `-- removeTwoBackToBackFrontmatterDelimiters.cjs |-- attemptToFixKnownErrorsInYAML.cjs |-- cleanAfterObsidianFileConflicts.cjs |-- detectFrontmatterFormatting.cjs |-- isolateAndCleanYAMLFormattingOnly.cjs |-- listAllUsedPropertyNamesEverywhere.cjs |-- runPropertyFixes.cjs |-- standarize-svgs | |-- cleanup-trademarks_02.sh | |-- cleanup-trademarks.sh | |-- convertVisualsToAstro.cjs | |-- setHeightForFixedHeightTrademarks.cjs | `-- tidyUpSVGsForRibbon.cjs |-- tidy-one-property | |-- assure-all-have-base-frontmatter | |-- assure-clean-screenshots | |-- assure-clean-tags | |-- assure-clean-url-properties | |-- assure-one-site-uuid | |-- assure-safe-backlinks | |-- assure-safe-errors | |-- assure-unique-properties | |-- asure-clean-timestamps | |-- helperFunctions.cjs | |-- runFrontmatterFixes.cjs | |-- standardize-one-key | |-- standardize-one-line | |-- standarize-one-value | |-- standarize-reports | |-- standarize-separators-in-body | `-- tidyOneAtaTimeUtils.cjs |-- tidyCorruptedYAMLSyntax.cjs |-- tidyQuotesAsStringDelimiters | `-- detectAndFixQuotesOnKnownIrregularities.cjs `-- utils 22 directories, 23 files