Licence
MIT
Version
1.0.8
Deps
0
Size
9 kB
Vulns
0
Weekly
0
File Concat Tool
Automated code context generator for AI prompting. Recursively combines source files (.ts, .tsx, .js, .jsx, .html, .css, .scss) while ignoring common non-source directories and files, and formats console output with colors.
Current Limitations
Supported File Types: .ts, .tsx, .js, .jsx, .html, .css, .scss
Excluded Patterns:
node_modulesdirectory- Files containing "config" in name
- Test directories (
__tests__) and files (*.test.*) - Output file automatically added to Git exclude (
.git/info/exclude)
Future updates may include additional file types and customization options.
Motivation
Tired of manually copying code for AI prompts? This tool solves:
- Automatic Git-exclude management
- Smart test file exclusion
- Recursive directory scanning
- Clean, colored console output
Get complete code context with one command!
Installation
Install globally via npm:
npm install -g file-concat-tool
Usage
- Navigate to your project:
cd /path/to/your/project - Run the tool:
file-concat
Output: Creates source_files_content.txt with:
- Tool credit header
- Relative file paths
- File contents separated by clear markers
- Colored console log of processed files
- Automatic Git exclude update
File Processing Rules
| Status | Pattern | Examples | Action Taken |
|---|---|---|---|
| All supported extensions | index.ts, style.scss |
Included in output | |
node_modules directory |
Any nested dependency | Skipped entirely | |
| Files containing "config" | config.ts, app.config.js |
Excluded from processing | |
| Test-related files | *.test.ts, __tests__ |
Ignored during scan | |
| Existing Git exclude entry | .git/info/exclude |
Appended or already present |
Example Output
=== File: src/index.ts ===
import App from './App';
=== File: src/App.tsx ===
export default function App() { ... }
=== File: src/styles/main.scss ===
body { margin: 0; }
Contributing
We welcome contributions! Please follow our workflow:
- Fork the repository
- Create a feature branch (
git checkout -b feat/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feat/amazing-feature) - Open a Pull Request
License
MIT Licensed - See LICENSE for details.
Made with by noluyorAbi - Automate All The Annoying Things!