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
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)
- Each deployed app gets a unique Solana funding wallet address.
- Users (or the creator) send β₯ 0.1 SOL to this wallet to signal intent to deploy.
- A Cloudflare Worker cron periodically checks all
PENDING_FUNDSdeployments for sufficient SOL balance. - 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.