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 🙏

© 2025 – Pkg Stats / Ryan Hefner

tambo

v0.45.0

Published

Tambo command-line tool

Readme

tambo-cli

The Official CLI for tambo ui.

⚠️ Note: This project is currently in active development. APIs and features may change.

Quick Start

npx tambo full-send

This command will:

  1. Set up your Tambo API key
  2. Install required components
  3. Configure your project with necessary dependencies

Installation

While you can install globally, we recommend using npx to ensure you're always using the latest version:

# Using npx (recommended)
npx tambo <command>

Commands

init

Initialize Tambo in your Next.js project. Two modes available:

# Full setup - recommended for new projects
npx tambo full-send

# Basic setup - just API key configuration
npx tambo init

add <component-name>

Add a Tambo component to your project:

# Basic usage
npx tambo add message

# With legacy peer dependencies flag
npx tambo add message --legacy-peer-deps

update <component-name>

Update an existing Tambo component in your project:

# Basic usage
npx tambo update message

# With legacy peer dependencies flag
npx tambo update message --legacy-peer-deps

Available components:

Chat Components

  • message-thread-full - Full-screen chat interface with history and typing indicators
  • message-thread-panel - Split-view chat with integrated workspace
  • message-thread-collapsible - Collapsible chat for sidebars
  • thread-content - Message thread with grouping and timestamps
  • thread-history - Chat history management
  • message-input - Rich text input
  • message - Individual message display with content formatting
  • message-suggestions - AI-powered message suggestions

Navigation & Control

  • control-bar - Spotlight-style command palette
  • thread-list - Organized chat thread navigation

Form & Input

  • form - Dynamic form with validation
  • input-fields - Text inputs
  • map - Interactive Map

Data Visualization

  • graph - Interactive charts (line, bar, scatter, pie)

Project Structure

When you add components, they'll be installed in your project following this structure:

your-next-app/
├── src/
│   ├── components/
│   │   └── ui/
│   │       ├── message-thread-full.tsx
│   │       └── ...
│   ├── lib/
│   │   └── tambo.ts       # Tool registry
│   └── app/
│       └── layout.tsx     # you could add TamboProvider here (for entire app)
└── .env.local            # Your API key configuration

Environment Setup

The CLI will automatically create/update your .env.local file with:

NEXT_PUBLIC_TAMBO_API_KEY=your-api-key

TamboProvider Setup

After initialization, you can add the TamboProvider in one of two ways:

Option 1: Page-specific (easiest)

If you just want to add Tambo to specific pages or components, this is the quickest approach:

// In a specific page file (e.g., app/ai-chat/page.tsx)
"use client"; // Important! TamboProvider is a client component

import { TamboProvider } from "@tambo-ai/react";
import { components } from "../../lib/tambo"; // Import components
import { MessageThreadFull } from "@/components/tambo/message-thread-full";

export default function AIChat() {
  return (
    <TamboProvider
      apiKey={process.env.NEXT_PUBLIC_TAMBO_API_KEY ?? ""}
      components={components}
    >
      <MessageThreadFull />
    </TamboProvider>
  );
}

Option 2: App-wide in layout file (best practice)

This approach provides better context sharing between components and is recommended for production apps:

// In your layout file (e.g., app/layout.tsx)
"use client"; // Important! TamboProvider is a client component

import { TamboProvider } from "@tambo-ai/react";
import { components } from "../lib/tambo"; // Import components

export default function RootLayout({ children }) {
  return (
    <html lang="en">
      <body>
        <TamboProvider
          apiKey={process.env.NEXT_PUBLIC_TAMBO_API_KEY ?? ""}
          components={components}
        >
          {children}
        </TamboProvider>
      </body>
    </html>
  );
}

Note: The TamboProvider manages client-side state for features like thread management, message history, and component state. The "use client" directive is required.

Documentation

For detailed documentation and examples, visit docs.tambo.co

For more information about all available components and installation options, check out the tambo ui showcase.

Development Status

This CLI is currently in active development. While core features are stable, you might encounter:

  • Regular updates with new features
  • API refinements
  • Additional component options
  • Enhanced configuration options

See demos of the components in action:

--> here <--

License

MIT License - see the LICENSE file for details.

Join the Community

We're building tools for the future of user interfaces. Your contributions matter.

Star this repo to support our work.

Join our Discord to connect with other developers.