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 🙏

© 2024 – Pkg Stats / Ryan Hefner

waii-sdk-js

v1.24.0

Published

Typescript / Javascript SDK for the waii api. SQL generation and much more.

Downloads

509

Readme

Waii TypeScript/JavaScript SDK

Welcome to the SDK documentation for Waii - the worlds most powerful SQL API built on LLM agents. This documentation provides detailed information on how to use the SDK to interact with the system.

The SDK allows enables developers to generate, explain, describe, modify, transcode, optimize and run SQL queries from text input, as well as manage the semantic layer, handle database connections, perform semantic search, and access the history of generated queries. You can also generate visualizations from the SQL you are working with.

Whether you are looking to build a conversational client, analtyics tooling or database infrastructure, you have come to the right place. Waii makes it much easier to integrate advanced AI capabilities into your data-centric applications. Happy coding!

Getting Started

The SDK packages are maintained on npm: https://www.npmjs.com/package/waii-sdk-js

You can install the package via npm directly or add the dependency to your project's package.json file.

npm i waii-sdk-js -g

You will also need an API key to use the API. You can get your API key by reaching out to us here: https://www.waii.ai

That wraps up the pre-requisites. To get started with the WAII API, you first need to initialize the system.

// Import the WAII module
import WAII from 'waii-sdk-js';

// Initialize WAII with the URL and API key
WAII.initialize('https://tweakit.waii.ai/api/', 'your_api_key');

If it's the first time you're using the system you have to add a database connection. This can be done ahead of time / outside the sdk (using the UI for instance).

let result = await WAII.Database.modifyConnections(
        {
            updated: [{
                key: null, // will be generated by the system
                account_name: 'your account',
                database: 'your database name',
                warehouse: 'your warehouse name',
                role: 'desired user role',
                username: 'your username',
                password: 'your password',
                db_type: 'snowflake',
            }]
        }
    );

If you already have database connections configured you can activate them by key. Like so:

WAII.Database.activateConnection(<connection key>);

It can take little time depending on the number of tables in the system.

And now you are ready to generate queries:

let result = await WAII.Query.generate({
      ask: 'show me the revenue month over month for the last three years by store location'
});