ethereum/solidity-examples

Loose collection of Solidity example code

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 54 minutes ago
Added to GitGenius on June 25th, 2026
Created on November 11th, 2016
Open Issues & Pull Requests: 21 (+0)
Number of forks: 159
Total Stargazers: 580 (+0)
Total Subscribers: 8 (+0)

Repository Insights (GitGenius)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 1
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 436 days
Stale 30+ days: 1
Stale 90+ days: 1

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

The ethereum/solidity-examples repository is a collection of Solidity example code designed to serve as a temporary storage location for a standard library of Solidity contracts. Written primarily in Solidity, the repository is classified across multiple domains including smart contracts, Ethereum blockchain development, code samples, tutorials, and learning resources. The codebase is specifically designed to run on Metropolis-compliant networks and requires Solidity version 0.5.0 or later for compilation.

The repository is organized into eight distinct packages, each addressing specific functionality needs for Solidity developers. The bits package provides utilities for working with bitfields and unsigned integers. The bytes package handles operations on bytes in memory and facilitates conversion between bytes and other data types. The math package enables mathematical operations with both signed and unsigned integers through an ExactMath contract. The patricia_tree package implements the standard Solidity Patricia tree implementation, including both PatriciaTree and Data contracts. The strings package focuses on Solidity string manipulation with UTF-8 validation support. The tokens package provides token contract functionality, specifically including an ERC20TokenFace contract. The unsafe package enables direct memory operations for advanced use cases. Additionally, the repository includes comprehensive documentation for each contract and package.

Quality assurance is a central pillar of this repository's design philosophy. The project implements rigorous standards across security, performance, style, and documentation. Testing is conducted through a comprehensive test suite that can be executed via npm commands, with contract tests written in Solidity and executed directly in the EVM. The testing infrastructure requires solc and go-ethereum to be installed and available in the system path. Performance testing is available through dedicated npm commands and full documentation. Style compliance is enforced through TypeScript linting and solhint for Solidity code, with the library explicitly aiming to serve as an example of strict, idiomatic Solidity following the official Solidity style guide. Documentation standards require clear specification of contract interfaces and function signatures, with all code subject to manual review by at least one person other than the original author.

The repository includes a command-line tool that enables developers to run tests, access documentation, and perform other operations without direct npm command usage. Code quality feedback is gathered through GitHub issues and the Solidity Gitter channel. The project implements a categorization system for contracts, distinguishing between production-ready code and experimental implementations, similar to Node.js's approach to library versioning.

The repository maintains continuous integration through CircleCI, ensuring that code changes are automatically tested before integration.