LU
Luukogood/stellar-token-launchpad
tellar meme token launchpad with Soroban: instant token creation, bonding curves, fair launches, liquidity bootstrap, and typed SDKs with a React+TS frontend and Node backend.
Stellar Meme Token Launchpad
Professional, production‑minded launchpad on Stellar, inspired by pump.fun on Solana. Create meme tokens, initialize liquidity, apply bonding curves, run fair launches, and manage distribution using Soroban smart contracts with a TypeScript backend and a modern React frontend.
Highlights
- Instant Token Launches: Create token, mint, and configure launch params in one flow
- Bonding Curve Sales: Optional linear/EMM curves for fair price discovery
- Liquidity Bootstrap: Seed liquidity pools post‑launch (DEX integration pluggable)
- Anti‑Snipe Guardrails: Per‑address caps, allowlists, cooldowns
- Indexing & API: Backend indexers for project and sale state
- Auditable & Modular: Soroban contracts and typed SDK clients
Tech Stack
- Chain: Stellar + Soroban
- Contracts: Rust with
soroban-sdk - Backend: Node.js + TypeScript (Express)
- Frontend: Next.js + React + TypeScript
Contact Me
Monorepo Structure
stellar-token-launchpad/
contracts/ # Soroban workspace
Cargo.toml # Workspace manifest
bonding_curve/ # Optional bonding curve module
Cargo.toml
src/lib.rs
token_launchpad/ # Core launchpad contract
Cargo.toml
src/lib.rs
backend/ # API server and indexer
package.json
tsconfig.json
src/index.ts
.env.example
frontend/ # Next.js app
package.json
tsconfig.json
next.config.js
pages/index.tsx
.gitignore
README.md
Quickstart
Prerequisites
- Node.js 18+
- Rust toolchain +
cargo - Soroban CLI:
cargo install soroban-cli - Stellar RPC access (public testnet OK for dev)
Contracts
Build all contracts:
cd contracts
cargo build --target wasm32-unknown-unknown --releaseTest (unit):
cargo testDeploy with Soroban CLI (example, adjust network and keys):
soroban contract deploy \
--wasm target/wasm32-unknown-unknown/release/token_launchpad.wasm \
--source default --rpc-url https://soroban-testnet.stellar.org \
--network testnetBackend
cd backend
cp .env.example .env
npm install
npm run devDefault endpoints:
GET /healthGET /projectsPOST /launch(stub: validates payload)
Frontend
cd frontend
npm install
npm run devOpen http://localhost:3000.
Contract Overview
-
token_launchpad:- initialize(token_admin, name, symbol, decimals)
- create_project(creator, hard_cap, soft_cap, start_ts, end_ts, per_wallet_cap, curve_kind)
- contribute(project_id, contributor, amount)
- finalize(project_id)
- claim(project_id, contributor)
- withdraw(project_id) — for creator if soft cap not met
-
bonding_curve(optional):- price(amount_in) -> amount_out
- curve config: linear/constant‑product/EMM (pluggable)
Note: Exact messages and types may change during implementation.
Security & Risk
- Use testnet and small amounts first
- Rate‑limit critical endpoints and require signatures where appropriate
- Keep secrets out of the repo; prefer OS keychain/KMS/Vault in production
- Review integer math and overflows in bonding curves carefully
Roadmap
- Curve library (linear, exponential, EMM)
- Project indexing and events subscription
- Wallet connect (Freighter/Snaps)
- DEX integration for initial liquidity
- Web dashboard for monitoring launches