AN ARTIFICIALLY RESTRICTED SOCIAL GRAPH
ten_cubed caps your network at 10 close connections across 3 degrees of reach, a hard ceiling that mirrors how human trust actually works. No feeds tuned for virality. No followers. No influencers.
10 × 10 × 10 / MAX 1,110 CONNECTIONS / USER-CONTROLLED DEPTH / DUNBAR-ALIGNED
YOU 1
THE ROOT NODE
DEGREE 01 10
CLOSE FRIENDS & FAMILY
DEGREE 02 100
A SMALL VILLAGE
DEGREE 03 1,000
EACH ○ = 10 NODES A SMALL CITY
10 MAX DIRECT CONNECTIONS
Adding an 11th means removing one. The 1st degree stays coveted.
1,110 HARD NETWORK CEILING
Three degrees, ever. No app or service can exceed it.
0 INFLUENCERS, EVER
No follower counts to accumulate. Nothing to enshittify.
SEC. 02 — HOW IT WORKS
Three rules. One bounded graph.
Hard cap of ten
You can never hold more than ten direct connections.
Three degrees of reach
Ten friends, one hundred friends-of-friends, one thousand at the third degree. A family, a village, a small city. Dunbar-scaled by design.
You set the depth
Users choose how deep their network reaches. Privacy-first? Stop at 10. Open? All 1,110. Never more.
SEC. 03 — WHY BOUND THE GRAPH
What scarcity gets you.
Virality meets friction
Content propagates to your 3rd degree, then stops. Coordinated manipulation simply doesn't scale.
Meaningful connections
With only ten slots, the 1st degree is coveted and deeply trusted. Apps can build on that trust in ways hyper-scaled networks never could.
No influencer economy
Nobody can accumulate followers, so nobody can monetize an audience in questionable ways. The enshittification cycle never starts.
SEC. 04 — KNOWN TRADE-OFFS READ BEFORE BUILDING
⚠ 01
Not built for broadcast
One-to-many platforms don't map to ten_cubed. Your audience caps at 1,110 by design. If you need unbounded reach, this isn't your graph.
⚠ 02
The graph is volatile
Drop a 1st-degree connection and their entire branch vanishes with them. Apps must decide: hide orphaned content, label it, or cancel pending transactions.
SEC. 05 — IMPLEMENTATION
The entire graph is one recursive query.
No graph database. No infrastructure. A single recursive CTE walks the network outward from any user, respecting each connection's own max_degree along the way. Drop it into Postgres and you have a bounded social graph.
- PLAIN POSTGRESQL — WORKS IN ANY APP
- RESPECTS EVERY USER'S MAX_DEGREE SETTING
- DEPTH-BOUNDED: NEVER WALKS PAST DEGREE 3
friend_of_friend.sql WITH RECURSIVE / PG 14+
-- Set once per session:
SET ten_cubed.user_id = '42';
SET ten_cubed.max_depth = '3';
WITH RECURSIVE friend_of_friend AS (
SELECT connections.target_id,
users.max_degree,
1 AS depth
FROM connections
JOIN users
ON connections.target_id = users.id
WHERE connections.user_id =
current_setting('ten_cubed.user_id')::bigint
UNION ALL
SELECT connections.target_id,
users.max_degree,
depth + 1
FROM connections
JOIN users
ON connections.target_id = users.id
JOIN friend_of_friend
ON connections.user_id
= friend_of_friend.target_id
WHERE depth <
current_setting('ten_cubed.max_depth')::int
AND depth < users.max_degree
)
SELECT DISTINCT ON (users.id)
users.*,
friend_of_friend.depth AS degree
FROM users
JOIN friend_of_friend
ON users.id = friend_of_friend.target_id
WHERE users.id !=
current_setting('ten_cubed.user_id')::bigint
ORDER BY users.id, friend_of_friend.depth;
SEC. 06 — IN THE WILD
Built on ten_cubed.
bookscubed.com
BooksCubed Sign In Join
Find amazing books from people you know.
An intimate space to discover and share great books. No ads, no gimmicks, no infinitely growing social networks.
Start Your Shelf
CASE STUDY — BOOKSCUBED.COM
A library shared with real friends.
BooksCubed is an intimate space to discover and share great books. Every recommendation comes from someone close to you, because the graph underneath is ten_cubed.
- Ten personal connections per reader — that's it.
- Readers set their own reach: closest ten, or friends-of-friends.
- The full network caps at 1,110 — a small town of book lovers.
Build something bounded.
Many ideas work incredibly well inside the limits ten_cubed provides. What will you build?