FolderToMarkdown is a powerful desktop application that transforms your project's folder structure into a comprehensive Markdown document. It allows you to easily visualize and document your codebase for seamless integration with platforms like Obsidian.
- Folder Structure Visualization: Automatically generates a Markdown representation of your project's folder structure, including files and subdirectories.
- Text File Preview: Displays the contents of text-based files (e.g., .js, .md, .py) inline within the Markdown document.
- Selective Processing: Allows you to choose which files and folders to include in the generated Markdown document.
- Markdown Generation: Produces a well-formatted Markdown file that can be easily shared, stored, or imported into other applications.
- Modern Desktop Interface: Built with Electron and Material-UI for a native desktop experience with a clean, intuitive interface.
- Go to the Releases page
- Download the latest
FolderToMarkdown-Setup-x.x.x.exe - Run the installer
- Launch FolderToMarkdown from your Start Menu
- Select Folder: Click the "SELECT FOLDER" button to choose the directory you want to document.
- Select Items: In the folder structure view, select the files and directories you want to include in the Markdown document.
- Generate Markdown: Click the "Generate Markdown" button to create the Markdown file.
- Preview and Export: Review the generated Markdown content and use the copy or download buttons to save the file.
This project is built using Electron, React, and Material-UI. To set up the development environment:
- Clone the repository:
git clone https://github.com/Johay90/FolderToMarkdown.git
cd FolderToMarkdown- Install dependencies:
npm install- Start the development environment:
# Start React development server
npm start
# In a separate terminal, start Electron
npm run electron- Build the application:
# Build React
npm run build
# Build Electron executable
npm run distmain.js: Electron main processsrc/: React application sourcecomponents/: React componentsutils/: Utility functions including file processingtheme.js: Material-UI theme configuration
The project uses GitHub Actions for automated builds and releases. When a new version tag (e.g., v1.0.0) is pushed, it automatically:
- Builds the application
- Creates a new GitHub release
- Uploads the Windows installer
- Generates release notes
Contributions are welcome! If you find any issues or have suggestions for improvements, please feel free to:
- Open an issue
- Submit a pull request
- Suggest new features
If you want to build the application yourself:
- Clone the repository
- Install dependencies:
npm install - Build React:
npm run build - Build Electron:
npm run dist - Find the installer in the
distfolder
This project is licensed under the MIT License.