breadboard
breadboard copied to clipboard
A library for prototyping generative AI applications.
Breadboard
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:
:one: Ease and flexibility of wiring. Make wiring prototypes easy and fun.
:two: Modularity and composability. Easily share, remix, reuse, and compose prototypes.
Documentation
The documentation is a bit of a work in progress. The best place to start is the this guide, hosted on the nascent docs site. Please bear with us as we bring our words up to speed with our thoughts/actions.
Monorepo
This is the monorepo for Breadboard. See DEVELOPING.md for instructions on how to work within it.
Requirements
Breadboard requires Node version >=v20.14.0.
Packages
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 | |
@breadboard-ai/import |
Library for importing boards from an OpenAPI spec | |
@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/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/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 |