Scanner — tailwindcss Architecture
Manages directory walking and file discovery for auto-source detection.
Entity Profile
Dependency Diagram
graph TD subdomain_Oxide_Scanner["Scanner"] d384f4f3_dd45_7a54_6973_dcf22067d131["app.tsx"] subdomain_Oxide_Scanner --> d384f4f3_dd45_7a54_6973_dcf22067d131 52347134_96cd_d924_bf0e_ace2445ef938["overrides.rs"] subdomain_Oxide_Scanner --> 52347134_96cd_d924_bf0e_ace2445ef938 6b48c515_a72f_7a7d_7ea7_b80f71a82b19["scanner.rs"] subdomain_Oxide_Scanner --> 6b48c515_a72f_7a7d_7ea7_b80f71a82b19 23d03804_a9a2_99ea_5362_f402708f8ba3["index.ts"] subdomain_Oxide_Scanner --> 23d03804_a9a2_99ea_5362_f402708f8ba3 8110b4e3_7021_63c1_8868_4afb3b08a7de["index.test.ts"] subdomain_Oxide_Scanner --> 8110b4e3_7021_63c1_8868_4afb3b08a7de 4b9fb355_7055_4825_6db8_a5dd6f45c06e["default-theme.ts"] subdomain_Oxide_Scanner --> 4b9fb355_7055_4825_6db8_a5dd6f45c06e 990ff273_1c94_4f96_c7f9_ccba0f65db9c["detect_sources.rs"] subdomain_Oxide_Scanner --> 990ff273_1c94_4f96_c7f9_ccba0f65db9c 1721da0c_9e1d_5bee_ab0a_a192cfa6640d["apply.ts"] subdomain_Oxide_Scanner --> 1721da0c_9e1d_5bee_ab0a_a192cfa6640d 2edc6732_180e_8223_de2c_856c87ce7657["index.ts"] subdomain_Oxide_Scanner --> 2edc6732_180e_8223_de2c_856c87ce7657 7a8b38fe_f674_f253_e4c8_9043c8b072e0["container.ts"] subdomain_Oxide_Scanner --> 7a8b38fe_f674_f253_e4c8_9043c8b072e0 c05975bc_af4f_b1a7_fc10_2de6cfa57ccd["compare-breakpoints.ts"] subdomain_Oxide_Scanner --> c05975bc_af4f_b1a7_fc10_2de6cfa57ccd 1b8f1c54_b1e9_e18d_0719_b7ad92808185["walk.ts"] subdomain_Oxide_Scanner --> 1b8f1c54_b1e9_e18d_0719_b7ad92808185 b82a42d6_b7d3_c6d2_1e14_451f8382da81["mod.rs"] subdomain_Oxide_Scanner --> b82a42d6_b7d3_c6d2_1e14_451f8382da81 3dc429a0_5545_c843_5c3d_ae12e834e123["ui.spec.ts"] subdomain_Oxide_Scanner --> 3dc429a0_5545_c843_5c3d_ae12e834e123 style subdomain_Oxide_Scanner fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Domain
Functions
- App()
- Home()
- T()
- WalkAction.Replace()
- absolute_parent()
- actual()
- addBuildDependency()
- addWhitespaceAroundMathOperators()
- add_gitignore()
- add_ignore()
- add_parents()
- add_str()
- advance_by()
- advance_twice()
- allow_directories()
- applyImportant()
- asColor()
- bareAspectRatio()
- bareMilliseconds()
- barePercentages()
- bareValues()
- binary()
- blue()
- build()
- build()
- buildImportNodes()
- build_global()
- build_parallel()
- builder()
- bytes()
- canonicalizeDimension()
- cartesian()
- case_insensitive()
- check_symlink_loop()
- clearNamespace()
- clone()
- cloneAstNodeSpread()
- cloneCandidateSpread()
- cloneVariant()
- compare()
- compareBreakpoints()
- compile()
- compoundsForSelectors()
- compoundsWith()
- constructor()
- constructor()
- constructor()
- createCompatConfig()
- createCompiler()
- createPrefixedQuad()
- createSetup()
- create_files_in()
- create_folders()
- create_gitignore()
- create_walker()
- current_dir()
- custom_ignore()
- custom_ignore_exclusive_use()
- custom_ignore_precedence()
- deactivate_worker()
- deepMerge()
- default.accentColor()
- default.backdropBrightness()
- default.backdropGrayscale()
- default.backdropInvert()
- default.backdropSaturate()
- default.backgroundColor()
- default.borderColor()
- default.borderSpacing()
- default.caretColor()
- default.divideColor()
- default.divideWidth()
- default.flexBasis()
- default.gradientColorStops()
- default.margin()
- default.minHeight()
- default.padding()
- default.ringColor()
- default.scrollMargin()
- default.serialize()
- default.size()
- default.stroke()
- default.textIndent()
- depth()
- dim()
- empty()
- end()
- entries()
- entry()
- error()
- error()
- errored_both()
- errored_partial_and_ignore()
- escape()
- exclude_lowest()
- expand()
- expandDeclaration()
- expand_tilde()
- explicit_ignore()
- extract()
- extractConfigs()
- extract_candidates()
- extract_css_variables()
- filter()
- flush()
- fmt()
- fmt()
- fmt()
- follow_links()
- format()
- format_byte_size()
- from()
- fun()
- functional()
- functional()
- get()
- getCompletions()
- getKeyframes()
- get_candidates_with_positions()
- get_files()
- get_globs()
- get_normalized_sources()
- get_work()
- git_exclude()
- git_ignore()
- git_ignore()
- git_info_exclude_in_linked_worktree()
- gitconfig_home_contents()
- gitignore_allowed_no_git()
- gitignore_parent()
- gitignore_with_jj()
- gracefullyRemove()
- has()
- hidden()
- hidden()
- highlight()
- id()
- ignore()
- include_str()
- include_str()
- inferDataType()
- init_tracing()
- injectFallbackForInitialFallback()
- inner()
- into_io_error()
- isAbsoluteSize()
- isBackgroundPosition()
- isColor()
- isImage()
- isPercentage()
- isValidSpacingMultiplier()
- isVarCache()
- isVector()
- is_ascii_whitespace()
- is_continue()
- is_dir()
- is_empty()
- is_io()
- is_none()
- is_only_dir()
- is_quit_now()
- is_stdin()
- is_whitelist()
- it_includes_skipped_by_default_extensions_with_a_specific_source()
- it_respects_gitignore_in_workspace_root()
- it_respects_gitignore_in_workspace_root_for_manual_globs()
- it_should_be_possible_to_scan_in_the_parent_directory()
- it_should_expand_multiple_expansions_in_the_same_folder()
- it_should_find_new_extensions()
- it_should_ignore_and_expand_nested_ignored_folders()
- it_should_ignore_binary_files()
- it_should_ignore_known_extensions()
- it_should_ignore_known_files()
- it_should_ignore_negated_custom_sources()
- it_should_include_defined_extensions_that_are_ignored_by_default()
- it_should_keep_globs_that_start_with_folder_wildcards_as_is()
- it_should_keep_the_negation_symbol_for_all_new_patterns()
- it_should_list_all_files_in_the_public_folder_explicitly()
- it_should_list_all_files_in_the_public_folder_explicitly_except_ignored_files()
- it_should_list_nested_folders_explicitly_in_the_public_folder()
- it_should_not_ignore_folders_that_end_with_a_binary_extension()
- it_should_pick_up_new_files()
- it_should_scan_absolute_paths()
- it_should_scan_content_paths()
- it_should_scan_content_paths_even_when_they_are_git_ignored()
- it_should_scan_files_without_extensions()
- it_should_scan_folders_with_extensions()
- it_should_scan_for_utilities()
- it_should_scan_next_dynamic_folders()
- it_should_stop_expanding_once_we_hit_a_wildcard()
- it_should_use_a_glob_for_top_level_folders()
- it_should_work_with_a_set_of_root_files()
- it_should_work_with_a_set_of_root_files_and_ignore_ignored_files()
- it_should_work_with_manual_glob_only()
- iter()
- join()
- load()
- loadDesignSystem()
- loadModule()
- main()
- markUsedVariable()
- matched()
- matched()
- matched_stripped()
- matches()
- maybe_push_ignore_io()
- mergeThemeExtension()
- message()
- min_depth()
- mkdirp()
- mkdirp()
- never()
- new()
- new()
- new()
- new()
- new()
- new_for_each_thread()
- new_raw()
- new_stdin()
- no_ignores()
- not_present_empty()
- num_ignores()
- num_ignores()
- observeSheet()
- only_on_files()
- optimize()
- optimizeCss()
- optimize_patterns()
- or()
- or()
- ov()
- overrides()
- parents()
- parse_all_blobs()
- path()
- path()
- path_equals()
- path_is_symlink()
- pre_process_input()
- precedence()
- predicate()
- printArbitraryValue()
- printCandidate()
- printVariant()
- property()
- public_source_entries_to_private_source_entries()
- public_source_entry_from_pattern()
- push()
- push_ignore_io()
- quoteAttributeValue()
- read_all_files()
- read_changed_content()
- rebuild()
- recursivelyDecodeArbitraryValues()
- registerContainerCompat()
- registerLegacyUtilities()
- registerThemeVariantOverrides()
- regression_106()
- render()
- replaceNestedClassNameReferences()
- require_git()
- require_git()
- resolveValueFunction()
- resolveVersion()
- resolveWith()
- resolve_globs()
- retryAssertion()
- rule()
- run()
- run()
- run()
- run_one()
- scan()
- scan()
- scan_content()
- scan_sources()
- scan_with_globs()
- segment()
- send_quit()
- set()
- set()
- should_skip_entry()
- shuffle()
- simple()
- simplifyArbitraryVariant()
- size()
- skip_stdout()
- skips_ignore_files_outside_of_a_repo()
- sortClasses()
- sortFractionsLast()
- sort_by_dir_and_name()
- spacing()
- steal()
- strip_if_is_prefix()
- strip_prefix()
- substituteAtApply()
- substituteFunctions()
- symlink()
- symlink_loop()
- symlinks()
- tagged()
- tailwindLoader()
- tailwindcss()
- test()
- test_allow_default_ignored_files()
- test_allow_default_ignored_files_via_gitignore()
- test_allow_explicit_node_modules_paths()
- test_cursor()
- test_dirs_in_deep()
- test_explicitly_ignore_explicitly_allowed_files()
- test_extract_used_css_variables_from_css()
- test_files_in_deep()
- test_glob_with_symlinks()
- test_globs_with_recursive_symlinks()
- test_ignore_files_can_be_included_with_custom_source_rule()
- test_ignore_gitignore_in_node_modules_source()
- test_ignore_node_modules_without_gitignore()
- test_manually_scanning_files_should_follow_all_rules()
- test_partial_globs_with_symlinks()
- test_path_should_be_under_root()
- test_positions()
- test_works_with_filenames_containing_glob_characters()
- test_works_with_utf8_special_character_paths()
- throwOnLoadModule()
- tmpdir()
- tmpdir()
- unmatched()
- value()
- visit()
- walk_collect()
- walk_collect_entries_parallel()
- wfile_size()
- withBOM()
- with_path()
- word()
- write()
Source Files
- playgrounds/vite/src/app.tsx
- packages/tailwindcss/src/apply.ts
- packages/tailwindcss/src/ast.bench.ts
- packages/tailwindcss/src/at-import.test.ts
- packages/tailwindcss/src/at-import.ts
- crates/oxide/src/scanner/auto_source_detection.rs
- packages/tailwindcss/src/utils/brace-expansion.ts
- crates/node/build.rs
- packages/@tailwindcss-standalone/scripts/build.ts
- packages/tailwindcss/src/candidate.bench.ts
- packages/tailwindcss/src/candidate.test.ts
- packages/tailwindcss/src/cartesian.ts
- packages/tailwindcss/src/utils/compare-breakpoints.ts
- packages/tailwindcss/src/compat/container.ts
- packages/tailwindcss/src/compat/config/create-compat-config.ts
- packages/tailwindcss/src/compat/default-theme.ts
- crates/oxide/src/scanner/detect_sources.rs
- packages/tailwindcss/src/utils/escape.ts
- packages/tailwindcss/src/expand-declaration.ts
- integrations/upgrade/index.test.ts
- packages/@tailwindcss-browser/src/index.ts
- packages/@tailwindcss-vite/src/index.ts
- packages/tailwindcss/src/intellisense.bench.ts
- packages/tailwindcss/src/utils/is-color.ts
- packages/tailwindcss/src/compat/legacy-utilities.ts
- crates/ignore/src/lib.rs
- crates/oxide/src/scanner/mod.rs
- integrations/vite/other-transforms.test.ts
- crates/ignore/src/overrides.rs
- playgrounds/nextjs/app/page.tsx
- crates/oxide/tests/scanner.rs
- packages/tailwindcss/src/utils/segment.ts
- crates/oxide/src/scanner/sources.rs
- packages/tailwindcss/src/compat/theme-variants.ts
- crates/oxide/src/throughput.rs
- packages/tailwindcss/tests/ui.spec.ts
- packages/tailwindcss/src/value-parser.ts
- packages/tailwindcss/src/variants.ts
- crates/ignore/src/walk.rs
- packages/tailwindcss/src/walk.ts
Source
- playgrounds/vite/src/app.tsx
- packages/tailwindcss/src/apply.ts
- packages/tailwindcss/src/ast.bench.ts
- packages/tailwindcss/src/at-import.test.ts
- packages/tailwindcss/src/at-import.ts
- crates/oxide/src/scanner/auto_source_detection.rs
- packages/tailwindcss/src/utils/brace-expansion.ts
- crates/node/build.rs
- packages/@tailwindcss-standalone/scripts/build.ts
- packages/tailwindcss/src/candidate.bench.ts
- packages/tailwindcss/src/candidate.test.ts
- packages/tailwindcss/src/cartesian.ts
- packages/tailwindcss/src/utils/compare-breakpoints.ts
- packages/tailwindcss/src/compat/container.ts
- packages/tailwindcss/src/compat/config/create-compat-config.ts
- packages/tailwindcss/src/compat/default-theme.ts
- crates/oxide/src/scanner/detect_sources.rs
- packages/tailwindcss/src/utils/escape.ts
- packages/tailwindcss/src/expand-declaration.ts
- integrations/upgrade/index.test.ts
- packages/@tailwindcss-browser/src/index.ts
- packages/@tailwindcss-vite/src/index.ts
- packages/tailwindcss/src/intellisense.bench.ts
- packages/tailwindcss/src/utils/is-color.ts
- packages/tailwindcss/src/compat/legacy-utilities.ts
- crates/ignore/src/lib.rs
- crates/oxide/src/scanner/mod.rs
- integrations/vite/other-transforms.test.ts
- crates/ignore/src/overrides.rs
- playgrounds/nextjs/app/page.tsx
- crates/oxide/tests/scanner.rs
- packages/tailwindcss/src/utils/segment.ts
- crates/oxide/src/scanner/sources.rs
- packages/tailwindcss/src/compat/theme-variants.ts
- crates/oxide/src/throughput.rs
- packages/tailwindcss/tests/ui.spec.ts
- packages/tailwindcss/src/value-parser.ts
- packages/tailwindcss/src/variants.ts
- crates/ignore/src/walk.rs
- packages/tailwindcss/src/walk.ts
Frequently Asked Questions
What is the Scanner subdomain?
Scanner is a subdomain in the tailwindcss codebase, part of the Oxide domain. Manages directory walking and file discovery for auto-source detection. It contains 40 source files.
Which domain does Scanner belong to?
Scanner belongs to the Oxide domain.
What functions are in Scanner?
The Scanner subdomain contains 337 function(s): App, Home, T, WalkAction.Replace, absolute_parent, actual, addBuildDependency, addWhitespaceAroundMathOperators, and 329 more.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free