Bondly: Web3 Social Content Value Platform
Connect with people you trust, share the value you create.
Video Introduction๏ผhttps://www.bilibili.com/video/BV1T4udz1Ek7/?vd_source=4294884d12011f690a0ffce59877a3a2
๐ฏ Project Overview
Bondly is a blockchain-based decentralized social content platform that redefines the value relationship between content creators and users through Content NFTization, Interactive Staking Mechanism, and Reputation System.
๐ Core Innovations
- Content as NFT: Every piece of content can be minted as an NFT, giving creators true digital asset ownership
- Interactive Staking: Users stake tokens to participate in content interactions, earning rewards while supporting creators
- Multi-chain Support: Supports Ethereum, Polygon, Arbitrum, Optimism, BSC and other blockchains
- Reputation Economy: User behavior-based reputation system that affects reward distribution and platform permissions
๐ Project Highlights
| Module | Innovation Features | Status |
|---|---|---|
| ๐ Content Creation | Markdown Editor + IPFS Storage + NFT Minting | โ Complete |
| ๐ Interactive Staking | Like/Comment Staking + Creator Reward Distribution | โ Complete |
| ๐ Wallet Integration | Multi-chain Wallet Support + Progressive Login | โ Complete |
| ๐๏ธ Governance System | DAO Proposals + Voting Mechanism + Community Decisions | โ Complete |
| ๐ Reputation System | Behavior Scoring + Level Growth + Rights Unlocking | โ Complete |
| ๐จ User Experience | Modern UI + Responsive Design + Dark Theme | โ Complete |
๐๏ธ Technical Architecture
Frontend Tech Stack
- Framework: React 18 + TypeScript + Vite
- Styling: Tailwind CSS (JIT mode)
- Web3: Wagmi + Viem + Web3Modal
- State Management: React Context + Hooks
- Editor: Markdown Editor + Real-time Preview
- Storage: IPFS (Pinata Integration)
Backend Tech Stack
- Language: Go 1.21+
- Framework: Gin + GORM
- Database: PostgreSQL + Redis
- Message Queue: Kafka
- Authentication: JWT + Middleware
- Documentation: Swagger/OpenAPI
- Containerization: Docker + Docker Compose
Smart Contracts
- Language: Solidity 0.8.19+
- Framework: Hardhat + TypeScript
- Security: OpenZeppelin 5.3.0
- Upgradeability: UUPS Proxy Pattern
- Testing: Coverage >90%
๐ฆ Project Structure
Bondly/
โโโ bondly-fe/ # Frontend Application (React + TypeScript)
โโโ bondly-api/ # Backend Service (Go + Gin)
โโโ bondly-contracts/ # Smart Contracts (Solidity + Hardhat)
โโโ README.md # Project Documentation
โก Quick Start
Requirements
- Node.js >= 18.0.0
- Go >= 1.21.0
- PostgreSQL >= 14.0
- Redis >= 6.0
- Git
1. Clone Project
git clone https://github.com/your-username/Bondly.git
cd Bondly
2. Start Frontend Application
cd bondly-fe
npm install
npm run dev
# Visit http://localhost:5173
3. Start Backend Service
cd bondly-api
# Copy environment configuration
cp env.example .env
# Modify database configuration
go mod download
go run main.go
# API service runs on http://localhost:8080
4. Initialize Test Data
cd bondly-api
go run cmd/seed-data/main.go
5. Deploy Smart Contracts (Optional)
cd bondly-contracts
npm install
# Configure environment variables
cp env.example .env
# Compile contracts
npx hardhat compile
# Deploy to testnet
npx hardhat run scripts/deploy/deploy.ts --network sepolia
๐ฎ Core Features Demo
Content Creation and NFTization
- Create content using Markdown editor
- Upload images to IPFS
- One-click NFT minting
- Permanently stored on blockchain
Interactive Staking Mechanism
- Users stake BOND tokens to participate in interactions
- Earn rewards by liking/commenting on content
- Creators receive staking rewards
- Forms a positive incentive cycle
Multi-chain Wallet Support
- Supports mainstream wallets like MetaMask, WalletConnect
- Automatic network detection and switching
- Cross-chain asset management
๐ Data Statistics
Test Data
- User Count: 8 test users (including different roles)
- Article Count: 5 high-quality technical articles
- Comment Count: 20 real user comments
- Proposal Count: 3 governance proposals
- Transaction Records: 3 on-chain transaction examples
Contract Deployment
- Testnet: Sepolia, Goerli
- Mainnet: Pending deployment
- Verification Status: All contracts verified
๐ง Development Guide
Frontend Development
cd bondly-fe
# Install dependencies
npm install
# Start development server
npm run dev
# Build production version
npm run build
# Run tests
npm run test
Backend Development
cd bondly-api
# Install dependencies
go mod download
# Run service
go run main.go
# Run tests
go test ./...
# Generate API documentation
swag init
Contract Development
cd bondly-contracts
# Install dependencies
npm install
# Compile contracts
npx hardhat compile
# Run tests
npx hardhat test
๐ Documentation Resources
๐ Consolidated Documentation
- ๐ Deployment Configuration Guide - Airdrop configuration, wallet configuration, environment variables and other deployment-related documentation
- ๐ ๏ธ Technical Documentation - Database architecture, business logging, email service and other technical documentation
- ๐ Smart Contract Guide - Complete guide for contract architecture, deployment, testing, and script tools
- ๐จ Frontend Development Guide - Frontend tech stack, development standards, deployment guide, IPFS integration, etc.
๐ Original Documentation
- API Documentation - Backend API interface documentation
- Contract Documentation - Smart contract technical documentation
- Deployment Guide - Contract deployment instructions
- Database Architecture - Database design documentation
- Frontend Guide - Frontend usage guide
๐งช Testing and Quality
Test Coverage
- Frontend Testing: Component testing + E2E testing
- Backend Testing: Unit testing + integration testing
- Contract Testing: Coverage >90%
Code Quality
- ESLint + Prettier - Code standards
- TypeScript - Type safety
- Go vet + golangci-lint - Go code checking
๐ Deployment Guide
Production Environment Deployment
# One-click deployment using Docker Compose
docker-compose -f docker-compose.prod.yml up -d
Environment Variable Configuration
# Database configuration
DATABASE_URL=postgresql://user:password@localhost:5432/bondly
REDIS_URL=redis://localhost:6379
# Blockchain configuration
ETHEREUM_RPC_URL=https://mainnet.infura.io/v3/YOUR_PROJECT_ID
POLYGON_RPC_URL=https://polygon-rpc.com
# IPFS configuration
PINATA_API_KEY=your_pinata_api_key
PINATA_SECRET_KEY=your_pinata_secret_key
๐ค Contribution Guide
We welcome all forms of contributions!
Contribution Methods
- ๐ Bug Reports: Submit via GitHub Issues
- ๐ก Feature Suggestions: Discuss in Discussions
- ๐ Documentation Improvements: Submit Pull Request
- ๐ง Code Contributions: Fork project and submit PR
Development Process
- Fork the project
- Create feature branch (
git checkout -b feature/amazing-feature) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Create Pull Request
๐ Contact Us
- Email: twodogtt01@gmail.com
- tg: @ttttmax
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
Thanks to all developers and community members who have contributed to the Bondly project!
Bondly - Connect with people you trust, share the value you create ๐
"In the Web3 world, every interaction is a creation of value"
Built With
- docker
- golang
- solidiity
- typescript
Log in or sign up for Devpost to join the conversation.