We created an "Upvote Button". It is an Ether payment button for websites and apps with an incentive system behind it. Payments are nearly instant, nearly free, work everywhere in the world and cannot be reversed or blocked. The first upvotes are incentivized to find good content early on and get rewarded for their finding.

Upvote System in a Smart Contract

In our model the users are rewarded for the upvoting, promoting and sharing good content on the internet. Every upvote is distributed between the first voter (the author) and the previous voters.

We took an approach that scales with the number of upvotes. It would be impractical to share the upvote amount between thousands of previous upvoters at the same time and in the same ether transaction.

In our model, the part for previous upvoters is distributed among log(2, upvotesCount) + 1 users.

The upvote distribution follows exponential series. It means that the upvote is equally distributed between the 1, 2, 4, 8, 16th, etc. that voted last. Meaning that with the number of upvotes the transaction goes to log(2, upvotesCount) + 1 users.

Early voters and the author will be significantly rewarded.

The smart contract can be found here:

First Use Case

The Local Orphan Kitten Adoption And Rescue Society (LOKRAS) is the company that started a crowdfunding campaign using the Upvote Button for their Kittten Smuggling Scheme.

The website with our Upvote Button has been deployed on the Arweave network and is hosted in a decentralized manner.

Check it out here:

It's Really Easy to Add to Any Website

        <div id="your-custom-moneybutton"></div>

        <script type="text/javascript" src="ethnewyork-moneybutton.js" />
        <script type="text/javascript">
                domID: "your-custom-moneybutton",
                contentId: location.href

What's next for The Collusion Resistant Upvote Button for The Local Orphan Kitten Adoption And Rescue Society

We will look into improving the UX and adding more customizable UI.

Built With

  • ethereum-skale-arweave
Share this project: