This project is a web-based folder visualization application that generates an ASCII diagram of a folder structure. Users can interact with the application through a drag-and-drop interface or by clicking a button to select a folder. The application allows users to exclude specific folders from the visualization by providing a list of folder names to be excluded.
-
FolderMappingApp: The main container component that includes the
ExcludeFoldersInput
andFolderInput
components. It manages the state for the folders to be excluded and passes it down to the child components. -
ExcludeFoldersInput: This component allows users to input the names of folders they want to exclude from the visualization. It provides an interface to add or remove folders to be excluded and passes the updated list of folders to the parent component
FolderMappingApp
. -
FolderInput: This component handles the folder selection and generates the ASCII diagram of the folder structure. It receives the list of folders to be excluded as a prop and uses the custom hook
useFolderVisualizer
to handle the folder traversal and ASCII diagram generation. -
FolderDiagram: A simple component that displays the generated ASCII diagram of the folder structure.
-
useFolderVisualizer: A custom hook that handles the core logic of traversing the folder structure, generating the ASCII diagram, and managing the drag-and-drop events.
- TypeScript for front-end development
- React as the front-end framework
- Tailwind CSS for styling