# NEBRA Docs

## NEBRA Documentation

- [Introduction](https://docs.nebra.one/introduction.md): Scale and compose zero-knowledge proofs on Ethereum.
- [What is NEBRA UPA?](https://docs.nebra.one/introduction/what-is-nebra-upa.md)
- [How it works](https://docs.nebra.one/introduction/how-it-works.md)
- [Quickstart](https://docs.nebra.one/introduction/quickstart.md)
- [Developer Guide](https://docs.nebra.one/developer-guide.md)
- [Setup](https://docs.nebra.one/developer-guide/setup.md): Step by step guide to set up the UPA for a zk-app.
- [Registering applications](https://docs.nebra.one/developer-guide/registering-applications.md)
- [Submission and verification](https://docs.nebra.one/developer-guide/submission-and-verification.md)
- [Proof explorer](https://docs.nebra.one/developer-guide/proof-explorer.md)
- [Gas costs on L1s](https://docs.nebra.one/developer-guide/gas-costs-on-l1s.md): End-to-end gas costs of using UPA on L1 chains (e.g. Ethereum Mainnet)
- [Gas Costs on L2s](https://docs.nebra.one/developer-guide/gas-costs-on-l2s.md): End-to-end gas costs of using UPA on L2 chains (e.g. Base Chain)
- [Testing workflow](https://docs.nebra.one/developer-guide/testing-workflow.md)
- [Frontend integration](https://docs.nebra.one/developer-guide/frontend-integration.md): Use the NEBRA UPA SDK in your dApp
- [Deployments](https://docs.nebra.one/developer-guide/deployments.md)
- [Off-chain verification](https://docs.nebra.one/developer-guide/off-chain-verification.md): Verification of proofs via an off-chain verification service
- [UPA protocol specification](https://docs.nebra.one/upa-protocol-specification.md): Version 1.2.0
- [Integrating with zkVMs](https://docs.nebra.one/integrating-with-zkvms.md)
- [Integrating with SP1](https://docs.nebra.one/integrating-with-zkvms/integrating-with-sp1.md)
- [Security and Transparency](https://docs.nebra.one/security-and-transparency.md)
