Vote openOP-41: Raise the block compute limit by 25%

Final in under a second. Open to everyone.

Ostrel is an open, proof-of-stake network run by 412 independent validators. Build apps that settle before the page refreshes, or pick a wallet and start using the ones already here.

Scaffold an app on testnet in one command

npx create-ostrel-app@latest
MainnetSimulated · sample data
Latest finalised block214,906,318
Transactions
1,002
Finalised in
0.37 s
One tile per blockbusier
Last 10 blocks
2,620 tx/s
Block time
400 ms
Validators
412

The network in numbers

Median time to finality
0.42s
Transactions per second, 24 h average
3,180
Median transaction fee
0.0004OSL
Active validators in 58 countries
412

Sample dataAs of

Get started

Three ways in

Whether you are holding your first token or shipping your tenth program, start from where you are.

How it works

Five layers, each doing one job

From the app in your hand down to the wire between validators. Select a layer to see what it does.

Read the overview

Layer 01

Applications

Wallets, exchanges, payments, games and social apps. They call programs on the network and show people the result — usually in under a second.

  • Passkeys and session keys for wallet-light apps
  • Readable names instead of long addresses
  • Every listed app in the ecosystem directory

Ecosystem

Already running on the network

18 teams build wallets, exchanges, payments, data services and games on Ostrel.

Browse all projects

For developers

Send a transaction and watch it finalise

SDKs for TypeScript, Rust and Python, a local network with instant blocks and a faucet for testnet tokens. Every sample on this page runs against testnet.

  • Program templates for payments, tokens and games
  • Fork mainnet state onto your laptop for tests
  • Free public endpoints, with dedicated RPC from ecosystem providers
import { Client, Keypair, osl } from "@ostrel/sdk";

const client = new Client(process.env.OSTREL_RPC_URL ?? "https://rpc.testnet.ostrel.example");
const payer = Keypair.fromEnv();

// Send 1.5 OSL and wait until the block is final.
const receipt = await client.transfer({
  from: payer,
  to: "mara.osl",
  amount: osl("1.5"),
});

console.log(receipt.status, receipt.finalizedInMs); // "final" 412

Meet in person

Where the community gathers next

All events
Developers working at monitors and laptops around a shared desk in a bright office.

Grants

Funding for the teams that make the network useful

Grants from 20,000 to 500,000 OSL, paid in milestones and decided by an elected committee. Every grant is published.

Governance

Changes are proposed in public and decided by stake

All proposals

News

Latest from the network

All news
  • Upgrades

    The Harbour upgrade is live on mainnet

    Parallel execution for independent transactions, a 30% cut in median fees and a new fee market for busy programs.

  • Research

    Measuring finality honestly

    Why we publish the median and the 99th percentile, and what our finality figure does and does not include.

  • Ecosystem

    Meet grants cohort four

    Twenty-two teams, from payment links to a third validator client, and what they will ship by March.

Your first program, live on testnet today

The quickstart takes about ten minutes. When you are ready for mainnet, the grants committee is ready for you.