The Premier Bitcoin-Native Application Platform

Arch, the first and only Bitcoin-native application platform, honors the sovereignty principles Bitcoin was built on while simultaneously extending the world's most secure and liquid blockchain with full programmability and execution. This fusion introduces a new realm of possibilities, and for the first time, developers have the tools to build decentralized applications (dApps) and protocols on the most trusted blockchain in existence. Arch leverages the efficiency of Solana's design principles, combined with Bitcoin's unmatched liquidity and security, to facilitate seamless, turing-complete smart contract execution on Bitcoin's native chain.

1   #!/usr/bin/env bash
2   
3   export INDENT_LEVEL=2
4   
5   indent() {
6   local indent=${1:-"$INDENT_LEVEL"}
7     sed "s/^/$(printf ' %.0s' $(seq 1 "$indent"))/"
8   }
9   
10   group() {
11    # shellcheck disable=SC2016 # don't want these expressions expanded
12    local name="${1:?'buildkite `group` generator requires a `name`'}"
13    if [[ $# -lt 2 ]]; then
14      echo "no steps provided for buildkite group \`$name\`, omitting from pipeline" 1>&2
15       return
16     fi
17     cat <<EOF | indent
18   - group: "$name"
19     steps:
20   EOF
21     shift
22   
23     INDENT_LEVEL=$((INDENT_LEVEL + 4))
24     for params in "$@"; do
25       step "$params"
26     done
27     INDENT_LEVEL=$((INDENT_LEVEL - 4))
28    }
29   
30   step() {

1   #!/usr/bin/env bash
2   
3   export INDENT_LEVEL=2
4   
5   indent() {
6   local indent=${1:-"$INDENT_LEVEL"}
7     sed "s/^/$(printf ' %.0s' $(seq 1 "$indent"))/"
8   }
9   
10   group() {
11    # shellcheck disable=SC2016 # don't want these expressions expanded
12    local name="${1:?'buildkite `group` generator requires a `name`'}"
13    if [[ $# -lt 2 ]]; then
14      echo "no steps provided for buildkite group \`$name\`, omitting from pipeline" 1>&2
15       return
16     fi
17     cat <<EOF | indent
18   - group: "$name"
19     steps:
20   EOF
21     shift
22   
23     INDENT_LEVEL=$((INDENT_LEVEL + 4))
24     for params in "$@"; do
25       step "$params"
26     done
27     INDENT_LEVEL=$((INDENT_LEVEL - 4))
28    }
29   
30   step() {

Turing Completeness.
Trustless Interoperability.

Welcome to the Future of Bitcoin with Arch
INDEPENDENT STATES

Ordinals
BRC-20s
Runes

EFFICIENCY BY DESIGN

Decoupled & Independent States
Parallel Execution
ZK Validity Proofs

ATOMIC EXECUTION

State Changes
Assets Transfers
Bridgeless Execution

ARCH validator network
The Arch Network

The Arch Opportunity By The Numbers

$1.3T+
LIQUIDITY ON BITCOIN
$15M
TOTAL SMART CONTRACT VALUE
LOCKED
10M
TOTAL SMART CONTRACTS DEPLOYED & CONFIRMED
20+
SUPPORTED PROJECTS ON BTC

Develop With Arch

Arch Network equips developers with the tools to build directly on Bitcoin's foundational layer, enhancing its utility while upholding its inherent security. Facilitate data transfer, mint tokens, and develop decentralized applications (dApps) leveraging Bitcoin's robust architecture through Arch's innovative contract standards. This platform transforms Bitcoin into a versatile base for a wide range of blockchain applications, maintaining the blockchain's core principles of decentralization and sovereignty.

APPLY TO BUILD

Step into the future of Bitcoin with Arch: Start your journey by joining our vibrant developer community. Fill out the form to unlock a world of innovation on Bitcoin's Layer 1.
Together, we're building tomorrow.

1   #!/usr/bin/env bash
2   
3   export INDENT_LEVEL=2
4   
5   indent() {
6   local indent=${1:-"$INDENT_LEVEL"}
7     sed "s/^/$(printf ' %.0s' $(seq 1 "$indent"))/"
8   }
9   
10   group() {
11    # shellcheck disable=SC2016 # don't want these expressions expanded
12    local name="${1:?'buildkite `group` generator requires a `name`'}"
13    if [[ $# -lt 2 ]]; then
14      echo "no steps provided for buildkite group \`$name\`, omitting from pipeline" 1>&2
15       return
16     fi
17     cat <<EOF | indent
18   - group: "$name"
19     steps:
20   EOF
21     shift
22   
23     INDENT_LEVEL=$((INDENT_LEVEL + 4))
24     for params in "$@"; do
25       step "$params"
26     done
27     INDENT_LEVEL=$((INDENT_LEVEL - 4))
28    }
29   
30   step() {

1   #!/usr/bin/env bash
2   
3   export INDENT_LEVEL=2
4   
5   indent() {
6   local indent=${1:-"$INDENT_LEVEL"}
7     sed "s/^/$(printf ' %.0s' $(seq 1 "$indent"))/"
8   }
9   
10   group() {
11    # shellcheck disable=SC2016 # don't want these expressions expanded
12    local name="${1:?'buildkite `group` generator requires a `name`'}"
13    if [[ $# -lt 2 ]]; then
14      echo "no steps provided for buildkite group \`$name\`, omitting from pipeline" 1>&2
15       return
16     fi
17     cat <<EOF | indent
18   - group: "$name"
19     steps:
20   EOF
21     shift
22   
23     INDENT_LEVEL=$((INDENT_LEVEL + 4))
24     for params in "$@"; do
25       step "$params"
26     done
27     INDENT_LEVEL=$((INDENT_LEVEL - 4))
28    }
29   
30   step() {

TEST NET ACCESS

Be among the pioneers to experience Bitcoin's first programmable smart contracts. Join our incentivized test net and shape the future of blockchain innovation. Sign up now to embark on this groundbreaking journey with Arch.

1   #!/usr/bin/env bash
2   
3   export INDENT_LEVEL=2
4   
5   indent() {
6   local indent=${1:-"$INDENT_LEVEL"}
7     sed "s/^/$(printf ' %.0s' $(seq 1 "$indent"))/"
8   }
9   
10   group() {
11    # shellcheck disable=SC2016 # don't want these expressions expanded
12    local name="${1:?'buildkite `group` generator requires a `name`'}"
13    if [[ $# -lt 2 ]]; then
14      echo "no steps provided for buildkite group \`$name\`, omitting from pipeline" 1>&2
15       return
16     fi
17     cat <<EOF | indent
18   - group: "$name"
19     steps:
20   EOF
21     shift
22   
23     INDENT_LEVEL=$((INDENT_LEVEL + 4))
24     for params in "$@"; do
25       step "$params"
26     done
27     INDENT_LEVEL=$((INDENT_LEVEL - 4))
28    }
29   
30   step() {

1   #!/usr/bin/env bash
2   
3   export INDENT_LEVEL=2
4   
5   indent() {
6   local indent=${1:-"$INDENT_LEVEL"}
7     sed "s/^/$(printf ' %.0s' $(seq 1 "$indent"))/"
8   }
9   
10   group() {
11    # shellcheck disable=SC2016 # don't want these expressions expanded
12    local name="${1:?'buildkite `group` generator requires a `name`'}"
13    if [[ $# -lt 2 ]]; then
14      echo "no steps provided for buildkite group \`$name\`, omitting from pipeline" 1>&2
15       return
16     fi
17     cat <<EOF | indent
18   - group: "$name"
19     steps:
20   EOF
21     shift
22   
23     INDENT_LEVEL=$((INDENT_LEVEL + 4))
24     for params in "$@"; do
25       step "$params"
26     done
27     INDENT_LEVEL=$((INDENT_LEVEL - 4))
28    }
29   
30   step() {