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
This article was originally published by DEV Community and written by sakshsky.
Read original article on DEV Community