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

@codori/client

v0.16.0

Published

Codori Nuxt dashboard for project browsing, Codex chat, and thread resume.

Readme

@codori/client

Codori Nuxt dashboard for project browsing, Codex chat, and thread resume.

This package can be run standalone in development against a remote Codori server:

CODORI_SERVER_BASE=https://your-codori-host.example.com \
CODORI_SERVER_WS_BASE=wss://your-codori-host.example.com \
pnpm dev

When those variables are omitted, the dashboard uses same-origin /api/projects/* and /api/projects/:id/rpc.

The client renders the remote server's selected Codex pet from the codori/avatar/* proxy extension. Completed assistant turns notify only when attention is needed: Nuxt UI toast for another thread in an active tab, or an optional Web Notification while the tab is in the background. System notifications remain off until the user enables them from /settings/notifications. Browser permission is requested only from that explicit settings action.

Active realtime voice sessions reuse the same server avatar cache and renderer for a bottom-right companion. A controlled Nuxt UI popover shows at most the latest two spoken exchange pairs and closes after five seconds of transcript inactivity. The avatar stays visible for the session and is viewport-bounded to 64–88 pixels wide instead of using the source sprite cell size.

The landing screen can also start a dedicated voice companion without opening the chat transcript. Codori creates a persistent projectless thread using gpt-5.6-luna with xhigh reasoning, keeps the route on /, and presents only a centered server avatar until the session stops or the user navigates away. The avatar is the explicit stop control. Supported secure-context browsers hold a best-effort screen wake lock for the active voice lifecycle; browser or OS policy may still deny or release it, and manual screen-off/background capture requires the separate native companion tracked in issue #91.

The composer keeps transient microphone, output, stop, and live-status controls. On browsers supporting OpaqueRange and CSS Custom Highlights, $ skill patterns appear in light purple and @ mention patterns in light blue. Explicitly selected skills and plugins also receive a translucent background at their selected position; manually typed copies remain patterns. HTTP(S) URLs appear in blue with an underline, including Markdown link destinations, with surrounding delimiters and sentence punctuation excluded. URL query symbols do not become skill or mention highlights. Bare www. and other URL schemes are outside this highlighting grammar. Browsers without these APIs retain the plain textarea and the same autocomplete behavior. Native spell checking is disabled in the composer so skill and plugin names do not receive spelling-error underlines.

/settings/voice lists Codex-compatible voices even without a materialized workspace. Its default omits the per-session voice override, while an explicit selection is persisted only in browser storage and applies to the next conversation. Nine compact Opus samples provide local previews without requesting microphone access or creating threads or turns. Voice instructions start from the root-level experimental_realtime_ws_backend_prompt Codex setting and can be overridden for this browser under codori:realtime-voice-prompt:v1.

The application sidebar links to a routed Settings workspace. Notifications, Voice, and Backend have separate URLs, while /settings redirects to Notifications. /settings/backend is a read-only view of the safe runtime status fields and does not expose backend selection, lifecycle controls, or socket paths.

For the complete product documentation, see the repository README: https://github.com/comfuture/codori