No funded issue found.
Check out the Issue Explorer
Be the OSS Funding you wish to see in the world.
Looking to fund some work? You can submit a new Funded Issue here .
Time left
Opened
Issue Type
Workers Auto Approve
Project Type
Time Commitment
Experience Level
Permissions
Accepted
Reserved For
AletheaToken.sol and AletheaNoLoss.sol Security Audit
alethea-tech
Smart, contract, Audit, bounty
Alethea is aiming to build a decentralized marketplace for AI-generated media. We plan to launch our first product “Meme Pools” very soon, which basically takes the interest generated from a pool of DAI to sponsor the creation of AI-generated memes!
We also plan to mint our token soon. It would be great if any developers can review the smart contracts - your help will ensure the safe creation of the next generation of memes:
**Token Contract** ([Rinkeby](https://rinkeby.etherscan.io/address/0x159ef149806f8670fa6cd705d953d313353b57ef#code))
1. Uses OpenZeppelin libraries Mintable, Burnable, Pausable, and Detailed
2. Can only be minted and paused by wallets with minter/pauser roles (which can be given or removed at any time by the owner of the token contract)
3. An additional functionality was added to the OpenZeppelin MinterRole.sol so that a Cap can be set later on (by minters) to define the maxSupply upon which no more tokens can be minted (team prefers to have the ability to set this later on vs on deployment, thus not going with the Capped standard from OpenZeppelin)
4. The burning functionality can be used a) by users to burn their own tokens, and b) by smart contracts that have allowance to use certain tokens
**Staking Contract** ([Rinkeby](https://rinkeby.etherscan.io/address/0x50a78F10788839EC781b1E60E6368378FaC4C1bc#code)): Allows users to stake their DAI for a custom period of time and receive a custom amount of tokens as a rewards while their DAI interest is saved into the smart contract.
1. Contract owner(s) can update at any time the following variables: `tokenRewardAmount`, `minDAIStakingTime`, `minDAIStakingAmount` - plus the contract addresses for `token`, `dai`, and `cDai` - owner(s) can also call the methods `withdrawDAI` and `withdrawToken` to withdraw any `dai`/`tokens` available on the contract, plus `pauseContract` and `unPauseContract` to pause/unpause interactions with the Staking Contract
2. Users can call the methods:
a) `stakeDAI` which sends users `dai` to the Compound protocol, a `token` reward to the user, and `cDAI` to the smart contract
b) `getDAIStakingInfo` to get their staking details and variables from the contract,
c) `unstakeDAI` to get their `dai` plus `availableRewards` (this will update `amountRewarded`), and
d) `claimRewards` to withdraw their `availableRewards` from the Staking Contract
(c. and d. can only be called after `minDAIStakingTime` passes after the last time they staked)
3. By staking `minDAIStakingAmount` users gets access to a `token` reward amount immediately and after that they are able to `claimRewards` every time `minDAIStakingTime` passes - a `stakedTimestamp` is saved/updated into the contract to keep track of the last time the user staked and properly calculate `availableRewards`
4. The amount of `token` reward is calculated dividing a) the amount of `dai` staked by the user, for b) minDAIStakingAmount`, and then multiplying the result for c) `tokenRewardAmount`
5. The user can increase their `dai` staked anytime and at that point their available rewards are saved into `accumulatedRewards` in order to keep an accurate count of `availableRewards` (since the rewards depend not only on amount but also time staked)
Setup your profile
Tell us a little about you:
Skills
No results found for [[search]] .
Type to search skills..
Bio Required
[[totalcharacter]] / 240
Are you currently looking for work?
[[ option.string ]]
Next
Setup your profile
Our tools are based on the principles of earn (💰), learn (📖), and meet (💬).
Select the ones you are interested in. You can change it later in your settings.
I'm also an organization manager looking for a great community.
Back
Next
Save
Enable your organization profile
Gitcoin products can help grow community around your brand. Create your tribe, events, and incentivize your community with bounties. Announce new and upcoming events using townsquare. Find top-quality hackers and fund them to work with you on a grant.
These are the organizations you own. If you don't see your organization here please be sure that information is public on your GitHub profile. Gitcoin will sync this information for you.
Select the products you are interested in:
Out of the box you will receive Tribes Lite for your organization. Please provide us with a contact email:
Email
Back
Save