creates infrastructure for hardware design

CAD Software for Modern Hardware Design

The industry is due for a refresh

Design demands have outpaced today’s hardware design infrastructure.

We're laying the foundation for a modern hardware design toolkit, so that you can create new design tools never before possible.

  • GPU-powered engine
  • Pay-as-you-go
  • Remote streaming
  • Open API-compliant
our geometry engine in use

The Ecosystem

Develop your own hardware design tools with our infrastructure, or use our pre-built tools.

Third-party integrations



Developer Platform

Training environments

Coming Q2 2024

Powerful, modern design tools

Whether you're a hobbyist, part of a startup, or involved in a large enterprise, Zoo's secure infrastructure is built to expedite the development and growth of your projects and tools.

Modeling App

Public Alpha

A CAD modeling tool that brings the best of both worlds from point-and-click and code editing.

Join the public alpha

Developer Platform

Learn how to call our KittyCAD and ML-ephant APIs, build your own hardware design tools, and much more.

  • Move faster with lower costs

    Save time and engineering resources through increased designer productivity. Reduce costs through automated workflows, higher performance, and customized tools.

  • Minimize hardware requirements

    Offload the computation for geometry processing and visualization rendering to our Geometry Engine, allowing for tools built for any device, any operating system.

  • Accelerate design with ML

    Using tools like our Text-to-CAD interface, generate hardware designs that you can finalize. Extend Text-to-CAD via our Machine Learning APIs.

Start building with

Get started with 40 free minutes of API access, followed by a cost of $0.50 per minute for additional usage.

Modeling App, Text-to-CAD, and Diff Viewer are currently free to use.

Sign up
import { endpoints, type PromptResponse } from '$lib/endpoints'
import { error, json } from '@sveltejs/kit'
import type { RequestHandler } from './$types'
export type PromptLoadResponse = {
	status: number
	body?: PromptResponse
export const POST: RequestHandler = async ({ cookies, fetch, request }) => {
	const token = cookies.get('__Secure-next-auth.session-token')
	if (!token) throw error(401, 'You must be logged in to use this API.')
	const body = await request.json()
	if (!body?.prompt) throw error(422, 'Please include a model ID under the "prompt" key.')
	const response = await fetch(endpoints.prompt(), {
		method: 'POST',
		headers: {
			'Content-Type': 'application/json',
			Authorization: `Bearer ${token}`
		body: JSON.stringify({
			prompt: body.prompt
	const data = (await response.json()) as PromptResponse
	return json({
		status: response.status,
		body: data
	} satisfies PromptLoadResponse)
View on GitHub
  • 4 client libraries
  • Learnable interface
  • 5 inspiring tools
  • Autoscaling infrastructure

Stay connected with the hardware design community