STORY
Pitch: PhotoBolt
AUTHOR
Joined 2022.09.21
PROJECT
DATE
VOTES
sats
COMMENTS

Pitch: PhotoBolt

PhotoBolt is a demonstration of a competitive AI marketplace, as well as the first step towards a smart nostr client capable of completing any online tasks via outsourcing!

We believe that the highlight of this project (NIP90 Data Vending Machine) is something that will usher in very effective and efficient machine-to-machine interactions, and we want to help push it forward!

In this particular demo, a relatively complex task is broken into a chain of smaller tasks and broadcasted to the nostr network. Service providers compete against each other to complete these tasks for Bitcoin payout.

Video Demo

<iframe class="remirror-iframe remirror-iframe-youtube" src="https://www.youtube-nocookie.com/embed/xex9rEsrU5I?" data-embed-type="youtube" allowfullscreen="true" frameborder="0"></iframe>

Features

  1. Client

    1. Poster generation outsourcing. Takes a product image, logo image, a couple prompts and send out a chain of NIP90 job requests(a rough illustration of the job chain is on the Github page). Handles job offers as they come in by allowing user to pay for the offers via a webLN enabled wallet
  2. Service Provider

    1. Image generation. Listens for NIP90 job requests and generate an image based on text prompts(txt2img) or an image(img2img). Advanced techniques like ControlNet Canny (retaining the composition of the input image) is also supported

    2. Image background removal. Listens for NIP90 job requests and remove the background for the provided image

    3. Images overlay. Listens for NIP90 job requests and overlay the provided front image onto the back image

Next Steps

  1. NIP Proposal. Currently PhotoBolt uses the defined Kind 65005 for image generation event. For image background removal/overlay, it uses an unproposed Kind 65007. We plan to get this standardized.

  2. PhotoBolt SP Cloud Hosting. Hosting the Service Provider in the cloud would mean being able to service any image generation/processing requests for a fee!

  3. Multipurpose Client! PhotoBolt only serves a single purpose at the moment - Poster Generation. Now that the nostr communication piece is sorted out, we plan to make the client conversational, with the ability to interpret user's requests and match them against active services being offered on the nostr network. Not sure how to go about it yet, but it will be very fun to figure it out!

Tech Stack

  • Vue Frontend (client)

  • Go (service provider)

  • LND lightning node (polar regtest & mainnet)

  • automatic1111 (stable diffusion server)

  • rembg & ffmpeg (image processing tools)

  • relayer & NIP90 (nostr Relay & Data Vending Machine)

  • webLN (browser wallet payment)

Github: https://github.com/lnconsole/PhotoBolt

Team

Build In Public

  1. https://bolt.fun/story/milestone-1-stable-diffusion-gated-with-l402--929

  2. https://bolt.fun/story/milestone-2-from-l402-to-nostr-dvmdata-vending-machine--951