Inspiration
Earn.com was an interesting model of how a messaging platform could be built powered by cryptocurrency payments. But with the Earn.com model, you have to deposit your funds onto the platform before being able to spend them (likely to avoid creating tons of small transactions). By integrating Lightning Network payments, perhaps no registration would be required to contact users. This is what BuzzMe aims to achieve.
What it does
BuzzMe is a service that allows you to create a profile and charge a small amount of BTC to receive messages. Powered by the Lightning Network.
View at https://github.com/champbronc2/buzz-me
Inbound liquidity is provided by BitRefill Thor Lightning Channels
To run locally, you'll need to perform the following:
- Install MongoDB
- Install golang 1.13+
- Download/install repository by running 'go get -u github.com/champbronc2/buzz-me'
- Install bitcoind + LND
- Configure the macaroon inside of lightning/lightning.go
A live version running on BTC mainnet can be found at http://ec2-18-237-219-223.us-west-2.compute.amazonaws.com:1323/ - Sign up, post, play!
Your profile will be visible at http://ec2-18-237-219-223.us-west-2.compute.amazonaws.com:1323/{username}
Completed functionality:
- Registartion
- Login
- Create a post, and be presented with a Lightning Network invoice
- View dashboard, and request withdrawals via Lightning Network. Performs validation that invoice is valid.
Pending functionality:
- Automatically detect if invoices are paid
- Automatically process withdrawals
- Automatically manage inbound liqiduity via Thor channels
- Allow profile to be updated
- Input sanitation
Challenges I ran into
So many firsts.
Accomplishments that I'm proud of
Setting up and deploying a mainnet LND node that I can interact with programmatically to create and pay invoices!
Log in or sign up for Devpost to join the conversation.