Odel
ShipDapp

ShipDapp

@yash1ts1TypeScriptMITUpdated 1mo ago

Deploy Dockerized apps to Akash devnet with ShipDapp MCP build, deploy, update, and logs tools.

Server endpointSSENo authProbed

This is the third-party server itself β€” Odel doesn't run it. Hitting this URL directly talks straight to the upstream server with no auth or proxying. Connect through Odel to front it with managed auth.

ShipDapp 🚒

Community-funded app deployments on decentralized cloud β€” deploy in one click, let your community fund the hosting.


πŸ“Ί Demo Video | 🌐 Live Demo


β›“ Solana Program (Devnet)

Program ID: 9XWssUszVyS9x73uHnPwR1N3HEwD4DrftVfbvLCcAmzm


πŸš€ At a Glance

ShipDapp Screenshot The one-click launchpad for decentralized applications on Akash & Solana.


πŸ— Architecture

graph TD
    User([User / Developer]) -->|Deploys App| Frontend[Next.js Frontend]
    Frontend -->|Triggers Workflow| Backend[Cloudflare Worker + D1]

    subgraph "Deploy Pipeline"
        Backend -->|Build via| GCB[Google Cloud Build]
        GCB -->|Container Image| AR[Artifact Registry]
        AR -->|Image pulled by| Akash[Akash Network]
        Akash -->|Hosts| DeployedApp[User App Container]
    end

    subgraph "Funding Flow"
        User -->|Sends SOL| FundingWallet[Solana Funding Wallet]
        Backend -->|Cron checks balance β‰₯ 0.1 SOL| FundingWallet
        Backend -->|Deploys using| AKTWallet[AKT Hot Wallet]
        AKTWallet -->|Pays for hosting| Akash
    end

    subgraph "On-chain Registry"
        Frontend -->|launch_app / donate| SolanaProgram[Solana Program]
        SolanaProgram -->|Tracks state| AppState[AppState PDA]
        SolanaProgram -->|Collects funds| Vault[Hosting Vault PDA]
    end

How Funding Works (Current)

  1. Each deployed app gets a unique Solana funding wallet address.
  2. Users (or the creator) send β‰₯ 0.1 SOL to this wallet to signal intent to deploy.
  3. A Cloudflare Worker cron periodically checks all PENDING_FUNDS deployments for sufficient SOL balance.
  4. Once funded, the backend triggers the deploy workflow using the platform's Akash hot wallet (pre-funded with AKT) to pay for on-chain hosting.

🚧 Planned: Automated SOL β†’ AKT token swapping so user SOL deposits directly cover Akash hosting costs. Currently the Akash wallet is funded manually by the platform operator.


πŸ›  Tech Stack

  • Solana: Anchor framework β€” on-chain app registry, hosting vaults, donations
  • Akash Network: Decentralized cloud for container hosting (Sandbox-2)
  • Cloudflare: Workers, D1 (SQLite), and Workflows for durable orchestration
  • Google Cloud Build: Cloud Native Buildpacks for containerizing user apps
  • Frontend: Next.js 14, Tailwind CSS, Framer Motion

πŸ›  Setup & Installation

Prerequisites

  • Node.js 18+
  • Solana CLI
  • Anchor CLI
  • Wrangler CLI (for Cloudflare Workers)

1. Clone & Install

git clone https://github.com/yash1ts/shipdapp.git
cd shipdapp
npm install
# Install sub-project dependencies
npm run install:all

2. Run Locally

# Start Frontend
npm run dev:frontend

# Start Cloudflare Worker (requires wrangler login)
npm run dev:worker

πŸ‘₯ Team


πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.