MCPcopy Index your code
hub / github.com/ethereum/trin

github.com/ethereum/trin @v0.3.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.3.3 ↗ · + Follow
2,966 symbols 9,467 edges 392 files 702 documented · 24%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Trin

Trin is a Rust implementation of a Portal Network client.

How to use Trin

Check out the Trin book to quickly get up and running with Trin.

NOTE: This project uses Git Submodules. If you just cloned the project, be sure to run: git submodule update --init. See our dedicated page for more info.

Want to help?

Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our guidelines for contributing in the Trin book, then check out issues that are labeled Good First Issue.

Join our Discord to participate in the conversation!

Extension points exported contracts — how you extend this code

ContentStore (Interface)
A data store for Portal Network content (data). [4 implementers]
crates/storage/src/lib.rs
Validator (Interface)
Used by all overlay-network Validators to validate content in the overlay service. [4 implementers]
crates/validation/src/validator.rs
TxEnvModifier (Interface)
(no doc) [6 implementers]
crates/evm/src/tx_env_modifier.rs
OverlayContentKey (Interface)
Types whose values represent keys to lookup content items in an overlay network. Keys are serializable as "0x" prefixed [4 …
crates/ethportal-api/src/types/content_key/overlay.rs
ProcessBeaconBlock (Interface)
(no doc) [5 implementers]
bin/trin-execution/src/e2hs/beacon.rs
PingExtensions (Interface)
(no doc) [4 implementers]
crates/portalnet/src/overlay/ping_extensions.rs
Database (Interface)
(no doc) [4 implementers]
crates/light-client/src/database.rs
Weight (Interface)
A trait for calculating peer's weight. [1 implementers]
bin/portal-bridge/src/census/scoring.rs

Core symbols most depended-on inside this repo

clone
called by 788
crates/portalnet/src/overlay/service/manager.rs
into
called by 199
crates/ethportal-api/src/types/portal_wire.rs
from_ssz_bytes
called by 166
crates/ethportal-api/src/types/execution/ssz_header.rs
len
called by 150
bin/portal-bridge/src/census/peers.rs
iter
called by 148
crates/portalnet/src/find/query_pool.rs
tree_hash_root
called by 133
crates/ethportal-api/src/types/consensus/signature.rs
as_ssz_bytes
called by 90
crates/ethportal-api/src/types/consensus/participation_flags.rs
hex_decode
called by 71
crates/ethportal-api/src/utils/bytes.rs

Shape

Method 1,455
Function 987
Class 387
Enum 106
Interface 31

Languages

Rust100%

Modules by API surface

crates/portalnet/src/overlay/service/manager.rs58 symbols
bin/trin/src/cli.rs57 symbols
crates/rpc/src/rpc_server.rs50 symbols
crates/light-client/src/consensus/consensus_client.rs49 symbols
crates/storage/src/versioned/id_indexed_v1/store.rs46 symbols
crates/rpc/src/builder.rs44 symbols
crates/ethportal-api/src/types/portal_wire.rs41 symbols
crates/portalnet/src/types/kbucket.rs38 symbols
crates/subnetworks/beacon/src/storage.rs35 symbols
crates/ethportal-api/src/types/content_key/history.rs34 symbols
crates/portalnet/src/overlay/protocol.rs33 symbols
testing/ethportal-peertest/src/utils.rs29 symbols

For agents

$ claude mcp add trin \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page