41554 blogs · [ { "id": "01a0d36e-5f86-7033-a1c6-eb9ad18640a0", "title": "Visibility (Observability and Monitoring)", "url": "https://kieranpotts.com/bookmarks/infrastructure/observability/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad2478422", "title": "Logging", "url": "https://kieranpotts.com/bookmarks/infrastructure/observability/logging/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad2b0ec51", "title": "Monitoring", "url": "https://kieranpotts.com/bookmarks/infrastructure/observability/monitoring/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad2f19c78", "title": "Observability", "url": "https://kieranpotts.com/bookmarks/infrastructure/observability/observability/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad380c9f4", "title": "Stats aggregation", "url": "https://kieranpotts.com/bookmarks/infrastructure/observability/stats-aggregation/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad47ad559", "title": "Tracing", "url": "https://kieranpotts.com/bookmarks/infrastructure/observability/tracing/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad5789d3e", "title": "Private cloud solutions", "url": "https://kieranpotts.com/bookmarks/infrastructure/private-cloud/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad5f64cc9", "title": "Communication protocols", "url": "https://kieranpotts.com/bookmarks/infrastructure/protocols/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad691eb8d", "title": "Cloud storage and data backup services", "url": "https://kieranpotts.com/bookmarks/infrastructure/public-cloud/cloud-storage-and-data-backup-services/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad73e3e92", "title": "Function-as-a-service (aka. serverless)", "url": "https://kieranpotts.com/bookmarks/infrastructure/public-cloud/function-as-a-service/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad80403e7", "title": "Public cloud services", "url": "https://kieranpotts.com/bookmarks/infrastructure/public-cloud/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad8d5d75e", "title": "Major public cloud services", "url": "https://kieranpotts.com/bookmarks/infrastructure/public-cloud/major-public-cloud-services/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad8eaa5c8", "title": "Platform-as-a-service", "url": "https://kieranpotts.com/bookmarks/infrastructure/public-cloud/platform-as-a-service/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad97015a4", "title": "Static site hosting", "url": "https://kieranpotts.com/bookmarks/infrastructure/public-cloud/static-site-hosting/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ad9e765d6", "title": "VPS, dedicated, and managed hosting", "url": "https://kieranpotts.com/bookmarks/infrastructure/public-cloud/vps-dedicated-and-managed-hosting/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9adaa1bab6", "title": "Service communication protocols", "url": "https://kieranpotts.com/bookmarks/infrastructure/service-communication/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9adb54ce06", "title": "Service mesh and service discovery", "url": "https://kieranpotts.com/bookmarks/infrastructure/service-mesh/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9adb8a36a3", "title": "Task queues (aka. job queues)", "url": "https://kieranpotts.com/bookmarks/infrastructure/task-queues/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9adb95ddcb", "title": "Infrastructure testing", "url": "https://kieranpotts.com/bookmarks/infrastructure/testing/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9adc78aad8", "title": "TLS/SSL certificate authorities", "url": "https://kieranpotts.com/bookmarks/infrastructure/tls/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9add4c0199", "title": "Container systems", "url": "https://kieranpotts.com/bookmarks/infrastructure/virtualization/container-systems/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9addcabf24", "title": "Virtualization and containerization", "url": "https://kieranpotts.com/bookmarks/infrastructure/virtualization/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ade277069", "title": "Virtualization systems", "url": "https://kieranpotts.com/bookmarks/infrastructure/virtualization/virtualization-systems/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ade7430fc", "title": "VM and container image libraries", "url": "https://kieranpotts.com/bookmarks/infrastructure/virtualization/vm-and-container-image-libraries/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9adf0393f1", "title": "Web/HTTP servers", "url": "https://kieranpotts.com/bookmarks/infrastructure/web-servers/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9adfb9ed66", "title": "Data interchange formats", "url": "https://kieranpotts.com/bookmarks/languages/data-formats/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9adfbe3169", "title": "Domain-specific scripting languages", "url": "https://kieranpotts.com/bookmarks/languages/domain-specific/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae066b1d6", "title": "Text encoding systems", "url": "https://kieranpotts.com/bookmarks/languages/encoding/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae0b01862", "title": "Languages", "url": "https://kieranpotts.com/bookmarks/languages/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae136c203", "title": "Interface definition languages", "url": "https://kieranpotts.com/bookmarks/languages/interface-definitions/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae1abae21", "title": "HTML", "url": "https://kieranpotts.com/bookmarks/languages/markup/html/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae221cdbb", "title": "Text markup languages", "url": "https://kieranpotts.com/bookmarks/languages/markup/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae2a4a86a", "title": "Lightweight text markup", "url": "https://kieranpotts.com/bookmarks/languages/markup/lightweight-text-markup/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae35aba1f", "title": "Typesetting systems and heavyweight markup", "url": "https://kieranpotts.com/bookmarks/languages/markup/typesetting-systems-and-heavyweight-markup/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae3eb6a04", "title": "Modelling languages", "url": "https://kieranpotts.com/bookmarks/languages/modeling/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae492a746", "title": "C family languages", "url": "https://kieranpotts.com/bookmarks/languages/programming/c-family-languages/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae559683c", "title": "Data-centric programming languages", "url": "https://kieranpotts.com/bookmarks/languages/programming/data-centric-programming-languages/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae569263a", "title": "Engines", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/engines/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae65d42a3", "title": "ECMAScript languages", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae6b5dc84", "title": "Language dialects and extensions, compile-to-JS languages", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/language-dialects-and-extensions/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae77f5ab6", "title": "Language specifications and proposals", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/language-specifications-and-proposals/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae8245f5b", "title": "Organizations", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/organizations/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae861fae0", "title": "Reference", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/reference/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae90437bf", "title": "Runtimes", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/runtimes/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9ae9f55039", "title": "Benchmarking and runtime analysis", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/benchmarking-and-runtime-analysis/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9aea0cf911", "title": "Build tools and task runners", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/build-tools-and-task-runners/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9aea365a9b", "title": "Code editors and IDEs", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/code-editors-and-ides/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9aeacba0d4", "title": "Code sandboxes/playgrounds/REPLs", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/code-sandboxes-playgrounds-repls/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9aebbd98c2", "title": "Compilers/transpilers and parsers", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/compilers-transpilers-and-parsers/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9aec3dec61", "title": "Dependency analysis", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/dependency-analysis/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9aecabd2fd", "title": "Development lifecycle automation", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/development-lifecycle-automation/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9aed59ca59", "title": "Documentation generators", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/documentation-generators/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9aedff724d", "title": "Dummy/fake data generation", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/dummy-fake-data-generation/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9aee506e63", "title": "File watching and hot reloading", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/file-watching-and-hot-reloading/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9aeebcfa99", "title": "Hot JS module reloading", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/hot-js-module-reloading/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9aeefa24a5", "title": "Tools", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9aef3f92e4", "title": "Module systems (legacy)", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/module-systems-legacy/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af02574a4", "title": "Package managers", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/package-managers/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af0d1c84d", "title": "Package registries and hosting", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/package-registries-and-hosting/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af0d64b10", "title": "Runtime process managers", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/runtime-process-managers/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af0fe9529", "title": "Runtime transpilers and module loaders", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/runtime-transpilers-and-module-loaders/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af111faa5", "title": "Runtime version managers", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/runtime-version-managers/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af1cf24ab", "title": "Script runners", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/script-runners/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af210cba8", "title": "Single executables", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/single-executables/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af25ba869", "title": "Static analysis and linting", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/static-analysis-and-linting/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af320875b", "title": "Testing frameworks", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/testing-frameworks/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af3c5cebd", "title": "Workspace management (Monorepos)", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/tools/workspace-management-monorepos/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af49164ca", "title": "Asynchronous JavaScript (promises)", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/asynchronous-javascript-promises/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af5280131", "title": "Authentication", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/authentication/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af5aedf04", "title": "Authorization", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/authorization/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af623776b", "title": "Browser automation and web scraping", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/browser-automation-and-web-scraping/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af6e237cc", "title": "CLI abstractions/frameworks", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/cli-abstractions-frameworks/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af7257063", "title": "Color manipulation", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/color-manipulation/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af77d1447", "title": "Configuration and env loaders", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/configuration-and-env-loaders/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af7c9c192", "title": "Cookie abstractions", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/cookie-abstractions/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af864576e", "title": "Cryptography and hashing", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/cryptography-and-hashing/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af94dc624", "title": "Data structures, entities and value objects", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/data-structures-entities-and-value-objects/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9af9f59b3e", "title": "Database and storage abstractions and ORMs", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/database-and-storage-abstractions-and-orms/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9afa77ae94", "title": "Datetime libraries", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/datetime-libraries/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9afac9a648", "title": "DB drivers", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/db-drivers/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9afb7ba06c", "title": "Dependency injection + service locator (IoC)", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/dependency-injection-service-locator-ioc/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9afc02e24f", "title": "Diffing (text) libraries", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/diffing-text-libraries/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9afc109a15", "title": "DOM implementations and fakes", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/dom-implementations-fakes/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9afc74a56a", "title": "Email delivery", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/email-delivery/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9afd484c1e", "title": "Event emitters and pubsub", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/event-emitters-and-pubsub/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9afd5fb04a", "title": "Feature detection and useragent/browser/runtime detection", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/feature-detection-useragent-browser-runtime-detection/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9afdf201aa", "title": "File archiving and compression", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/file-archiving-and-compression/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9afe8069b5", "title": "File type / mimetype detection", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/file-type-mimetype-detection/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9afe99fb0f", "title": "Form and file upload processing", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/form-and-file-upload-processing/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9afecca3ed", "title": "General utility and functional programming libraries", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/general-utility-and-functional-programming-libraries/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9aff8f6b57", "title": "Geospatial analysis", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/geospatial-analysis/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9b00269838", "title": "Graphics", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/graphics/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9b00cfc164", "title": "Hot module reloading", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/hot-module-reloading/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9b017405dd", "title": "HTTP and WebSocket clients", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/http-and-websocket-clients/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9b0232f825", "title": "HTTP and WebSocket servers", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/http-and-websocket-servers/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9b026bd9ff", "title": "Image generation and processing", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/image-generation-and-processing/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9b02726c2f", "title": "Vendors (pure ES/TS + server-side runtimes)", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9b028b50dc", "title": "Internationalization and localization", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/internationalization-and-localization/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9b035d0e56", "title": "JSON Schema validation", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/json-schema-validation/index.html", "published_at": "2026-09-24T06:58:17+00:00" }, { "id": "01a0d36e-5f86-7033-a1c6-eb9b039dfedb", "title": "JSX implementations", "url": "https://kieranpotts.com/bookmarks/languages/programming/ecmascript-languages/vendors/jsx-implementations/index.html", "published_at": "2026-09-24T06:58:17+00:00" } ] posts Claim your blog
Back to kieranpotts.com
Blog · corpus.blog/blogs/kieranpotts.com/posts

kieranpotts.com

kieranpotts.com

2026

24 Sept 2026
24 Sept 2026