# Gadgets

> How gadgets work in o1js.

Canonical URL: https://docs.minaprotocol.com/zkapps/o1js/gadgets

Gadgets are small, reusable low-level building blocks that simplify the process of creating new cryptographic primitives. Most gadgets build upon custom gates and act as low-level accelerators in the proof system.

In o1js, you can import these provable and helper methods from the `Gadgets` namespace:

- [Bitwise Operations](/zkapps/o1js/bitwise-operations)
- [Foreign Field Arithmetic](/zkapps/o1js/ecdsa)

See the type declaration for [Gadgets](https://docs.o1labs.org/o1js/api-reference/variables/Gadgets) in the o1js Reference documentation.
