Flagship Directory Snapshot Tool - The Ultimate Snapshot App, Built as an Electron Desktop Application
This is the Electron desktop version of the Python Directory Snapshot Tool, providing the same functionality as the original Python-based tool but with a native desktop interface, and with several enhancements and adjustments.
- Create snapshots of directory structures and file contents
- Recreate directory structures from snapshots
- Customizable ignore patterns
- Dark/light theme support
- Snapshot token counting for AI model compatibility
- Expandable/collapsable folder structure
- Adjustable sidebar width
- Node.js (v14 or later)
- npm (usually comes with Node.js)
- python (Optional) (only install if you run into issues with
node-gyp, which requires python)
-
Clone the repository:
git clone https://github.com/auzuma/flagship-directory-snapshot-tool cd directory-snapshot-tool -
Install dependencies:
npm install
-
Run the application:
npm start
To build the application for your platform:
npm run buildThis will create an .exe file.
- Launch the application
- Select the "Snapshot" tab (default)
- Enter a directory path or use the "Browse" button
- Uncheck any files or folders you want to exclude
- Add any additional ignore patterns in the "Manual Ignore Patterns" section
- Click "Generate Snapshot"
- The snapshot will be displayed and can be copied to clipboard
- Launch the application
- Select the "Recreate" tab
- Enter the output directory path or use the "Browse" button
- Paste the snapshot content into the text area
- Click "Recreate Directory"
The application is built with:
- ElectronJS - for the desktop application framework
- TailwindCSS - for styling
- Pure JavaScript - for the frontend logic
main.js- Main Electron processpreload.js- Preload script for secure IPCrenderer.js- Renderer process logictoken-counter.js- Token counter module using OpenAI'stiktokenindex.html- Main application UIstyles/- CSS filesassets/- Images and icons
Please let us know (in the Issues Section) if you encounter any issues during setup or usage.
Also, we welcome direct contributions! Please open a pull request to the main branch, and we'd love to review and merge your changes. Thank you so much for your support!
This project is licensed under the Apache 2.0 License. See the LICENSE file for more information.
