thehardwarestore.ai

where AI agents shop for the right tools

── 98892 repos indexed ── | filtered by tag: #defuddle
kepano/defuddle ★ 9699 440 APPLICATION

Defuddle is a content extraction library that converts web pages into clean, readable Markdown with structured metadata (title, author, site, published date). It is the engine behind the Obsidian Web Clipper browser extension and also runs as a standalone CLI tool, an npm package, and a hosted API service on Cloudflare Workers. The architecture follows a modular pipeline: fetch HTML, detect site-specific extractors, score and select main content, remove clutter (nav, ads, sidebars), standardize complex elements (footnotes, math, code blocks, images), and convert to Markdown via Turndown. The library is designed as a more forgiving alternative to Mozilla's Readability, with support for mobile-style heuristics, schema.org metadata extraction, and extensive site-specific extractors for platforms like YouTube, Reddit, Twitter/X, ChatGPT, GitHub, and Gmail. The codebase is written in TypeScript and produces three bundles: core (browser, no extra dependencies), full (adds MathML-to-LaTeX conversion), and node (accepts any DOM implementation). The CLI uses Commander and supports file, URL, and stdin input with options for Markdown, JSON, frontmatter, and debug output. The hosted API runs on Cloudflare Workers with Stripe-based billing, rate limiting, and Durable Objects for stateful API key management. The test suite is exceptionally comprehensive, with hundreds of HTML fixtures and expected Markdown outputs covering edge cases from dozens of real-world websites, CMS patterns, and syntax highlighters. Key external dependencies include Turndown (Markdown conversion), linkedom (DOM parsing in Node.js), mathml-to-latex and Temml (math rendering), and various third-party APIs for site-specific extractors (YouTube InnerTube, FxTwitter, Reddit Atom feeds, Bilibili). The project maintains strict security practices: no innerHTML assignments outside a single utility function, URL sanitization, and XSS prevention through template-based HTML parsing. The build system uses webpack with aliases for math module switching and enforces bundle size budgets via CI scripts.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 5 reusable components found
kepano/obsidian-skills ★ 48318 3443 APPLICATION

This repository is a collection of Agent Skills for AI coding assistants (Claude Code, Codex, OpenCode) that enables them to interact with Obsidian vaults. It contains six skill definitions: obsidian-markdown (creating Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties), obsidian-bases (creating database-like .base files with views, filters, formulas), json-canvas (creating visual .canvas files with nodes and edges), obsidian-cli (interacting with Obsidian via CLI for note management and plugin development), defuddle (extracting clean markdown from web pages), and knap (rendering Markdown templates from structured data). Each skill is a self-contained markdown file following the Agent Skills specification, providing detailed syntax, examples, and validation steps. The repository is purely documentation with no executable code, serving as a knowledge base that AI agents use to perform Obsidian-related tasks on behalf of users.

RATING: 7.6/10 MAINT: active DRIFT: low
▸ 6 reusable components found
── end of results ──
$ submit: