From 0b76c6b30f0d66aeeff5c1dc7fbf5acad4ccb891 Mon Sep 17 00:00:00 2001
From: "clement.l"
Date: Tue, 26 Nov 2024 11:22:12 +0800
Subject: [PATCH] docs: update README
---
README.md | 100 +++++++++++++++++++++++++++++--------------
assets/drip_logo.png | Bin 77105 -> 43700 bytes
2 files changed, 68 insertions(+), 32 deletions(-)
diff --git a/README.md b/README.md
index 568fa73..b1128f7 100644
--- a/README.md
+++ b/README.md
@@ -1,79 +1,115 @@
-# Drip
+
+
+
+
-A revolutionary decentralized incentive learning system built on-chain.
+
Drip
+
+
+ A revolutionary decentralized incentive learning system built on-chain.
+
+
+ ETHGlobal Showcase
+
+
## Overview
-Drip enables users to create and manage challenges, maintain user profiles, and handle tokenized vaults. The system is composed of several key components:
+Drip is a decentralized protocol that enables users to create and manage challenges, maintain user profiles, and handle tokenized vaults. The system comprises several key components:
-- DripProfile: An ERC-721 that governs user profiles and associated data.
-- Challenge: An ERC-721 to manage individual challenges.
-- ChallengeManager: Coordinates the creation and lifecycle management of challenges.
-- DripVault: An ERC-4626-compliant vault that handles token deposits and withdrawals.
+- DripProfile: An ERC-721 standard for managing user profiles and associated data.
+- Challenge: An ERC-721 token for managing individual challenges.
+- ChallengeManager: Coordinates the creation and lifecycle of challenges.
+- DripVault: An ERC-4626-compliant vault for token deposits and withdrawals.
## How It Works
-1. Initiate a Challenge:
- - Learners can start a challenge within a predefined timeframe, choosing an amount to deposit as a commitment.
-2. Receive a Progress-Tracking NFT:
- - Upon creation, the learner is issued an NFT that records their challenge progress.
-3. Daily Task Completion:
- - Learners complete assigned tasks daily. Task progress is automatically updated and reflected in the NFT.
+1. Initiate a Challenge: Users can start a challenge within a predefined timeframe, committing a deposit amount as collateral.
+2. Receive a Progress-Tracking NFT: Participants are issued an NFT upon challenge initiation. This NFT dynamically tracks their progress.
+3. Daily Task Completion: Participants complete daily tasks. Their progress is automatically updated and reflected on their NFT.
4. Challenge Outcome:
- - For Successful Days: Learners retrieve their deposited amount corresponding to the days completed successfully.
- - For Unsuccessful Days: The deposits for incomplete days are allocated to the reward pool to incentivize successful participants.
- - Additional Rewards: Successful learners earn an additional reward from the share of the reward pool accumulated from the deposits of all incomplete days across participants.
+ - Successful Days: Users can reclaim their deposits for the days they complete tasks successfully.
+ - Unsuccessful Days: Deposits for incomplete days are allocated to a reward pool.
+ - Additional Rewards: Participants who successfully complete challenges earn additional rewards from the reward pool, funded by incomplete day deposits across all participants.
## Rewards Calculation
**Claimable Deposits**
+Represents the amount users can retrieve based on successfully completed days.
+
![claimable_deposits](assets/reward_claimable_deposits.png)
**Additional Rewards**
+Reflects a share of the reward pool distributed to successful participants.
![additional_rewards](assets/reward_additional_rewards.png)
**Total Redemption**
+Combines claimable deposits and additional rewards for a comprehensive view of user earnings.
+
![additional_redemption](assets/reward_total.png)
## Architecture
The protocol consists of four main contracts:
-**Challenge.sol**: Foundational contract for challenge operations.
+**Challenge.sol**
-- Facilitates challenge creation.
-- Manages the state of individual challenges.
-- Retrieves challenges for a specific epoch.
+- Core logic for challenge operations.
+- Facilitates challenge creation and manages individual challenge states.
+- Retrieves challenges based on specific epochs.
-**ChallengeManager.sol**: Orchestration layer for challenge lifecycles.
+**ChallengeManager.sol**
-- Establishes new epochs.
-- Manages the lifecycle of epochs.
-- Oversees epoch rewards using the DripVault.
+- Orchestrates the lifecycle of challenges and epochs.
+- Establishes new epochs and manages their rewards through the DripVault.
-**DripProfile.sol**: User profiles management and engagement.
+**DripProfile.sol**
-- Enables profile creation.
-- Maintains and updates profile data.
-- Tracks and records daily completions.
+- Manages user profile creation and updates.
+- Tracks daily task completions for users.
-**DripVault.sol**: Tokenized asset management of epoch rewards.
+**DripVault.sol**
-- Facilitates deposits and withdrawals of tokens.
+- Handles tokenized asset management for epoch rewards.
+- Facilitates token deposits and withdrawals.
## Deployed Contract Addresses
-Unified CREATE2 addresses for multi-chain deployment:
+The protocol utilizes unified CREATE2 addresses for multi-chain deployments:
- Challenge: `0xaDcaAe61b8983940FB2c8098BDe112e507A0e1f0`
- ChallengeManager: `0xB3084eF0Dc7440e32A6cD64e2E5072FBCd9AEEeE`
- DripProfile: `0x0E69Ba1FF53c36D0fbb4fccC0e9B732D58593B2f`
-The contracts are live on the following testnets:
+Currently live on the following testnets:
- Base Sepolia
- Mantle Sepolia
- Polygon zkEVM Cardona
+
+## Contributors
+
+
+
+
+
+
diff --git a/assets/drip_logo.png b/assets/drip_logo.png
index a7243fc02e879c4e09f1374701114a8db3ca03df..ae781479faff9d53f44ea7c6a1721ce23c80697f 100644
GIT binary patch
literal 43700
zcmeHQYgAKL7CtcuDleblgO^rI*Qm7kfQ%p@g9tiB$68A*l)wmD5+E8BP>^V)=r9#p
zM-iXnqjgO|3}Sf*%7xa_mX~5hN<^YAk}5&K3=bv1>~ll3%v#eQ&cdSZvljOz_vVtD
z@9zEWefHUBpWQ2bmKcwkJc
Z)z~O{^vb<;lFYVkzL?TB9A
z6W=cJ3QsZHU9v=?|JfW{$sy6s6`##n!n_+AE=iVGk5DzHuJl-XH%RR{QyFvWsvke8
z$Frq;GW>HQc~jn+3brkXuHo+apKH
zy{r`VJ&a3J;5OHYvj+6M)dtpupf91#IRVa%u1QkXPtm<5#AbRO>r-ftjM$ySd3w$r
zFCzpY0f9g%0T57eC^aA{00>A500NQ%fH3%^AfVr3+g#w96HsMKii}iQij6tyVMKm%
zey%e96gUVq2b(%w&)%T^f%8Y^+MS@H(Lo){PX@!^^;6=qFuR)(
zH8lUv;TfVMg`5exhn&fRF!-E_`iA=UGV0rv%kZm2zVAikD!EQQ1qxXh?aJ@DSFNd1
zih4rpjo@A43~JJO()f^DhjY`nFVv$!|I)83%G8>^PR7Mi*&YN3cp2AVt7|D^UXXDD
zO;x3(%yYtU&iErmc_fP2zkSBAuiQ57bds0|Q{Bc1mrgL7Izu>eJaa#L>=<{w)_jxI
z%IWWv?7ijpbW~)}gE|;Q1-Zf?Du94NQ~&|>jnXWV0)T*|03Zwp)0oli#tv
zX)Oj0Ykb7crZkyAZ}YE`4ct625dpQH3JPjH1!3rDJz64^Nh*;jlPn16o>CYFlEV5)
zglrRweQ)#+74-f%N8J@!;0*DFBGE^fK7ga3RAz7#6hL^pN^lNaPkJiKAVNop+H#8M}s+kmR>)^!!A7%y)`zRJ(rl`RYT(yle2JpH*fsU-Wq-
z{onvLx|b}QqM8B>m@q{XNw5N+V+ue(c6KjAuic-W)Cs*k!4o
zGg|m0Q=pp{TTy5#%r#QUXZHI^)m`*H!kOrHJGJb(
zr=^?M-Z6eQi+?;nY5JsThI-W@ql!7I452Daulc&?6x&vV{KVw4xTEtc+2mK7wF3%r
zrVW^t_9ayF)HO-UfUp`~Mu`$30ir}H0is030ir}wKvK}!isdX+;o9jlC(L=H6e=i@pAvD$>)N;MHpPBGt?EDbf0R8p^{K^&?3V8bRG^%Lmmwr5B|1&o
ziHZYRfJh3+lUj{H(*Zc_tfBKV3-8NP(*kU{(!aPaXIGOX63ZYOmXz?q&fy(dZjZI3a^I3WMyAngM
z>JOqvZsF|kXO@oemCZ2czc%XX>tpT)mK{hLmu=ZL>|CHC*r$qX-K4*|t*pJzG@=&WHa
z!9kg@a=d~giHq#JO_)o(_>grzriE7$vbj>FOSFJL+tn^gaTWsWyvqCkS$QSSe`-QqA(1s?Ek_~19mXzC_YLTHZ@_!oU`vgNO#X=t%J98U+A`Ez_9k%{~alT{yp^HKe^N!sE`$K
z-;BKXX_}zLggJTvEcom`XG>D+SfqK}t;uR%Pda`~KkZYQpjLuUB1y{ZLz}l%lq3Q8?a6m`M)>A+qG@HG%WhYqduuck4bZ
zFSO_~?auDwNan&i%1qkB&4R3jRuLJ+A1i0lrIu;4xVBB&vqjJrNk~^x@G0#!H2erb2_<%;n4M$$
y00=nd0U+R*2Y`U203aYKP!Nz50EA~Hg?~@U4|bYsalpQmLg~HO$0O67zvDkN5_Rza
literal 77105
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