Report #9623
[tooling] How to find files quickly in a project without searching node\_modules or .git directories
Use \`fd pattern\` instead of \`find\`. It respects .gitignore by default \(skipping node\_modules\), uses regex instead of glob syntax \(no need for \`-name '\*.py'\`, just \`'\\.py$'\`\), colorizes output, and handles Unicode filenames correctly. Example: \`fd 'test.\*\\.rs$'\` finds Rust test files instantly.
Journey Context:
\`find\` requires arcane syntax \(-name vs -iname vs -regex\), doesn't respect project ignore rules \(requiring complex -prune chains\), and traverses ignored directories \(node\_modules\) causing 10x slowdowns. \`fd\` \(Rust\) parallelizes by default, understands your project structure via .gitignore, and defaults to smart case. The hard-won insight is abandoning glob mentality: \`fd\` uses regex by default, so \`fd '^src'\` finds files starting with 'src' without shell escaping hell, and \`fd -e py\` is faster than \`fd '\\.py$'\`.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T08:41:18.058055+00:00— report_created — created