Skip to content
Snippets Groups Projects
Forked from monero-project / CCS Proposals
1246 commits behind the upstream repository.
tipxmr.live.md 12.63 KiB
layout: fr
title: "tipxmr.live - a non-custodial livestream donation service for OBS"
author: AlexAnarcho and hundehausen
date: September 16, 2020
amount: 72
milestones:
  - name: Milestone 1 - Basic setup of webpack with monero javascript and react
    funds: 2% (1.44 XMR)
    done:
    status: unfinished
  - name: Milestone 2 - Working Prototype with implemented WASM wallet and front-end mockups
    funds: 48% (34.56 XMR)
    done:
    status: unfinished
  - name: Milestone 3 - Finished product and launch of serivce
    funds: 50% (36 XMR)
    done:
    status: unfinished
payouts:
  - date:
    amount:
  - date:
    amount:
  - date:
    amount:

CCS Proposal: tipxmr.live - a non-custodial livestream donation service for OBS

Exec Summary

Tipxmr.live aims to be a non-custodial service for streamers to accept and display Monero donations in their livestreams.

Much like the existing solutions, this allows for an interactive experience for viewers and an easy way to monetize for the streamer.

For this we use a browser based Monero WASM wallet and OBS.

The Problem we want to solve

Censorship on the internet is an ongoing issue. Big platforms like YouTube and Twitch wield godlike power when it comes to their users. Not only do they impose barriers to entry, they also deplatform at whim and destroy years of work take away steady income streams. Content creators either have to conform and self censor or change their occupation.

Furthermore, streaming platforms take big chunks of the streamers income, for example Twitch Bits. Some platforms take as much as 40% of the streamers donations (Chaturbate).

Tipxmr.live fixes this.

Advantages of our solution

With tipxmr.live we enable streamers to recieve income independent of a given platform. For this we employ Monero natively in the browser. Donors send XMR directly to the streamer without tipxmr.live as a custodian.

Being build upon the Monero project, we inherit many benefits of the privacy coin we all love.

Streamers are not required to have access to the banking system, all they need is provided for free on the internet (i.e. Monero and OBS).

Moreover, streamers do not have to hand over personal information such as location, real identity and more. This opens the door for marginalized groups to recieve income, even if the doors to the tradional system is barred.

Who we are

We are two Monero enthusiasts that have been following the project since the beginning of 2017. Our values are privacy, sound money and individual souvereignty. Crypto in general and Monero in particular fulfill these values and are the tool of the future.

In the beginning of 2018 we created the MoneroMumble Podcast, a german-speaking, monthly podcast/roundtable to inform and engage the German community about developments concerning Monero. The roundtables take place on the second Sunday of every month on Jitsi and are livestreamed to YouTube.

It was in this setting that the idea of a livestream donation program based on Monero was born. Tipxmr.live is therefore aiming to fulfill our need and we are our own customers.

Grischa, aka hundehausen, has contributed many times to the Monero community, most recently with an infographic about the workings of a Monero wallet. Grischa also wrote his bachelor thesis on the thought of "Monero as a currency for the masses" (thesis in German).

Alex, aka AlexAnarcho, has been involved in the early days of the Monero Outreach and is a well-known outspoken advocate for Monero in the German community. Alex has been working for various cryptocurrency magazines such as the BeInCrypto and BTC-ECHO. In August he quit his full-time job at BeInCrypto to dedicate himself to tipxmr.live.

mghny - who chooses to remain pseudonymous - has been a professional software-engineer for 5 years and has been coding for 8 years. They have been involved with tipxmr.live since the very beginning and keeps an eye on architecture, code and many more technical aspects. It cannot be overstated how beneficial an experienced engineer is in a project like ours, since it reduces complexity and makes the code easily reusable by other developers.

What is your project

Since our original idea and prototype, the implementation has significantly evolved. The most obvious issue with the prototype was that it required a broad technical understanding. You can try it out by cloning the repo and seeing first-hand how cumbersome this process is. After cloning the repo you have to set up either a VPS or self-host and use portforwarding. Then you have to install monero, run an RPC, buy a domain, issue a SSL-certificate and so forth. In short, a process that no ordinary person would go through.

But we don't want to be the only people enjoying the benefits of Monero. We want to make it accessible to everybody - even non techy people. Therefore we went back to the drawing board and came up with a way that is intuitive yet non-custodial and as safe as possible.

The current vision only requires OBS, which is not only the biggest streaming software but also open source. In this we are platform agnostic and our users can use YouTube, Twitch, any other streaming platform or even host the stream themselves.

How it works

The biggest issue in the beginning was how to make this whole thing non-custodial AND easy to use. Thanks to the awesome monero-javascript library of woodser that now includes a Monero WASM wallet, we are able to offer just that. WASM or WebAssembly basically means that you are running a full Monero wallet in your browser. You are the only one controlling the keys, they never leave your system. But we are able to create a nice userinterface, a dashboard with settings, and much more.

Of course the details are of no concern to the normal user. The streamer simply navigates to tipxmr.live, clicks to create a new account and the WASM wallet will generate a XMR seed on the clients machine. The streamer writes down the seed and chooses a username.

Then the streamer can log in using only their seed. We have a small database running on our server that checks the hash of the seed and logs the user in if it checks out. The streamer is then shown a dashboard where they have an overview of their usage. The dashboard also includes a wallet section where they can send/recieve XMR (for instance if they want to withdraw to a cold storage). Last but not least the streamer can change some settings, i.e. how donations should be displayed etc.