Skip to content

AneKazek/payfuse-base-hackathon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚡ PayFuse: Multi-Token Escrow & Payment Aggregator on Base

Base Next.js Foundry 0x Protocol
License MIT Stars Status

🚀 Overview

PayFuse adalah protokol pembayaran escrow yang inovatif di jaringan Base, dirancang untuk menyederhanakan pembayaran kolektif atau penggalangan dana. PayFuse memungkinkan sekelompok orang untuk berkontribusi menggunakan token apapun (melalui integrasi 0x API), yang kemudian secara otomatis dikonversi menjadi USDC dan disimpan dalam vault yang aman hingga target tercapai.

🌟 Key Features

  • Any-Token Contribution: Bayar dengan ETH atau ERC-20 apapun, sistem akan melakukan swap otomatis ke USDC menggunakan 0x API.
  • Secure Escrow: Dana disimpan di smart contract hingga kondisi pembayaran (deadline atau target) terpenuhi.
  • Base Network Native: Transaksi cepat, biaya gas super rendah, dan keamanan setingkat Ethereum.
  • OnchainKit Integration: Pengalaman pengguna yang mulus dengan komponen Connect Wallet dan Transaction yang modern dari Coinbase.
  • Transparent & Trustless: Semua logika pembayaran diatur oleh smart contract yang dapat diverifikasi.

🛠️ Tech Stack

  • Frontend: Next.js 14 (App Router), Tailwind CSS, TypeScript.
  • Web3 Library: Wagmi, Viem, OnchainKit.
  • Smart Contracts: Solidity, Foundry (Development & Testing).
  • DeFi Integration: 0x API (Swap Aggregator).
  • Network: Base Sepolia (Testnet).

📁 Project Structure

payfuse-base-hackathon/
├── apps/web/              # Frontend Next.js Application
│   ├── src/app/api/       # Backend routes for 0x Swap/Quote
│   ├── src/app/vault/     # Vault detail & management pages
│   └── src/components/    # Reusable UI components
├── payfuse/contracts/     # Smart Contracts (Foundry)
│   ├── src/               # PayfuseEscrow.sol core logic
│   ├── script/            # Deployment & configuration scripts
│   └── test/              # Comprehensive test suites
├── prd.pdf                # Product Requirements Document
└── README.md              # Project Documentation

⚙️ Getting Started

Prerequisites

1. Smart Contract Setup

cd payfuse/contracts
# Copy environment template
cp ../.env.example ../.env
# Install dependencies
forge install
# Run tests
forge test
# Deploy to Base Sepolia
forge script script/Deploy.s.sol:Deploy --rpc-url $BASE_SEPOLIA_RPC --broadcast -vvv

2. Frontend Setup

cd apps/web
# Install dependencies
npm install
# Copy environment template
cp .env.example .env
# Start development server
npm run dev

📜 Smart Contract Functions

Function Description
createVault Membuat vault baru dengan target USDC dan deadline tertentu.
contributeUSDC Berkontribusi langsung menggunakan token USDC.
contributeWith0x Berkontribusi menggunakan token lain (ETH/ERC20) yang di-swap ke USDC.
finalize Menarik dana USDC ke penerima jika target/deadline tercapai.
claimRefund Mengembalikan dana kontributor jika vault gagal mencapai target.

🤝 Contributing

Kontribusi selalu diterima! Jika Anda ingin meningkatkan PayFuse, silakan buat pull request atau buka issue.

  1. Fork proyek ini.
  2. Buat branch fitur (git checkout -b fitur/Hebat).
  3. Commit perubahan Anda (git commit -m 'Menambahkan fitur Hebat').
  4. Push ke branch (git push origin fitur/Hebat).
  5. Buka Pull Request.

📄 License

Distributed under the MIT License. See LICENSE for more information.


Made with ❤️ for Base Hackathon

About

PayFuse: gabungkan semua token temanmu jadi satu pembayaran USDC di Base

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors