Skip to content

jamalx-max/EpochSend-smartcontract

 
 

Repository files navigation

EpochSend - Smart Contracts

The On-Chain Escrow and Execution Logic for the EpochSend Protocol on Stellar.

License: MIT Built on Stellar

💡 Overview

This repository houses the core Soroban smart contracts that power the EpochSend protocol.

EpochSend transforms user intent into enforceable on-chain payment logic. Rather than trusting a centralized third party, users lock their assets (USDC/XLM) inside these secure, immutable contracts. The contracts monitor predefined conditions (e.g., time locks, manual approvals, or Oracle webhooks) and strictly execute the payment to the recipient or refund the sender according to the agreed-upon rules.


🏗️ Architecture

graph TD
    User((User)) -->|Create Escrow| Vault[Soroban Conditional Contract]
    
    subgraph Execution Triggers
        Time[Time-based Unlock]
        Manual[Manual Authorization]
        Oracle[Oracle Webhook Trigger]
    end

    subgraph On-Chain State
        Vault -->|Monitors| Execution Triggers
    end
    
    Execution Triggers -->|Condition Met| Exec[Transfer to Recipient]
    Execution Triggers -->|Timeout Reached| Refund[Refund to Sender]
    
    Exec --> Recipient((Recipient))
    Refund --> User
Loading

🛠 Tech Stack

  • Language: Rust
  • Blockchain: Stellar Network
  • Smart Contract Engine: Soroban
  • Logic: Conditional escrow, asset transfers, cryptographic authorization.

🚀 Getting Started

1. Prerequisites

  • Rust toolchain
  • soroban-cli installed
  • Stellar Testnet account

2. Local Setup & Build

cd smartcontract

# Build the WASM binary
cargo build --target wasm32-unknown-unknown --release

# Run unit tests
cargo test

📚 Documentation & Task Tracking


🤝 Contributing

See CONTRIBUTING.md and STYLE.md.


Project maintained by @babalola & contributors.

About

Soroban smart contracts for EpochSend — trustless conditional escrow logic written in Rust, deployed on Stellar.

Resources

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 53.0%
  • Solidity 44.8%
  • Rust 2.2%