Skip to main content

Form

Build hardware from ideas.

Form is an open-source AI hardware design workspace. Describe a design, add reference images, and iterate toward CAD models, wiring diagrams, bills of materials, and assembly instructions.

License: MPL 2.0 PyPI GitHub stars

Try Form · Browse projects · Run locally · Documentation

See it in action

Mechanical design and motion previews:

Hexapod walking Screw-driven arm Robotic 3D printer
Top view of a six-legged hexapod walking Screw-driven robotic arm approaching a part Robotic printer arm moving over a print bed

Watch the full walkthrough: designing a security camera →

Preview the security camera workflow

Form workflow creating a security camera

What you can build

  • CAD you can take with you. Preview mechanical designs in 3D and export STEP, STL, 3MF, and OBJ from supported native CAD builds.
  • Electronics with the details attached. Generate a bill of materials, interactive wiring diagrams, and assembly instructions. Rule-based checks flag shorts, voltage mismatches, pin conflicts, and other electrical issues.
  • Designs you can keep refining. Use follow-up instructions to change geometry, dimensions, placement, and requirements within an existing project.
  • Mechanisms you can inspect. Play, pause, and scrub supported joint-driven motion previews, including the two meshing gears example.
  • Hardware workflows for your agents. Use Forma through the web app, Python package, CLI, or MCP. The shared skill works with OpenCode, Claude Code, Codex, OpenClaw, and NemoClaw.

Forma is an alpha research prototype for makers and developers. Electrical validation focuses on 3.3–5 V educational projects; CAD and motion previews still need engineering review before fabrication. See scope and validation.

Quick start

Use Form in your browser, or run it locally with OpenCode. Local authoring, validation, rendering, and project status do not require a Forma account.

Run locally with OpenCode

You need Python 3.11+, Node.js and npm (Node.js 22+ recommended), Git, and OpenCode with a working model connection. Your model provider's usage charges still apply.

macOS / Linux

curl --proto '=https' --tlsv1.2 -fsSL https://raw.githubusercontent.com/caid-technologies/Forma-OSS/main/scripts/development/install-opencode.sh | bash

Windows PowerShell

irm https://raw.githubusercontent.com/caid-technologies/Forma-OSS/main/scripts/development/install-opencode.ps1 | iex

The installer creates ~/forma-workspace, adds the Forma skill and MCP connection, installs missing app dependencies, and starts the backend and frontend. Keep that terminal open, then open a second terminal:

cd ~/forma-workspace
opencode mcp list
opencode

Try a first prompt:

Design a 3.3 V temperature monitor with an OLED display. Include a bill of materials, wiring, and an enclosure.

Open the local UI at localhost:3000. CAD generation and exports also require the native OpenCAD setup. For installation details and troubleshooting, see the setup guide.

Develop from source, use Docker, or install the Python core

Clone the repository and start the app:

git clone https://github.com/caid-technologies/Forma-OSS.git
cd Forma-OSS
./scripts/development/dev.sh

On Windows, replace the last command with .\scripts\development\dev.ps1.

The launcher starts the API and UI with local authentication and SQLite. Configure an agent connection or a model provider for live generation.

For Docker, run docker compose up --build from the repository root. See Docker setup for configuration and persistence.

For the reusable Python core and CLIs:

pip install caid-forma-core
forma-core --help
forma-oss --help

See the CLI and runtime reference for generation, iteration, local credentials, and cloud sync.

Install Forma for Cursor / Grok Bot

Install the Cursor plugin to discover the shared forma-hardware skill and local Streamable HTTP MCP connection. The guide covers local installation, protected cloud authentication, CLI-only use, and compatible Grok Bot deployments. Marketplace publication requires a separate maintainer submission and review; the repository includes the packaging and checklist.

How it works

  1. Describe the project. Start with requirements and optional reference images; refine the design through conversation.
  2. Author a structured design. An agent produces Hardware Intermediate Representation, Forma's typed, versioned representation of components, connections, geometry, and project history.
  3. Compile and inspect. Forma validates the design and produces schematics, previews, and supported CAD artifacts. Iterate on the saved project as your requirements change.

With the local agent workflow, your host agent supplies the model and Forma performs deterministic compilation. The reusable forma_core package also supports server-side generation. See architecture and agent integrations.

Go deeper

I want to… Start here
Install or self-host Form Setup · CLI and runtime reference
Connect my own agent Agent integrations · Model and image configuration
Understand the project format Hardware Intermediate Representation · Architecture
Explore examples and motion Examples · Gear motion preview
Reconstruct CAD history in Onshape, NX, or Fusion AI-assisted CAD migrations
Contribute or evaluate results Contributing · Development · Evaluations

All documentation · Roadmap · Report a bug

Build with us

Try a design, share what worked, or help improve CAD generation, validation, examples, and the interface. Read CONTRIBUTING.md for the contribution workflow.

If you want open-source hardware design to be easier, star Forma to follow its progress and help other builders find it.

Built by Caid Technologies. Licensed under the Mozilla Public License 2.0.

Metadata

Release files for caid-forma-core 0.3.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for caid-forma-core 0.3.6
File Size Uploaded
caid_forma_core-0.3.6.tar.gz 496.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for caid-forma-core 0.3.6
File Interpreter ABI Platform
caid_forma_core-0.3.6-py3-none-any.whl Python 3 none any Details

Total release size: 1.1 MB

Release files / caid_forma_core-0.3.6.tar.gz

Download URL caid_forma_core-0.3.6.tar.gz
Size 496.4 kB
Tags Source
SHA-256 checksum
How to use checksums
048fd320e6024ff8b60451d1ff021a1c7be30a902e66e52cd05215ab7d33b6fb
BLAKE2b-256 checksum
How to use checksums
cc3aaafa12ddffea40297ca991dd9f715ac6ffe8d2e6ecb9e4fa55a1bf8f74ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / caid_forma_core-0.3.6-py3-none-any.whl

Download URL caid_forma_core-0.3.6-py3-none-any.whl
Size 571.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ae59dbb725eeb33b159a095a10b40af9888c31374cee2fa5488abc614ceeea35
BLAKE2b-256 checksum
How to use checksums
5feafcceb244b8a94c026fd85d2b0114aa0169a916033b2469abb1d270eb3027
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.3.6 This release

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page