A powerful Windows Forms application built with VB.NET that intelligently combines project files for AI prompts, documentation, or code reviews. Inspired by tools like Prompt Engineer.
- Smart File Selection: Hierarchical tree view for easy file and folder selection
- Project Type Filtering: Intelligent filtering based on Visual Basic Desktop, ASP.NET MVC 5, or ASP.NET Core 8
- Template Management: Save, load, copy, and update file selection templates
- Automatic File Splitting: Splits output files at 200KB for optimal token usage
- Token Estimation: Real-time token count estimation for AI prompt optimization
- Configuration Management: INI-based configuration for persistence
- Project Backup: Smart backup with excluded folder filtering
- Progress Tracking: Real-time progress bars and status updates
- Keyboard Shortcuts: Full keyboard navigation support
- Window State Persistence: Remembers window size, position, and layout
- Included:
*.vb,*.Designer.vb,*.vbproj,*.sql - Excluded: All media files (images, videos, audio)
- C# Files:
*.cs(full content) - Razor Views:
*.cshtml(layout files starting with_only) - Stylesheets:
*.css(site.css only) - JavaScript:
*.js(site.js only) - SQL:
*.sql(full content) - Excluded: All media files
- Windows 10/11
- .NET 8.0 Runtime
- Visual Studio 2022 (for development)
-
Clone the repository:
git clone https://github.com/yourusername/repobundle.git cd repobundle -
Open
RepoBundle.slnin Visual Studio 2022 -
Build and run the application:
dotnet build dotnet run
- Select Project Folder: File β Select Project Folder
- Configure Output: Settings β Application Settings
- Set Project Type: Choose from dropdown (Visual Basic Desktop, ASP.NET MVC 5, ASP.NET Core 8)
- Tree Navigation: Use the left panel to browse your project
- Folder Selection: Check folders to auto-select all contents
- File Selection: Individual file selection with checkboxes
- Quick Actions: Expand All, Collapse All, Refresh Tree
- Save Template: Enter name and click "Save" to store current selection
- Load Template: Select from dropdown and click "Load"
- Copy Template: Clone existing templates for modification
- Update Template: Modify and update existing templates
- Select files/folders in the tree view
- Choose appropriate project type
- Click "π Combine Files"
- Files are automatically split at 200KB and saved as
data001.txt,data002.txt, etc.
Stores application settings:
[Main]
ProjectFolder=C:\Your\Project\Path
OutputFolder=C:\Output\Path
LastSelectedProjectType=Visual Basic Desktop
[Project]
Title=My Project
Instructions=Project description...
[Backup]
ExcludedFolders=.git,.vs,.svn,bin,objStores file selection templates:
[Template_MyTemplate]
Name=My Template
File1=C:\Project\File1.vb
File2=C:\Project\File2.vb- frmMain: Main application window with split-panel layout
- FileCombiner: Core logic for file processing and combination
- IniHelper: Configuration management utility
- DatabaseReader: SQL file processing
- frmSettings: Application configuration dialog
RepoBundle/
βββ My Project/
β βββ Application.Designer.vb
β βββ Application.myapp
βββ frmMain.vb # Main form
βββ frmMain.Designer.vb # Main form designer
βββ frmSettings.vb # Settings form
βββ FileCombiner.vb # File processing engine
βββ DatabaseReader.vb # SQL file handler
βββ IniHelper.vb # Configuration manager
βββ RepoBundle.vbproj # Project file
The application features a clean, intuitive interface with:
- Left panel: File tree with checkboxes
- Right panel: Template management and project configuration
- Bottom panel: Combine actions and progress tracking
Easy-to-use template system for saving and loading file selections:
- Save current selections as named templates
- Load previously saved templates
- Copy and modify existing templates
- Update templates with new file selections
Comprehensive settings for:
- Project and output folder configuration
- Database file management
- Excluded folder settings for backups
- Application preferences
| Shortcut | Action |
|---|---|
Ctrl+O |
Open Project Folder |
Ctrl+B |
Backup Project |
Ctrl+G |
Go to Output Folder |
Ctrl+S |
Save Template |
Ctrl+L |
Load Template |
Ctrl+Enter |
Combine Files |
F5 |
Refresh Tree |
F1 |
About Dialog |
We welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit changes:
git commit -m 'Add amazing feature' - Push to branch:
git push origin feature/amazing-feature - Open a Pull Request
- Follow VB.NET naming conventions
- Use meaningful variable and method names
- Add XML documentation for public methods
- Include error handling for file operations
This project is licensed under the MIT License - see the LICENSE file for details.
- Inspired by Prompt Engineer
- Built with love for the developer community
- Special thanks to all contributors
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Wiki: Project Wiki
- Add support for more project types (Python, Java, etc.)
- Plugin architecture for custom file processors
- Web-based version
- Integration with popular IDEs
- Advanced filtering options
- Export to various formats (JSON, XML, etc.)
Made with β€οΈ by Samsur Rahman Mahi
