Skip to content

StabilityNexus/IdentityTokens-EVM-Contracts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

130 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Stability Nexus

 

Static Badge

Telegram Badge    X (formerly Twitter) Badge    Discord Badge    Stable Viewpoints    LinkedIn Badge    Youtube Badge


IdentityTokens-EVM-Contracts

IdentityTokens-EVM-Contracts is a decentralized identity protocol built on EVM-compatible blockchains that enables individuals to self-issue ERC-721 NFT-based identity tokens with optional metadata such as name, social links, age, nationality, and residence. Users maintain full control over their digital identities and can endorse other identity tokens on-chain, creating a transparent and verifiable web of trust. The system ensures efficient on-chain mappings between tokens, metadata, and endorsement relationships, supporting multiple identity tokens per user while enabling scalable and reliable identity verification.


🛠️ Tech Stack

⛓️ Blockchain (Smart Contracts)

  • Language: Solidity ^0.8.24
  • Smart Contracts: Custom EVM-based contracts implementing protocol logic, token standards, and access control
  • Development Framework: Foundry
    • Testing: Forge Standard Library (forge-std)
    • Deployment: Forge Scripts (Anvil, Sepolia)
  • Libraries:
    • OpenZeppelin Contracts v5.5.0
  • Static Analysis & Linting:
    • Slither (security analysis)
    • Solhint (linting & style enforcement)
    • Prettier Plugin Solidity (code formatting)

🌐 Frontend & Web3 Integration

  • Wagmi: React hooks for Ethereum interactions (wallet connection, contract reads/writes, event tracking)
  • Ethers.js: Ethereum library for interacting with providers and smart contracts
  • Wallet Integration: MetaMask, WalletConnect (via Wagmi connectors)

🚀 CI/CD & DevOps

  • GitHub Actions: Automated lint, build (Forge), and test workflows
  • Pre-commit Hooks: Code quality enforcement before commits
  • Package Manager: npm

🔄 Workflow

To understand the development process, contribution flow, and project structure, please refer to the detailed workflow guide:

👉 View Workflow


🚀 Getting Started

Prerequisites

To build, test, and deploy the smart contracts, ensure the following tools are installed:

  • Node.js (v18 or higher) – Required for managing dependencies and running formatting/linting tools.
  • Foundry – Primary development framework for compiling, testing, and deploying smart contracts.
  • Git – Required for cloning the repository and managing submodules.
  • Web3 Wallet (e.g., MetaMask) – For interacting with deployed contracts on local or live networks.

Installation

1. Clone the Repository

Clone the project and navigate into the root directory:

git clone https://github.com/StabilityNexus/IdentityTokens-EVM-Contracts.git
cd IdentityTokens-EVM-Contracts

2. Install Dependencies

The project requires both Node.js packages for styling/linting and Foundry for smart contract logic:

Install Node.js Tools (Prettier, Solhint):

npm install
#### Install Foundry (if not installed)
curl -L https://foundry.paradigm.xyz | bash
foundryup
# Install OpenZeppelin for Foundry
forge install OpenZeppelin/openzeppelin-contracts
forge install foundry-rs/forge-std

3. Build and Test

Ensure everything is configured correctly by compiling the contracts and running the automated test suite:

Compile Contracts

forge build

Run Tests

forge test

Run Tests with Gas Report

forge test --gas-report

Run Tests with Verbose Output

forge test -vvvv

Check Contract Sizes

forge build --sizes

Clean Build Artifacts

forge clean

We appreciate your feedback and contributions!

© 2026 The Stable Order.

About

Decentralized Identity Tokens

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors