About Launchpad for Launchpads
How it works
- 01
Create
Pick a name, slug and theme. Ownership and the slug are recorded onchain (two confirmations: reserve, then create, so nobody can front-run your name).
- 02
Share
Get a branded page at slug.launch.o1.exchange (or /l/slug). Communities launch from a page that looks like theirs.
- 03
Launch
Tokens launch through o1's launch infrastructure and are attributed to your launchpad onchain.
- 04
Earn
You earn a share of the service fee on every launch, withdrawable any time.
Under the hood
- Open
slug.launch.o1.exchange hits one multi-tenant app. A proxy maps the hostname to /l/slug; there is no per-tenant infrastructure.
- Resolve
keccak256(slug) is looked up in LaunchpadRegistry: owner, status, fee policy and a metadata pointer.
- Brand
The metadata is fetched, sanitized, and checked against the onchain slug hash, then rendered in one of four approved brand kits.
- Launch
LaunchpadRouter takes the exact fee, splits it, and calls the launch adapter to create the token.
- Attribute
The router records token → launchpad permanently and emits TokenLaunched.
- Index
A Postgres indexer reads the events (idempotent, reorg-safe) and serves feeds and totals.
What a launch costs
- Base o1 B20 launch fee → protocol treasury
- 1.0×
- Launchpad-as-a-Service fee → o1 platform + launchpad owner
- 0.5×
- Total per launch
- 1.5×
The owner's share of the service fee is set per launchpad by the protocol admin and capped onchain.
What's real and what's mocked
- Registry, router, fee split, attribution
- Implemented and tested
- Allowlist, commit-reveal slugs, owner revenue share
- Implemented and tested
- Indexer and API
- Implemented on Postgres
- B20 / Uniswap v4 launch
- Mocked: a plain ERC-20 stands in
- Price, market cap, volume
- None: the mock has no market
- Wildcard DNS and TLS
- Deploy step, not provisioned
Scope
This is a testnet prototype. Launchpads are configuration, not custom code: branding is one of four approved kits, and every launch goes through the same router.