# How to build an DVS on Pell?

Pell Network enables decentralized applications and protocols to leverage Bitcoin's cryptoeconomic security, making it a powerful tool for building robust and secure services.

<figure><img src="https://1921698442-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1Ay1mAaUhG6pkCWGdUQN%2Fuploads%2F9zaGUXDEDbUq23j14owF%2Fimage.png?alt=media&#x26;token=c7e0ca08-00db-4109-a0ee-054f99545606" alt=""><figcaption></figcaption></figure>

Here’s a step-by-step guide to help you turn your idea into a revolutionary Web3 application:

#### **Step 1: Learn Pell Network Fundamentals**

Learn the essential basics of Pell Network to understand what stakers and operators are.

#### **Step 2: Idea to Code - Testing and Deploying Your DVS Locally**

* **Smart Contract Requirements**: Integrate with Pell Network (DVS Directory) and implement at least one on-chain provable event.&#x20;
* **Contract Deployment Requirements**: Deploy Pell Restaking Layer contracts and state, then deploy your DVS contracts.&#x20;
* **Operator (Off-Chain) Requirements**: Ensure your DVS operates correctly and that at least one event is written to your DVS’s on-chain contracts for future verification, payments, and slashing purposes.&#x20;

#### **Step 3: Testing - Preparing and Deploying to Testnet**

* Ensure it is easy for operators to launch.
* Write clearly and legible Testnet User and Operator Documentation.
* Follow [Essential Security Practices for DVS Developers](https://docs.pell.network/dvs-developer-guides/resources/essential-security-practices-for-dvs-developers): Run containers with least privilege, use minimal base images, avoid storing key material in containers, and ensure communication channels with operators for upgrades.
* Adhere to [Critical Security Guidelines for Developers](https://docs.pell.network/dvs-developer-guides/resources/critical-security-guidelines-for-developers): Encrypt keys using a password or passphrase, use remote signers like Web3signer, and ensure secure key management practices.
* Implement the [DVS Node Specification](https://docs.pell.network/dvs-developer-guides/dvs-node-specification) for your operator executable package: Follow guidelines for DVS Node API, metrics, and key security considerations to ensure optimal operation.
* Follow the [Testnet Onboarding](https://docs.pell.network/dvs-developer-guides/dvs-onboarding) instructions: Implement required interfaces for DVS data indexing, operator registration, and restakeable strategies display on the UI.

#### **Step 4: Preparing and Deploying to Mainnet (Coming Soon)**

* **Smart Contract Auditing**: Have your codebase audited by at least 2-3 reputable audit firms.
* Finalize user and operator documentation.
* Follow the [Mainnet Onboarding](https://docs.pell.network/dvs-developer-guides/dvs-node-specification) instructions: Implement required interfaces for data indexing in the DVS Marketplace, ensure operator registration and deregistration functions, and update metadata for proper UI display.
