Follow these steps to publish your extension to the VS Code Marketplace RIGHT NOW!
- Extension built and tested
- GitHub repository ready
- Version tagged (v0.1.0)
- Publisher account needed
- Personal Access Token needed
-
Open your browser and go to:
https://marketplace.visualstudio.com/manage/createpublisher -
Sign in with your Microsoft account
-
Create a publisher with these details:
- Publisher ID:
prawal-sharma(or your preferred ID) - Display Name: Prawal Sharma
- Description: Developer tools and VS Code extensions
- Publisher ID:
-
Verify your email (check inbox)
-
Go to Azure DevOps:
https://dev.azure.com -
Click on your profile icon (top right) → Personal access tokens
-
Click "+ New Token"
-
Configure the token:
- Name: VSCode-Extension-Publishing
- Organization: All accessible organizations
- Expiration: 90 days (or custom)
- Scopes: Click "Custom defined" then:
- ✅ Marketplace → Manage
-
Click "Create"
-
COPY THE TOKEN IMMEDIATELY (you won't see it again!) Save it somewhere secure temporarily.
Since you have Node 18, let's use npx with a compatible version:
# No installation needed, we'll use npx directlyOpen terminal in the project directory and run:
# First, ensure everything is built
npm run compile
# Try to package with an older compatible version
npx vsce@2.11.0 package --no-dependenciesIf that doesn't work due to Node version, use the manual method:
# Our backup packaging script
node scripts/package.jsSince we have Node version constraints, let's use the Web Upload Method:
-
Go to:
https://marketplace.visualstudio.com/manage/publishers/prawal-sharma(Replace
prawal-sharmawith your publisher ID) -
Click "New Extension" or "+ New Extension"
-
Click "Upload Extension"
-
Upload the VSIX file:
- The file should be:
visual-code-map-0.1.0.vsix - Or create it manually from the built files
- The file should be:
-
Fill in the marketplace listing:
- Categories: Programming Languages, Other
- Tags: dependency, graph, visualization, code-map, architecture
- Repository: https://github.com/Prawal-Sharma/VisualCodeMap
- Q&A: Enable
-
Click "Upload"
Add your token to GitHub for automated publishing:
-
Go to your repository settings:
https://github.com/Prawal-Sharma/VisualCodeMap/settings/secrets/actions -
Click "New repository secret"
-
Add:
- Name:
VSCE_TOKEN - Value: [Paste your Personal Access Token]
- Name:
-
Trigger the workflow:
# This will trigger the GitHub Action to publish git tag v0.1.1 -m "Trigger marketplace publish" git push origin v0.1.1
Since we have the compiled extension, we can create a VSIX manually:
# 1. Create a temporary directory
mkdir vsix-package
cd vsix-package
# 2. Copy necessary files
cp -r ../dist .
cp -r ../resources .
cp -r ../src/webview/graph.js ./src/webview/
cp -r ../src/webview/styles ./src/webview/
cp ../package.json .
cp ../README.md .
cp ../CHANGELOG.md .
cp ../LICENSE .
# 3. Create the VSIX (it's just a ZIP file)
zip -r ../visual-code-map-0.1.0.vsix .
# 4. Go back
cd ..Then upload this file via the web interface!
- Publisher account created
- Personal Access Token obtained
- Token saved securely
- VSIX file created
- Extension uploaded via web interface
After uploading:
- Review time: Usually instant to 5 minutes
- URL: Your extension will be at:
https://marketplace.visualstudio.com/items?itemName=prawal-sharma.visual-code-map - In VS Code: Searchable within 5-10 minutes
Can't create VSIX due to Node version? → Use the manual ZIP method above or web upload
Token not working? → Ensure it has "Marketplace → Manage" scope
Publisher ID taken? → Try variations like: prawal-sharma-dev, prawalsharma, etc.
Upload fails? → Check that package.json has all required fields
You'll know it worked when:
- ✅ Extension appears in your publisher dashboard
- ✅ You get a confirmation email
- ✅ Extension is searchable in VS Code
- ✅ You can install it from the marketplace
Once published, the extension URL will be:
https://marketplace.visualstudio.com/items?itemName=[your-publisher-id].visual-code-map
Share it on:
- Twitter/X
- Reddit (r/vscode)
- Dev.to
YOU'RE JUST 10 MINUTES AWAY FROM HAVING YOUR EXTENSION LIVE! 🚀
The easiest path:
- Create publisher account (2 min)
- Get token (2 min)
- Upload via web interface (2 min)
- Done! 🎉