home

Launcher boosting app

Launcher boosting app is a progressive web app (PWA) combined with a token-curated registry, allowing users to bet on and invest in apps they want to see built. When an app receives enough support, it moves from concept to launch, with revenue distributed among the backers.

How we built it

  • Front-end
    • Developed with NextJS, the PWA offers a seamless user experience. It integrates with Web3 via the Privy authentication provider, which manages wallet creation and transaction processing.
  • API: The API follows a layered monolithic architecture.
    • Processes messages from RabbitMQ.
    • Manages data related to apps, rounds, and users, storing everything in MongoDB.
    • Implements authentication and authorization, with role-based access control.
  • Scheduler Service: A NodeJS service that manages the countdowns for each round.
    • Designed to be resilient against instance restarts.
    • Deployed on Kubernetes.
    • Communicates with RabbitMQ for messaging.
  • Indexer Service: This NodeJS service listens to and indexes events from the AppBooster Solidity smart contract on the BASE L2 blockchain.
    • Broadcasts indexed events via RabbitMQ, which the API then processes.
  • Smart Contract: The backbone of the system is a customized, upgradable ERC-1155 AppBooster smart contract.
    • Built on OpenZeppelin's secure contracts.
    • Emits events such as NewAppCreated, AppUpdated, and TokenPurchased.
    • Contains all business logic for handling boost rounds.
    • Deployed on the Base blockchain.

New learnings

  • Building and configuring a PWA from scratch.
  • Integrating with Privy for Web3 authentication.
  • Developing a custom blockchain log indexer for real-time event processing.
Launcher boosting app