bepronetwork / bepro-js

The repository contains a comprehensive documentation of the bepro.network ecosystem as a javascript framework. If you are new to BEPRO, you might want to check out the Website Overview or our public "Start Building" Page.
164 stars 94 forks source link

Create a Liquidity Mining Protocol #155

Closed bepro-bot closed 2 years ago

bepro-bot commented 2 years ago

Follow the Object Development Guidelines at https://docs.bepro.network

Description

Create a Liquidity Mining Protocol that rewards ERC-20 from the Smart Contract pool (this Smart Contract) so that we can integrate with third party Smart Contracts.

Example the Liquidity Mining from Compound.Finance, but that would allow enough flexibility to integrate in any smart contract with the variables present in each input of each function at deploy stage

moshmage commented 2 years ago

@sgoia name changes such as Token now being called ERC20Token introduce breaking changes that can not be pushed into master. While I agree with the change, this will break half the ecosystems depending on our code. We can introduce those changes, and those are more than welcomed, over at 2.0.0-alpha.0 branch - do so if you're inclined to.

Other than that, I would only add an example usage to MiningProtocol javascript detailing how to encode the params and use the class itself; This class is mighty slick, but hard as hell to understand ^^'

sgoia commented 2 years ago

@sgoia name changes such as Token now being called ERC20Token introduce breaking changes that can not be pushed into master. While I agree with the change, this will break half the ecosystems depending on our code. We can introduce those changes, and those are more than welcomed, over at 2.0.0-alpha.0 branch - do so if you're inclined to.

Other than that, I would only add an example usage to MiningProtocol javascript detailing how to encode the params and use the class itself; This class is mighty slick, but hard as hell to understand ^^'

Understood, did the changes back to 'Token', and included some documentation in js wrapper class how to encode call data, specific examples can also be found in unit tests file.

moshmage commented 2 years ago

@sgoia name changes such as Token now being called ERC20Token introduce breaking changes that can not be pushed into master. While I agree with the change, this will break half the ecosystems depending on our code. We can introduce those changes, and those are more than welcomed, over at 2.0.0-alpha.0 branch - do so if you're inclined to. Other than that, I would only add an example usage to MiningProtocol javascript detailing how to encode the params and use the class itself; This class is mighty slick, but hard as hell to understand ^^'

Understood, did the changes back to 'Token', and included some documentation in js wrapper class how to encode call data, specific examples can also be found in unit tests file.

Changes weren't meant only for "Token" but for all contracts that got their name changed -- we can't have that here (again, I agree with the change, but it might case breaking with who's using the ecosystem)

moshmage commented 2 years ago

@sgoia this PR has way too many contracts than the ones requested by the feature, this should not happen. Each PR should introduce only the required contracts for the feature. It also, unfortunately, has conflicts that need to be solved.

sgoia commented 2 years ago

@sgoia this PR has way too many contracts than the ones requested by the feature, this should not happen. Each PR should introduce only the required contracts for the feature. It also, unfortunately, has conflicts that need to be solved.

OK, changes were made to follow guidelines, hope this works, new rules were needed to .eslintrc.json file.

bepro-bot commented 2 years ago

@moshmage reviewed this with the following message:

lgtm