
Base Query
Q&A with USDC rewards, reputation and CDP Wallet
Demo
About
The problem it solves Traditional Q&A platforms like Stack Overflow, Reddit, and Discord communities rely on volunteer contributions and offer limited financial incentives. While these platforms have reputation systems that help identify quality contributors, developers spend hours helping others with complex technical problems, debugging code, and sharing knowledge, but receive little beyond reputation points or badges. This creates a knowledge gap where only the most altruistic developers contribute, while many valuable questions go unanswered or receive low-quality responses. How BaseQuery Makes It Better: - **Real Financial Rewards**: Users earn actual USDC for helpful answers instead of worthless reputation points - **Bounty System**: Two types of questions are direct bounty for the best answer and prize pool with time-based community voting. - **Seamless Web3 Experience**: CDP wallet integration eliminates complex wallet setup barriers - **Automatic Payouts**: Smart contracts automatically distribute rewards, eliminating payment disputes - **Quality Control**: Voting system rewards the best answers and filters out low-quality content - **Community Ownership**: Users own their contributions and reputation on-chain - **Spam Protection**: Users need a minimum ETH balance in their account to answer questions or vote, ensuring only serious contributors participate - **Incentivized Knowledge Sharing**: Developers can earn a living by helping others solve technical problems Smart Contract Address(es) **Base Query**: [0x37c98fC6109a79A2e6ade5719213f526D346B033](https://sepolia.basescan.org/address/0x37c98fC6109a79A2e6ade5719213f526D346B033) **Reputation System**: [0xeA8e3e5872E90E6437e6D836dEF8334f49F9e73f](https://sepolia.basescan.org/address/0xeA8e3e5872E90E6437e6D836dEF8334f49F9e73f)
How it's made
Challenges we ran into We faced challenges integrating complex contract logic with Base’s CDP wallet API for seamless onboarding and coordinating interactions between ReputationSystem and BaseQuery. Circular dependencies complicated deployment and authorization. The reputation system had to enforce a minimum 0.001 ETH balance, prevent self-voting, and securely manage updates via access control. Synchronization between contract state and frontend required robust handling with 16 custom error types covering edge cases such as InsufficientBounty(), PoolNotExpired(), and CannotWithdrawWithGoodAnswers(). Gas inefficiency in calculatePoolDistribution, caused by iterative sorting over answer arrays, further demanded optimization while preserving weighted reward logic for multiple winners.