A library for prototyping generative AI applications.
This library was inspired by the hardware maker community and their boundless creativity. They make amazing things with off-the-shelf parts and a breadboard, just wiring things together and trying this and that until it works.
Breadboard is an attempt to bring the same spirit of creativity and simplicity to making generative AI applications.
This library's design emphasizes two key properties:
1️⃣ Ease and flexibility of wiring. Make wiring prototypes easy and fun.
2️⃣ Modularity and composability. Easily share, remix, reuse, and compose prototypes.
The documentation is a bit of a work in progress. The best place to start is the this guide, although it is still incomplete. Please bear with us as we bring our words up to speed with our thoughts/actions.
This is the monorepo for Breadboard. See DEVELOPING.md for instructions on how to work within it.
Breadboard requires Node version >=v20.14.0.
Package Name | NPM | Description |
---|---|---|
Core | ||
@google-labs/breadboard |
The core breadboard library | |
@breadboard-ai/build |
Library for defining boards and node types | |
Kits | ||
@google-labs/core-kit |
Breadboard kit for foundational board operations like map and invoke |
|
@google-labs/json-kit |
Breadboard kit for working with JSON in boards | |
@google-labs/template-kit |
Breadboard kit to help with templating | |
@google-labs/palm-kit |
Breadboard kit for working with the PaLM API in boards | |
@exadev/breadboard-kits |
A variety of utilities, general purpose nodes, and kits specific scenarios | |
Tools & Support Libraries | ||
@google-labs/breadboard-cli |
Command-line tool for generating, running, and debugging boards | |
@google-labs/breadboard-extension |
Unpublished | VSCode extension to assist in building Breadboard applications |
@google-labs/breadboard-server |
Library for running boards as Google Cloud Functions | |
@google-labs/breadboard-ui |
Web Components for building applications with Breadboard | |
@google-labs/create-breadboard-kit |
NPM init/create script for creating a kit | |
@google-labs/create-breadboard |
NPM init/create script for creating a board | |
Examples | ||
@google-labs/cloud-function |
Unpublished | Example of using Cloud Functions with Breadboard |
@google-labs/coffee-bot-board |
Unpublished | Example board that can order coffee |
@google-labs/graph-playground |
Unpublished | Examples project that runs some sample boards |
@google-labs/breadboard-hello-world |
Unpublished | Example board based on the Breadboard tutorial |
Internal/Experiments | ||
@google-labs/breadboard-web |
Unpublished | Library for running boards in a web browser |
@google-labs/breadboard-website |
Unpublished | The documentation website for Breadboard |
@google-labs/breadbuddy |
Unpublished | Library for generating web applications from boards |
@google-labs/discovery-types |
Unpublished | Library which generates TypeScript declarations from the PaLM API Discovery Document |
@google-labs/graph-integrity |
Unpublished | Library that validates boards |
@google-labs/node-nursery-web |
Unpublished | A place for experimenting with board nodes that aren't yet ready for their own package (web specific) |
@google-labs/node-nursery |
Unpublished | A place for experimenting with board nodes that aren't yet ready for their own package (general) |
@google-labs/node-proxy-server |
Unpublished | Library that allows running nodes remotely |
@google-labs/pinecone-kit |
Unpublished | Library for working with the Pinecone vector database in boards |
Deprecated | ||
@google-labs/graph-runner |
Legacy library for executing boards |