🔄 A simple CLI tool for syncing and sharing VS Code/Cursor/Antigravity extensions across teams and projects.
Ever joined a new project and spent hours installing the "right" extensions? Or wanted your entire team to use the same development setup? ext-sync solves this by letting you:
- 📦 Import your current extensions into a shareable config file
- 🔄 Sync extensions from a config file (perfect for onboarding)
- 🎯 Initialize projects with stack-specific extensions (React, Laravel, NestJS, JavaScript)
- ⚡ Smart filtering - only installs extensions you don't already have
npm install -g @saadeh/ext-syncThe ext-sync.json file is dead simple. It just contains a list of your extensions:
{
"extensions": [
"esbenp.prettier-vscode",
"dbaeumer.vscode-eslint",
"eamodio.gitlens"
]
}If you are starting fresh, use the interactive menu to install recommended extensions for your stack (e.g., React, Laravel, Python).
ext-sync
# Select "Initialize new setup"- 📦 Installs recommended extensions for your chosen stack.
- 💾 Creates
ext-sync.jsonwith these extensions. - ➕ Appends to the list if you run it again for another stack.
If you already have a perfect setup, save it!
ext-sync
# Select "Import extensions"- 📥 Reads all your currently installed extensions.
- 💾 Saves them to
ext-sync.json. - 🔄 Merges with existing list if the file already exists.
Install everything in your config to your current editor.
ext-sync
# Select "Sync extensions"- 🚀 Installs all extensions listed in
ext-sync.json. - ⚡ Efficient: Only installs what is missing.
- 🕵️ Smart: Automatically detects if you are using VS Code, Cursor, or Antigravity.
Commit this file to your repo so your team can sync instantly!
- ✅ VS Code (including Snap installations)
- ✅ Cursor
- ✅ Antigravity
The tool automatically detects which editor you're using.
Frontend:
- ⚛️ React / React Native
- 🟢 Vue.js
🅰️ Angular- 🟠 Svelte
- 💛 JavaScript / TypeScript
Backend:
- 🐘 Laravel (PHP)
- 🦁 NestJS
- 🐍 Python
- ☕ Java
- 🐹 Go
- 🦀 Rust
- 🇨 C/C++
- 🔷 C# (.NET)
Mobile:
- 📱 Flutter
- 🤖 Kotlin (Android)
- ⚛️ React Native
💡 Curious about what's installed? Check out the full list of curated extensions in src/data/extensions.js. We include essential tools (Prettier, ESLint) plus productivity boosters (GitLens, snippets, etc.) for each stack.
-
Developer A (project lead):
ext-sync # Select "Import extensions" git add ext-sync.json git commit -m "Add editor extensions config"
-
Developer B (new team member):
git clone your-repo cd your-repo ext-sync # Select "Sync extensions"
Done! Developer B now has the exact same extensions.
- Node.js >= 20.0.0
- One of: VS Code, Cursor, or Antigravity
MIT © Moemen
Found a bug or want to contribute? Check out the GitHub repository.
Made with ❤️ by Moemen