bitpic is a protocol for hosting and using Paymail avatars on the Bitcoin blockchain.
You can think of it as Gravatar, but for Bitcoin.
Create a Bitcoin transaction which uploads a signed image using the Bitpic protocol.
OP_0 OP_RETURN 19HxigV4QyBv3tHpQVcUEQyq1pzZVdoAut [FILE Binary] image/jpeg binary | 18pAqbYqhzErT6Zk3a5dwxHtB9icv8jH2p [Paymail] [Pubkey] [Sig]
Here's an example:
Here's Bitcom Terminal (Bterm) for bitpic:
Once uploaded, you can use the image from anywhere, simply by referencing: https://bitpic.network/u/[Paymail]
Here's an example:
https://bitpic.network/u/[email protected]
Bitpic is a Planaria node which implements a mutable database and file system.
This means whenever you upload a new avatar, your bitpic address will be updated to serve the newly uploaded avatar image.
Bitpic is powered by Planaria, a Bitcoin crawler which indexes Bitcoin transactions in realtime into a database.
https://bitpic.network/u/[Paymail]
! If an avatar doesn't exist for that paymail address, you will instead see the default image. For example, here's what https://bitpic.network/u/[email protected]
looks like:
https://bitpic.network/u/[Paymail]
if you run your own Bitpic node!Once you upload your avatar to the blockchain, you can use it from anywhere. For example you can embed your Bitpic in your website simply with an HTML tag: <img src="https://bitpic.network/u/<YOUR_PAYMAIL>">
No need to roll your own avatar system: As an app developer, you don't need to roll your own custom avatar system. Bitpic is an avatar owned by the user through Paymail. Outsource your Avatar system to the Bitcoin blockchain.
Uploading Avatars: Allowing your users to upload avatars is also easy. Whenever you need to allow your user to upload avatars, all you need to do is to send them to the Bitpic upload interface.
100% Customizable: The Bitpic upload interface is a server-less application made up of static HTML and JavaScript. Which means, if are a wallet provider, or an app developer, and you want your own custom Avatar uploading UI within your app, you can easily do so. Just take a look at the frontend code at Upload page, and build your own version which creates transactions that follow the protocol. Then you can run your own Bitpic planaria node, or simply use the default bitpic.network
URL. Just make sure to say "Powered by Bitpic", so people know where they're uploading to.
Bitpic is powered by Planaria. The Bitpic planaria node creates a mutable database which updates the image tied to a paymail address.
Anyone can run a Bitpic avatar node because:
/u/<paymail>
the image url you can embed in your apps. Example: https://bitpic.network/u/[email protected]/exists/<paymail>
returns "1" if the paymail has an associated bitpic avatar. returns "0" if it doesn't exist yet.. Example: https://bitpic.network/exists/[email protected]By default Bitpic returns a fixed default image if an image doesn't yet exist for the corresponding paymail address. Here's what it looks like:
However it is possible to specify your own default image when the image doesn't load. You can do this by adding a d=<default image url>
parameter at the end. Here's an example:
https://bitpic.network/u/[email protected]?d=https://thumbs.gfycat.com/ExhaustedSaneAngwantibo-small.gif