GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - evstack/ev-node: A modular framework for building performant networks, pushing the boundary of today in order to build the apps of tomorrow.

BranchesTags
Open more actions menu

Latest commit

 

History

1,876 Commits
1,876 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
.just
.just
 
 
apps
apps
 
 
block
block
 
 
client
client
 
 
core
core
 
 
da/celestia
da/celestia
 
 
docs
docs
 
 
execution/evm
execution/evm
 
 
node
node
 
 
pkg
pkg
 
 
proto
proto
 
 
scripts
scripts
 
 
test
test
 
 
tools
tools
 
 
types
types
 
 
.gitignore
.gitignore
 
 
.golangci.yml
.golangci.yml
 
 
.markdownlint.yaml
.markdownlint.yaml
 
 
.mockery.yaml
.mockery.yaml
 
 
.yamllint.yml
.yamllint.yml
 
 
AGENTS.md
AGENTS.md
 
 
CHANGELOG.md
CHANGELOG.md
 
 
CLAUDE.md
CLAUDE.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
Cargo.lock
Cargo.lock
 
 
Cargo.toml
Cargo.toml
 
 
LICENSE
LICENSE
 
 
NOTICE
NOTICE
 
 
README.md
README.md
 
 
RELEASE.md
RELEASE.md
 
 
buf.gen.evm.yaml
buf.gen.evm.yaml
 
 
buf.gen.yaml
buf.gen.yaml
 
 
buf.yaml
buf.yaml
 
 
codecov.yml
codecov.yml
 
 
go.mod
go.mod
 
 
go.sum
go.sum
 
 
go.work.example
go.work.example
 
 
justfile
justfile
 
 
mlc_config.json
mlc_config.json
 
 

Repository files navigation

EV-node

Ev-node is the basis of the Evolve Stack. For more in-depth information about Evolve, please visit our website.

Go Report Card codecov GoDoc

⚠️ Version Notice: Do not use tags or releases before v1.*. Pre-v1 releases are not stable and should be considered abandoned.

Using Evolve

Evolve supports multiple sync modes:

  • Hybrid sync: Sync from both DA layer and P2P network (default when peers are configured)
  • DA-only sync: Sync exclusively from DA layer by leaving P2P peers empty (see Configuration Guide)
  • P2P-priority sync: Prioritize P2P with DA as fallback

Example Implementation: TestApp CLI

The easiest way to understand how to use Evolve is by exploring our example implementation, TestApp.

Requires Go version >= 1.26.0, as specified in go.mod.

TestApp is a CLI tool that demonstrates how to run different kinds of nodes using the Evolve framework. It serves as a reference implementation and helps you understand how to build your own Evolve-based blockchain.

Install

To install the example testapp, simply run the following command at the root of the ev-node repo:

just install

The latest TestApp example is now installed. You can verify the installation by running:

testapp version

Quick Start

You can spin up a local TestApp network (powered by Evolve) with the following command:

testapp start

Building with Evolve

Evolve is the first sovereign application framework that allows you to launch a sovereign, customizable blockchain as easily as a smart contract. TestApp serves as a reference implementation to help you get started with your own Evolve-based blockchain.

Check out our tutorials on our website.

Onboarding with Claude Code

Use Claude Code to explore the codebase:

cd ev-node && claude

Example prompts:

Goal Prompt
Overview "How does ev-node work?"
Block package "Explain block production flow"
DA layer "How does the DA layer work?"
Sequencing "Explain single vs based sequencer"

The .claude/skills/ev-node-explainer/ skill provides architecture docs for block, DA, and sequencing systems.

Contributing

We welcome your contributions! Everyone is welcome to contribute, whether it's in the form of code, documentation, bug reports, feature requests, or anything else.

If you're looking for issues to work on, try looking at the good first issue list. Issues with this tag are suitable for a new external contributor and is a great way to find something you can help with!

See the contributing guide for more details.

Please join our Community Discord to ask questions, discuss your ideas, and connect with other contributors.

Helpful commands

# Run unit tests
just test

# Generate protobuf files (requires Docker)
just proto-gen

# Run linters (requires golangci-lint, markdownlint, hadolint, and yamllint)
just lint

# Lint protobuf files (requires Docker and buf)
just proto-lint

Tools

  1. Install golangci-lint
  2. Install markdownlint
  3. Install hadolint
  4. Install yamllint

Audits

Date Auditor Version Report
2024/01/12 Informal Systems eccdd...bcb9d informal-systems.pdf
2024/01/10 Binary Builders eccdd...bcb9d binary-builders.pdf

About

A modular framework for building performant networks, pushing the boundary of today in order to build the apps of tomorrow.

Resources

Readme
Apache-2.0 license

Contributing

Contributing

Security policy

Security policy
Activity
Custom properties

Stars

362 stars

Watchers

19 watching

Forks

293 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.