Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>shareitNew to Visual Studio Code? Get it now.
shareit

shareit

Harish Chirati

|
5 installs
| (0) | Free
Share a named scratchpad between VS Code windows and computers.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

shareit

Native file editors and file tabs

Version 0.4.0 opens hosted shared files in VS Code's standard file editor. Each file has its normal filename, language detection, syntax highlighting, line numbers, find, undo, minimap and pinned editor tab. Editor tab icons follow your installed VS Code file icon theme. The hosted editor no longer displays a preview header or Open website button.

All shared files appear in a horizontal tab strip directly under the shareit heading in the right sidebar, and in a file list with colored file-type markers. Click either location to open the file in a normal VS Code editor tab. Opening another shared file keeps the previous editor tab open.

Native shared documents are local cached copies inside the extension's storage directory. Changes upload after a short pause or Ctrl+S; incoming updates refresh the document. Conflicting text keeps your local draft and offers Compare, Use Remote, or Publish Mine. After comparing, save again to choose a resolution. Backend saves still have no atomic revision check, so truly simultaneous saves can race.

Right-click sharing and shared files

Requires VS Code 1.106 or later. Install shareit-0.4.0.vsix using Extensions: Install from VSIX…, then reload VS Code if prompted. The extension display name is shareit; its existing harish-chirati.sharepad identity is retained for updates.

Send a file: Right-click a file in Explorer, its editor tab, or the editor, then select shareit: Share This File. Enter test and choose Code or Text. The current contents are uploaded with the original filename and extension. One matching shared filename is updated; otherwise a tab is created. Files without extensions use .txt. The synced editor opens afterward. Edit that shared tab for live sync; sharing the original local file again uploads its latest contents.

Browse on another computer: Right-click and choose shareit: Open Shared Files. Enter the same path and choose the same mode. The right-hand shareit sidebar lists all files in that path and mode with extensions, such as main.py and index.ts. Click a file to open its synced editor.

Sidebar icon: Click the shareit icon in the right sidebar, enter a path, choose Code or Text, and click Open shared files. The list refreshes on remote events and every 10 seconds. Use Refresh or New file as needed. If the sidebar is hidden, enable View → Appearance → Secondary Side Bar.

The context menu has separate send and browse actions so browsing from another computer does not upload its selected local file.

Share text or code between VS Code windows and different computers using a named pad. For example, open test on your laptop and desktop: pasting code into one pad makes it appear in the other, normally within a few seconds.

Version 0.4.0 connects directly to your existing MySharepad website backend by default. No local server or access token is required in hosted mode. Pad paths are shared channel names, not local filesystem paths.

Use the existing website backend

  1. Install shareit-0.4.0.vsix in VS Code using Extensions: Install from VSIX… and reload the window if prompted.
  2. Run shareit: Open Named Pad and enter /test (or a nested path such as /team/test).
  3. Choose Code or Text, matching the mode on your website.
  4. Select an existing tab, or select Create new tab. A new tab is published on the first edit.
  5. Open the same path, mode and tab in another VS Code window or at https://mysharepad.netlify.app/test?type=code.
  6. Paste text. Updates save automatically and propagate through Socket.IO. Open website opens the matching website path. Sync now forces a refresh.

Default API and socket origin: https://mspb.onrender.com. To change it, run shareit: Configure Sync Connection and select MySharepad website (hosted). The old local token is not used or sent to this backend. The free hosted server may take time to wake up; loading allows up to 60 seconds.

Hosted mode supports plain text and code tabs, including Unicode. Rich text and PIN-locked paths are not supported in this release. Anyone who knows an unlocked path can access it, as on the website. Live updates use Socket.IO with an API refresh every 10 seconds as fallback. Conflicting remote content is checked before a save, but this backend has no atomic revision check: simultaneous saves can still overwrite each other. Local drafts are kept for offline edits and conflicts; missing unsynced tabs appear as Recover draft when reopening the path.

Top-level hosted pads support up to 512 KB using the website's gzip upload sessions. Nested paths use direct saves (about 94 KB maximum) because the existing backend's chunk assembler writes to the root node. Larger nested saves are rejected with the local draft preserved. The VSIX excludes reference/ and tmp/.

Optional private self-hosted mode

To use the separate private server instead, run shareit: Configure Sync Connection and select Private self-hosted server. Every client in this mode needs the same server URL, token and pad name. The following setup applies to private mode only.

1. Start the sync server

On Windows, the included helper starts a background server and saves a reusable token locally:

.\server\start-local.ps1

Use -Lan to accept connections from other computers on your trusted local network. Find your token in server/.local/access-token.txt and enter it in the extension connection settings. Do not share or upload this file. Visit http://localhost:4783/health to check server status.

Install Node.js 20 or later on the server computer. In PowerShell, from this project's folder:

$env:SHAREPAD_TOKEN = (node -e "console.log(require('crypto').randomBytes(32).toString('hex'))")
# Copy this token securely to the other computers; keep the same value on server restarts.
$env:HOST = '0.0.0.0'
node server/server.js

Leave the server running. Port defaults to 4783. Without HOST, it binds to 127.0.0.1 for same-computer testing only. The server needs no npm dependencies. Distribute the whole project or at least server/ and src/protocol.js together.

To view the generated token for connection setup, run $env:SHAREPAD_TOKEN in that same PowerShell session. Store it securely so you can reuse it on the next server start. Never commit the token to source control.

For computers on the same trusted LAN, use the server computer's LAN IP, for example http://192.168.1.10:4783, on both computers. Allow the server port through the server computer's firewall if needed. localhost on another computer points to that other computer, not your server.

For different networks, deploy the server to a reachable host behind an HTTPS reverse proxy, or connect the computers through a private VPN. Set the same reachable server origin on each computer. Plain HTTP sends the token and pad text without encryption; use HTTPS for Internet access. The project does not provision hosting or networking for you.

Optional environment variables: PORT, HOST, SHAREPAD_DATA_DIR. Pads persist as JSON files in server/data/ by default. Back up this directory. Run one server process per data directory. The shared token grants access to all pads on that server; use a different server/token for a separate group.

2. Install and connect VS Code

  1. Install the .vsix through Extensions: Install from VSIX….
  2. Run shareit: Configure Sync Connection from the Command Palette.
  3. Enter your server URL and token. The token is stored in VS Code Secret Storage.
  4. Run shareit: Open Named Pad and enter test.
  5. Repeat on your other computer using the same URL, token, and test.
  6. Paste text into either pad. Changes save automatically and other pads poll every 1.5 seconds.

Offline and simultaneous edits

Local edits are backed up in the extension's local storage. A disconnected pad keeps retrying. Reopen that named pad to recover a saved draft. If the shared text differs from your recovered draft, you will choose which version to use.

If another computer changes the pad while you have unsynced edits, the extension preserves your local text and shows the other version. Copy anything you want to combine, then select Use other version or Publish my version. This is a shared scratchpad with whole-text synchronization; it does not merge keystrokes like a collaborative editor. There is no version history or end-to-end encryption. The server stores pad text on disk.

Pads support plain text up to 512 KB, multiline code and Unicode. Names use 1–64 letters, numbers, dots, underscores or hyphens, starting with a letter or number.

Develop and package

Open this folder separately in VS Code and press F5. Run npm test to check authentication, persistence, named pad isolation and concurrent writes. Use npm install then npm run package to create a VSIX. The server is distributed in this source folder, not inside the VSIX.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft