CA : deploying
Features How It Works Staking Compare Faucet Social Roadmap FAQ Documentation ↗ GitHub ↗ Open Testnet Wallet →
Testnet Live — v1.0.5

A Decentralized
Graph Database
Secured by Blockchain

Proof-of-stake consensus meets a ledger-wide graph data structure. Create vertices, connect edges, and query data — all backed by a decentralized network with mobile staking.

PoS
Consensus
Proof-of-Stake consensus
UTxO
Ledger Model
Extended Unspent Transaction Output
324
Commits
Total commits in monorepo
19
Releases
Published GitHub releases
MPL-2.0
License
Mozilla Public License 2.0

Three ideas. One chain.

Giraffe combines a novel graph-based ledger with client-side block production and a built-in social layer.

Graph Database

Each UTxO is a vertex or edge in a ledger-wide graph. Connect data on-chain with permission-based edges — a developer-friendly graph DB backed by consensus.

vertex → edge → vertex

Proof-of-Stake

Relay nodes verify chain correctness and distribute data. The network is secured through proof-of-stake designed for maximum decentralization.

consensus::pos
📱

Mobile + Web Staking

Block production happens client-side in user wallets on phones and browsers. The goal: millions of people participating from their pockets.

blocks.produce(wallet)

Graph-native UTxO model

Unlike standard UTxO chains, Giraffe structures its ledger as a queryable, permission-based graph.

edge edge edge v₁ v₂ v₃ v₄ v₅ v₆ v₇
01

Vertex UTxOs

Each unspent transaction output represents a node in a graph, holding data and enforcing spend conditions.

02

Edge UTxOs

New edge UTxOs connect two vertices, requiring permission from both endpoints to form a permission-based graph.

03

Query the Graph

Apps traverse vertices and edges to query data — like a graph database, but decentralized and immutable.

04

Build dApps

Use the SDK to create, connect, and query data. Rich relationships between on-chain entities.

Protobuf Data Models

All protocol models defined in Protocol Buffers for cross-language support in Dart, TypeScript, and Scala.

🔗

Permission-Based Edges

Both vertices must authorize an edge connection — preventing spam and unauthorized relationships.

💾

Storage-Bounded

Graph data is encumbered by tokens to limit storage. There's a cap on vertex/edge info per UTxO.

📡

Relay Architecture

Relay nodes verify correctness and gossip data. Wallets connect to relays to submit TXs and produce blocks.

// Create a vertex UTxO const vertex = await sdk.createVertex({ data: { name: "Alice", type: "user" }, funds: 100 }); // Connect two vertices with an edge const edge = await sdk.createEdge({ from: vertexA.id, to: vertexB.id, label: "follows" }); // Query the graph const followers = await sdk.query({ vertex: "Alice", edges: "follows", direction: "incoming" });

⚠️ Pseudocode — actual SDK syntax may vary. View SDK docs →

Blocks built in your pocket

Block production happens inside wallets, not on servers. Stake from your phone or browser.

🦒 Giraffe Wallet
Testnet
Staked Balance
12,480
↑ +24 rewards today
Block #41,203+8 🦒
Block #41,187+8 🦒
Block #41,152+8 🦒
📱

Client-Side Production

Giraffe moves block production to user wallets. No mining rigs. No server farms. Just your phone.

🌍

Maximum Decentralization

Millions of participants staking from mobile — truly decentralized by default.

🖥️

Web + Mobile

Built with Flutter for seamless cross-platform experience on iOS, Android, and web.

🔗

Relay Nodes

Relays verify correctness and distribute data while block production stays in users' hands.

Try the Wallet →

How Giraffe stands out

Side-by-side comparison with other blockchain approaches.

FeatureGiraffe ChainTraditional PoSAccount-based
Ledger ModelGraph UTxOStandard UTxOAccount Balance
Native Graph DB Built-in
Mobile Block Production Client-side Server Server
Stake From Wallet Phone/WebDelegation onlyDelegation only
Permission Edges Built-in
Social Layer
Open Source MPL-2.0VariesVaries

A social network on the graph

The wallet includes a mini social network demonstrating the on-chain graph database.

Get testnet tokens

No centralized backend. Giraffe's faucet runs entirely through GitHub Actions.

1

Get your address

Open the Giraffe Wallet, create a new wallet, and copy your address.

2

Star the repo

Click ⭐ Star on the Giraffe repository on GitHub.

3

Create a public Gist

Go to gist.github.com. Set filename to {your_address}.giraffe_faucet. See example →

4

Done! Tokens incoming

The faucet workflow runs periodically and deposits funds at your address automatically.

Built with proven tools

Three languages — wallet, tooling, and core protocol — in one repository.

47%
Dart
Wallet & Mobile App (Flutter) — iOS, Android, Web
33%
TypeScript
Faucet, Web SDK, and developer tooling
19%
Scala
Core protocol, relay nodes, consensus engine

Roadmap

Where Giraffe Chain has been and where it's headed.

Phase 1

Core Protocol & Testnet

PoS consensus engine, UTxO ledger, relay node architecture, first public testnet.

✓ consensus✓ ledger✓ testnet
Phase 2

Graph Layer

Vertex + edge UTxO model, permission-based edges, embedded graph database.

✓ vertex✓ edge✓ graph-query
Phase 3

Wallet & Social

Flutter wallet with client-side block production and built-in social network demo.

✓ wallet✓ staking✓ social
Phase 4 — Current

SDK & Developer Tools

Expanding SDK, improving docs, building dev tools, iterating on testnet with community.

sdkdocsfaucetdevtools
Phase 5 — Future

Decentralized Mainnet

Reducing trust requirements, scaling the network, working toward a fully decentralized mainnet.

mainnettrustless-stakingscaling

Frequently asked

Two key things: First, its UTxO model supports a ledger-wide graph where each UTxO can be a vertex or edge. Second, block production happens client-side in user wallets rather than on dedicated servers, enabling true mobile staking.
Every UTxO represents a vertex or edge. Creating an edge between two vertices requires both to authorize, forming a decentralized, queryable graph directly on the ledger. Apps can traverse this graph for relationships and data.
Yes! Block production happens inside wallets. The Flutter app runs on iOS, Android, and web. Note: staking currently requires trust in the connected relay node — this is actively being improved.
No — Giraffe is in early, experimental development with no guarantees. Don't use real money. The project experiments with web3 ideas. You're welcome to explore the code and testnet.
Star the repo, create a public GitHub Gist with your address as the filename ending in .giraffe_faucet, and a GitHub Actions workflow deposits tokens automatically. Full instructions →
Dart (47% — Flutter wallet), TypeScript (33% — faucet, SDK, tools), and Scala (19% — core protocol, relay nodes). Data models use Protocol Buffers for cross-language support.
The wallet includes a mini social network on the graph DB. Users create profiles (vertices), make connections (edges), and share posts — all on-chain. It demonstrates how the graph enables real applications.
Check out the GitHub repo, join the Discord, or participate in GitHub Discussions. The project is open source under MPL-2.0.

Join the herd

Try the testnet wallet, read the docs, or dive into the open-source code.