npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@magiof/devtalk

v0.1.24

Published

A tiny team chat view for VS Code and Cursor.

Readme

DevTalk

한국어

DevTalk is a small team chat view for VS Code and Cursor. It lives in the Explorer sidebar, asks each person for a chat name on first use, and lets you manually join or leave through either Supabase Realtime or same-LAN UDP chat.

Features

  • Shared team chat view
  • VS Code and Cursor support through VSIX installation
  • Theme-aware Webview UI
  • First-run chat name setup
  • Manual Join and Leave controls
  • Join through Supabase Realtime or local UDP LAN mode
  • Korean IME-safe Enter handling
  • Unread message badge, capped at 999
  • Unread marker showing where new messages began
  • Supabase Realtime messaging
  • Supabase Storage file sharing
  • Image and animated GIF previews
  • 5 MB file size limit
  • Default and work visual themes
  • Optional per-speaker pastel highlight mode
  • Terminal client for the same Supabase room

Supabase Setup

Create a Supabase project, then create a public Storage bucket. devtalk-files is the default name, but you can choose another bucket name and enter it in DevTalk settings.

Recommended bucket policy for a small private friend group. Replace devtalk-files if you chose a different bucket name:

create policy "DevTalk public read"
on storage.objects for select
to public
using (bucket_id = 'devtalk-files');

create policy "DevTalk anon upload"
on storage.objects for insert
to anon
with check (
  bucket_id = 'devtalk-files'
  and (storage.foldername(name))[1] = 'general'
);

The extension enforces a 5 MB file limit before upload. Keep Supabase keys out of the public repository.

Join Modes

When you click Join in the extension, DevTalk asks whether to connect through Supabase or UDP LAN.

  • Supabase uses your configured Supabase Realtime room and supports file uploads.
  • UDP LAN works on the same local network without Supabase setup. It supports text chat and online presence, but not file uploads.

Install

For the terminal CLI, install DevTalk from npm:

npm install -g @magiof/devtalk
dev-talk

Download the latest VSIX from GitHub Releases, then install it in VS Code:

  1. Open Extensions
  2. Select ...
  3. Select Install from VSIX...
  4. Pick the downloaded .vsix file
  5. Run Developer: Reload Window

For Cursor, use Command Palette and run:

Extensions: Install from VSIX...

If that command is not visible, install from a terminal:

cursor --install-extension devtalk-0.1.6.vsix

Settings

DevTalk stores shared terminal and extension settings at ~/.devtalk/config.json. If you already ran the CLI setup, the VS Code/Cursor extension uses that config automatically. If the file does not exist, click Join in the DevTalk Explorer sidebar view and enter the values when prompted.

You can also set these in VS Code/Cursor user settings. Do not commit real values.

{
  "devtalk.supabaseUrl": "https://your-project.supabase.co",
  "devtalk.supabaseAnonKey": "your-anon-key",
  "devtalk.storageBucket": "devtalk-files",
  "devtalk.theme": "default"
}

Use "devtalk.theme": "work" for a quieter, denser view that looks more like work logs than chat. You can also type /theme or /theme work in DevTalk to switch themes after joining. Type /color-mode to toggle per-speaker pastel highlights, and /config to edit nickname and Supabase settings from the chat view. The extension writes updated setup values back to ~/.devtalk/config.json so the CLI can reuse them.

To use a fixed nickname without the first-run prompt, also set:

{
  "devtalk.nickname": "your-name"
}

Terminal

DevTalk can also run in a terminal against the same Supabase room. On first run, missing settings are prompted and saved to ~/.devtalk/config.json. Keep real values out of Git.

npm run cli

After packaging or installing the package, you can also run:

dev-talk

DevTalk uses one shared room internally. CLI arguments and environment variables override saved settings:

dev-talk --bucket devtalk-files --name your-name

Terminal commands:

/theme [default|work]
/color-mode
/config
/file ./image.gif
/help
/quit

Files are limited to 5 MB. GIFs and images sent from the terminal appear as previews in the VS Code/Cursor view. Press Ctrl+C twice quickly to exit.

Development

npm install
npm run check
npm run package

To run the extension locally, open this folder in VS Code, press F5, and open DevTalk in the Extension Development Host.

Security Notes

  • devtalk.supabaseUrl and devtalk.supabaseAnonKey are runtime settings, not source files.
  • .env* is ignored for local notes or scripts.
  • Terminal settings are saved outside the repository at ~/.devtalk/config.json.
  • The anon key is intended for client-side apps, but access must still be controlled with Supabase Row Level Security and Storage policies.
  • Do not use the Supabase service role key in DevTalk.

License

MIT