Stop polluting your AI context with jQuery, Bootstrap, and 47MB of vendor code.
The Silent Killer of AI Context
You run a tool to combine your codebase into a single file.
You paste it into ChatGPT.
The AI responds with:
"I see you're using Bootstrap 5.3.0, jQuery 3.6.0, Lodash 4.17.21, Moment.js 2.29.4, and 47 other libraries. Your actual code is 12% of this file."
You've just wasted 80% of your context window on public libraries the AI already knows.
The Problem with "Combine Everything"
Most repo-combining tools are dumb:
- They include
bootstrap.min.css(178KB of minified CSS) - They include
jquery.min.js(87KB of library code) - They include
package-lock.json(thousands of lines) - They include every single vendor file you've ever touched
Your 50KB of actual business logic gets lost in 5MB of noise.
Enter repomeld 🔥 with Smart Auto-Ignore
repomeld ships with a curated ignore list of 200+ common public libraries and vendor files.
It automatically excludes:
| Category | Examples |
|---|---|
| CSS Frameworks | Bootstrap, Tailwind, Bulma, Foundation, Materialize, Semantic UI |
| JavaScript Libraries | jQuery, Lodash, Moment, Axios, GSAP, Three.js, D3, Chart.js |
| UI Components | Select2, Flatpickr, DataTables, Toastr, SweetAlert, Lightbox |
| Rich Text Editors | Quill, TinyMCE, CKEditor, CodeMirror |
| Maps & Players | Leaflet, Mapbox GL, Video.js, Plyr, Swiper, Slick |
| Icons | Font Awesome, RemixIcon, Boxicons, Ionicons, Lucide |
| Admin Templates | AdminLTE, Metronic, CoreUI, Gentelella |
| Build Output | dist/, build/, .next/, coverage/ |
| Project Meta | package.json, README.md, lock files |
Your output stays focused on YOUR code. 🔥
Before & After: The Real Difference
Without smart ignore (other tools):
repomeld_output.txt (4.2 MB)
├── node_modules/jquery/dist/jquery.min.js (87 KB) ❌
├── node_modules/bootstrap/dist/css/bootstrap.min.css (178 KB) ❌
├── node_modules/lodash/lodash.min.js (72 KB) ❌
├── package-lock.json (847 KB) ❌
├── dist/bundle.js (1.2 MB) ❌
└── src/ (your actual 50 KB of code) ✅
4.2 MB of noise. 1% useful content.
With repomeld:
repomeld_output.txt (52 KB)
├── src/index.js ✅
├── src/components/Button.js ✅
├── src/utils/helpers.js ✅
└── src/styles/custom.css ✅
52 KB of signal. 100% your code.
But What If I Need a Vendor File?
Good question! Sometimes you've customized a library and need to include it.
repomeld has you covered with --force-include:
# Include your customized Bootstrap even though it's normally ignored
repomeld --force-include bootstrap
# Include multiple overrides
repomeld --force-include jquery vendor bootstrap
# Combine with other options
repomeld --force-include select2 --style markdown --output context.md
--force-include matches by name substring, so --force-include bootstrap un-ignores:
bootstrap.min.cssbootstrap.bundle.min.jsbootstrap-icons.css- Any file with "bootstrap" in the name
Customize Your Own Ignore List
Place a repomeld.ignore.json in your project root to override or extend the built-in list:
{
"ignore": [
"my-custom-vendor-folder",
"generated-report.html",
"legacy-library.js"
]
}
repomeld looks for config in this order:
- Your project's
repomeld.ignore.json(overrides everything) - Built-in
repomeld.ignore.json(200+ common libs) - Hardcoded defaults (always skip binaries, .git, node_modules)
What Gets Auto-Ignored (Full Categories)
📦 Package Managers
-
node_modules/,bower_components/,vendor/,libs/,plugins/ -
package-lock.json,yarn.lock,pnpm-lock.yaml,composer.lock
🎨 CSS Frameworks
- Bootstrap, Tailwind, Bulma, Foundation, Materialize, Semantic UI, UIkit, Pure.css, Milligram, Skeleton, Tachyons
⚡ JavaScript Libraries
- jQuery, Zepto, Lodash, Underscore, Moment, Day.js, Axios, SuperAgent, Request, Fetch polyfill
🎮 Animation & Graphics
- GSAP, Three.js, D3.js, Chart.js, ApexCharts, ECharts, Anime.js, Velocity.js, Mo.js, P5.js, CanvasJS
🖼️ UI Components
- Select2, Flatpickr, Datepicker, Choices.js, Tom Select, DataTables, ag-Grid, Handsontable
🔔 Notifications & Alerts
- Toastr, Noty, SweetAlert, PNotify, Notie, Alertify
📝 Rich Text Editors
- Quill, TinyMCE, CKEditor, CodeMirror, Ace Editor, Monaco Editor, Summernote, Froala Editor
🖱️ Carousels & Sliders
- Swiper, Slick, Owl Carousel, Flickity, Glide.js, Splide
🗺️ Maps & Geospatial
- Leaflet, Mapbox GL, Google Maps API, OpenLayers, Cesium
🎥 Video & Audio Players
- Video.js, Plyr, JW Player, MediaElement.js, Howler.js, Wavesurfer.js
🔧 Utilities
- Lazysizes, Lottie, Particles.js, Typed.js, SortableJS, Masonry, Isotope, Packery, imagesLoaded, Clipboard.js
🖌️ Syntax Highlighting
- Prism.js, Highlight.js, Rainbow, Prettify
📊 Icons & Fonts
- Font Awesome, RemixIcon, Boxicons, Ionicons, Lucide, Feather Icons, Heroicons, Material Icons, Bootstrap Icons
🏗️ Admin & Dashboard Templates
- AdminLTE, Metronic, CoreUI, Gentelella, Tabler, Volt, Argon, Now UI, Paper Dashboard
🔨 Build Artifacts
-
dist/,build/,.next/,.nuxt/,.output/,coverage/,.nyc_output/,.cache/,.parcel-cache/
📄 Meta Files
-
package.json,README.md,LICENSE,CHANGELOG.md,.gitignore,.dockerignore,.eslintrc,.prettierrc
🔐 Environment & Secrets
-
.env,.env.local,.env.production,.env.development,.secret,.key,.pem
💾 Binaries & Media
-
*.jpg,*.png,*.gif,*.svg(except inline),*.woff,*.woff2,*.ttf,*.eot,*.ico,*.pdf,*.zip,*.tar.gz
Real-World Example: React + Bootstrap Project
Project structure:
my-app/
├── node_modules/ (300+ libraries, 150MB)
├── public/
│ └── bootstrap.min.css (178KB)
├── src/
│ ├── components/
│ ├── hooks/
│ └── utils/
└── package-lock.json (847KB)
Running repomeld:
repomeld --style markdown --output context.md
Output file:
- ❌ No
node_modules/ - ❌ No
bootstrap.min.css(it's a public CDN library) - ❌ No
package-lock.json - ✅ Only
src/folder contents - ✅ File size: 48KB instead of 151MB
Result: ChatGPT sees only your React components, hooks, and utilities – not the 150MB of noise.
Why This Matters for AI
AI models have context windows (token limits):
| Model | Tokens | Approx. chars |
|---|---|---|
| GPT-3.5 | 4K | ~3,000 words |
| GPT-4 | 8K-32K | ~6,000-24,000 words |
| Claude 3 | 200K | ~150,000 words |
| Gemini 1.5 | 1M | ~750,000 words |
Every token counts.
If you waste 80% of your context on jQuery and Bootstrap:
- Less room for your actual code
- More irrelevant information for the AI
- Worse answers, more hallucinations
repomeld ensures 100% of your context window contains YOUR code.
Contribute to the Ignore List
Found a popular library that should be ignored by default?
Open a PR! Add it to repomeld.ignore.json and help the community:
{
"ignore": [
"your-new-library.min.js",
"some-common-cdn.css"
]
}
The more we add, the smarter repomeld becomes for everyone.
Quick Start
# Install
npm install -g repomeld
# Run in your project (auto-ignores 200+ libraries)
cd your-project
repomeld
# Check what gets ignored
repomeld --dry-run
# Force-include a library you've customized
repomeld --force-include bootstrap
# Use your own ignore list
echo '{"ignore": ["custom-vendor"]}' > repomeld.ignore.json
repomeld
The Bottom Line
Don't let vendor noise kill your AI context.
repomeld ships with 200+ smart ignores so your output stays focused on:
- ✅ Your business logic
- ✅ Your components
- ✅ Your unique code
Not on:
- ❌ jQuery (the AI already knows it)
- ❌ Bootstrap (the AI already knows it)
- ❌ 150MB of node_modules (the AI doesn't need it)
Clean context. Better answers. Faster debugging. 🔥
Try repomeld Today
npm install -g repomeld
cd your-project
repomeld --style markdown --output clean_context.md
Then paste it into ChatGPT or Claude and ask:
"Based ONLY on my code (not the libraries), what's the biggest improvement I can make?"
You'll get answers about YOUR code. Not about Bootstrap. 🎯
Tags for dev.to:
ai, productivity, javascript, nodejs, chatgpt, claude, opensource, tooling, clean-code
Top comments (0)