# Read Me

## Bootstrap

Bootstrap routes PumpSwap creator fees back into the liquidity pool — automatically, on-chain, and verifiably. Creators configure their fee allocation, lock it before launch, and Bootstrap handles the rest.

No new tax on traders. No manual intervention. Just fees compounding into deeper pools.

***

#### Why it matters

Most tokens die — that's the nature of memecoins. Bootstrap doesn't change that. But when a token actually runs, liquidity is what determines whether it sustains or collapses. Bootstrap makes sure the pool grows with the token.

***

#### Links

|           |                                                      |
| --------- | ---------------------------------------------------- |
| App       | [app.bootstrapliq.fun](https://app.bootstrapliq.fun) |
| Twitter   | [@bootstrapliq](https://x.com/bootstrapliq)          |
| Hackathon | [hackathon.pump.fun](https://hackathon.pump.fun/)    |


# How It Works

## How It Works

### 1. Configure

Set how your PumpSwap creator fees are allocated:

| Channel          | What it does                                  |
| ---------------- | --------------------------------------------- |
| **LP Injection** | Fees routed into deepening the liquidity pool |
| **Team**         | Percentage sent to your wallet                |

Example: 80% LP / 20% Team → for every $100 in fees, $80 compounds into the pool, $20 goes to you.

#### Fee Schedule (Variable by Timer)

Choose how often Bootstrap claims and compounds fees. Higher frequency means more compounding events at a higher fee rate:

| Interval     | Fee Rate |
| ------------ | -------- |
| Every 30 min | 1.00%    |
| Every 2 hr   | 0.75%    |
| Every 12 hr  | 0.50%    |
| Daily        | 0.25%    |

The tradeoff is deliberate — high-volume tokens benefit from frequent compounding, while lower-volume tokens can minimize fees with a longer interval.

***

### 2. Lock

Lock your configuration on-chain before launch. Once locked, settings are immutable — buyers can verify them, and you can't change them.

| Lock Type                 | Description                                  |
| ------------------------- | -------------------------------------------- |
| Permanent                 | Can never be changed                         |
| Time-Locked (coming soon) | Immutable for a set period (30, 60, 90 days) |

***

### 3. Compound

Bootstrap's automation engine runs 24/7:

```
Fees accumulate → Bootstrap claims → Router splits per config → Actions execute → Repeat
```

**LP Injection cycle:**

1. Claim fees from PumpSwap
2. Split 50/50
3. Buy the token with one half
4. Deposit both halves into the liquidity pool

Creators choose their compounding frequency: every **30 minutes** (1.00%), **2 hours** (0.75%), **12 hours** (0.50%), or **daily** (0.25%). Higher frequency means more compounding events at a higher fee rate — configure based on your token's volume and strategy.

<figure><img src="/files/zaqvnktlEXp9FsLzqkgy" alt=""><figcaption></figcaption></figure>

***

### Existing Tokens

Bootstrap works for new launches and existing tokens. CTOs and communities can onboard by transferring fee authority to a Bootstrap-controlled wallet. Same lock guarantees, same verification, same compounding.

***

### Architecture

Six layers:

1. **UI** — Creator dashboard, config tools, verification pages
2. **Config & Launch** — Fee splits, lock mechanisms, deployment
3. **Blockchain** — PumpSwap integration, on-chain execution
4. **Automation** — Fee claiming, routing, execution
5. **Action Modules** — LP injection, team allocation
6. **Verification** — Public proof of config, locks, and execution history

Everything is on-chain. Everything is verifiable.


# Features

### LP Injection

The core feature. Bootstrap takes allocated creator fees, splits them 50/50, buys the token with half, and deposits both halves into the liquidity pool as paired assets. Cycles run every 30min / 2h / 12h / 24h. Pool gets thicker with every cycle.

### Team Allocation

Creators set a transparent percentage to their wallet for operational costs, marketing, or development. The difference from the current model: it's pre-declared, visible to buyers, locked once committed, and verifiable on-chain.

### Immutable Locks

Config is locked permanently on-chain (time-based locks coming soon). Buyers verify before they buy. No trust required.

### Buyer Verification

Every Bootstrap token has a public verification page:

* Fee allocation splits
* Lock status + countdown
* Full execution history with on-chain tx hashes

### Existing Token Support

Not just for new launches. CTOs and communities can onboard existing tokens (pre and post-bond) by transferring fee authority.


# LP Farms

## LP Farms

LP Farms lets holders stake their tokens to the LP and earn SOL rewards. Any token can run a farm — tokens launched through Bootstrap, or any other creator-fee enabled token.

This page covers how farms work, how to stake, how to create a farm, and what dashboard fields mean.

***

### What a Farm Is

A farm is a staking pool for a single token's LP. Holders stake their tokens to the LP, and the resulting LP position earns a share of the farm's SOL rewards, distributed proportionally to how much LP they've staked and for how long.

Rewards are paid in SOL and can be funded one of two ways:

* **Auto fee-routing** — a configurable share of the token's creator fees flows to the farm every cycle, with the remaining creator income continuing to the creator as normal. Only the creator can set this up.
* **Manual SOL deposits** — anyone (creator, trader, or holder) can deposit SOL directly into the farm and set an emission schedule.

Either way, the farm program handles distribution to stakers.

***

### Staking

Two tabs on the farm page, two ways to stake depending on what's in your wallet:

#### "Add LP and Stake" tab

Use this if you only hold the token and don't have LP yet. You deposit SOL alongside your tokens to create the LP, and it gets staked in the farm in one step.

This requires enough SOL in your wallet to match the value of the tokens you're depositing. The farm does not sell your tokens to generate the SOL side of the pair. If you don't have enough wallet SOL to match, use the "Stake" tab path below.

> **Note:** The SOL drawn from your wallet is locked into the LP position alongside your tokens. You can unstake at any time to return both to your wallet.

#### "Stake" tab

Use this if you already hold LP tokens for the farm's token. Enter the LP amount and stake.

Two ways to get LP tokens:

* **Swap on the swap page** — swap your tokens for LP tokens directly. No wallet SOL required.
* **Provide liquidity on the LP Pools page** — standard LP deposit flow.

Either way, the LP lands in your wallet and can be staked from the "Stake" tab.

#### To stake:

1. Open the farms dashboard and pick a farm.
2. Connect your wallet.
3. Pick the tab that matches your situation: "Add LP and Stake" if you're pairing with wallet SOL, "Stake" if you already hold LP.
4. Enter the amount and confirm.
5. Rewards accrue continuously based on your share of total staked LP. Claim or unstake at any time.

Your yield is a function of three things: the amount of LP you have staked, how long you stake it, and the farm's APR at the time. APR moves with TVL (more LP staked → your share of rewards shrinks) and with the rate of incoming reward flow.

***

### Creating a Farm

Any token can open a farm — Bootstrap-launched or not.

There are two entry points, plus two funding models to choose from:

#### At Launch

When creating a new token through Bootstrap, the farm is configured on the launch page. Set the allocation percentage at the same time you set up the token, and the farm is live from the first trade. Rewards are auto fee-routed from the start.

#### For an Existing Token

Two paths, depending on how you want to fund rewards:

**Manually funded — via the farms dashboard.** Anyone can create a manually funded farm — creators, traders, or holders who want to incentivize LP on a token. Hit **Create Farm** on the farms dashboard, deposit SOL, and set the emission schedule. The farm pays out your deposited SOL on that schedule; there's no connection to creator fees. Top up whenever you want.

**Auto fee-routed — via Bootstrap setup.** Only the creator can do this. To route creator fees into the farm automatically, set up Bootstrap on the existing token page and set the creator share. Every cycle, the configured share flows to the farm and the rest continues to the creator as normal creator income. Allocation can be adjusted at any time.

***

### Using the Dashboard

The dashboard serves both stakers and creators. Each row represents one farm.

Core fields:

* **Token** — the farm's token
* **TVL** — total value of LP tokens staked in the farm
* **APR** — annualized yield estimate *(see formula below)*
* **Rewards Remaining** — rewards still available to distribute
* **My Stake** — your current LP deposit (when wallet is connected)
* **My Rewards** — claimable rewards (when wallet is connected)

Sort by APR for discovery; sort by TVL for depth and maturity.

#### Interpreting the Dashboard

* **High APR + low TVL** → small farm with a live reward stream. Yield will compress as more LP stakes in.
* **Moderate APR + high TVL** → established farm in steady state.
* **Low APR** → either the reward stream has thinned or the farm is heavily staked. Check Rewards Remaining to tell which.

***

### APR Calculation

APR is the annualized value of rewards flowing into the farm, measured against total staked LP tokens:

```
APR = (projected annual reward value in SOL / staked LP TVL) × 100
```

Because both sides of that equation move — reward flow with creator activity, TVL with LP staking — APR on any farm should be treated as a live estimate, not a fixed rate. On new or thinly-staked farms especially, expect meaningful swings.

***

### Data Sources

The farms page pulls live data from two sources:

* **Token pricing and LP data** — [Jupiter API](https://station.jup.ag/docs/)
* **Farm state (stakes, rewards, schedule)** — read on-chain via the farm program

For integrators building on top: the farm program is the source of truth for anything stake- or reward-related. Jupiter is the source for pricing.


# For Creators

### Launching a Token

1. **Connect wallet** at [app.bootstrapliq.fun](https://app.bootstrapliq.fun) — Bootstrap creates a custodial wallet that controls fee authority
2. **Set up your token** — name, ticker, description, image (same as Pump.fun)
3. **Configure fee splits** — choose LP injection % and team %
4. **Lock settings** — permanent or time-lock (coming soon)
5. **Launch** — Bootstrap deploys to Pump.fun with your locked config

Your token lives on Pump.fun. Trades on PumpSwap. Bootstrap just manages the fees.

***

### What You Keep

* UI authority on Pump.fun — you're still the creator
* Team allocation — whatever % you set
* Trading ability — buy and sell freely
* Community — Bootstrap handles fees, you handle everything else

What you give up: the ability to silently extract fees. That's the signal.

***

### Onboarding an Existing Token

If you're running a CTO or managing an existing project:

1. Transfer fee authority to a Bootstrap-controlled wallet
2. Configure splits
3. Lock
4. Compounding starts automatically

Works pre-bond and post-bond. Verifiable on-chain.

***

### Example Configs

| Style      | LP   | Team |
| ---------- | ---- | ---- |
| Aggressive | 90%  | 10%  |
| Balanced   | 80%  | 20%  |
| Community  | 100% | 0%   |


# For Buyers

### How to Verify

Every Bootstrap token has a public verification page showing:

* **Fee config** — exact allocation splits (e.g., 80% LP / 20% Team)
* **Lock status** — time-locked or permanent, with countdown
* **Execution log** — every compounding event with on-chain tx hashes

Check it on Bootstrap or verify directly on Solscan.

***

### What to Look For

* Is the LP allocation high enough relative to market cap?
* Is the team cut reasonable?
* Is compounding executing consistently?
* How long has the lock been in place?

***

### What This Means Practically

Deeper pools = less slippage, stronger floors, survivable exits. As Bootstrap compounds over time:

* You can exit larger positions without destroying the chart
* Price is less vulnerable to single large sells
* The floor strengthens with every cycle

<figure><img src="/files/2gy0IxH756kGzhxapyQd" alt=""><figcaption></figcaption></figure>

***

### What Bootstrap Doesn't Do

* Doesn't guarantee price appreciation
* Doesn't prevent normal sell pressure
* Doesn't lock the creator's personal token holdings
* Doesn't save tokens with no attention or community

Bootstrap handles liquidity infrastructure. The narrative is still on the creator. Your due diligence is still on you.


# Economics

### Fee Structure

PumpSwap charges **0.30%** per trade:

* 0.25% → liquidity providers
* 0.05% → token creator

Bootstrap works with the 0.05% creator fee. No new tax on traders.

***

### Bootstrap's Cut

**5% of the creator fee** (not trade volume).

|                               | Per $1,000 trade |
| ----------------------------- | ---------------- |
| PumpSwap fee (0.30%)          | $3.00            |
| Creator fee (0.05%)           | $0.50            |
| Bootstrap (5% of creator fee) | $0.025           |
| To creator's config           | $0.475           |

Bootstrap makes 2.5 cents on a $1,000 trade.

***

### At Scale

| Metric                    | Value                    |
| ------------------------- | ------------------------ |
| PumpSwap weekly volume    | \~$1.82B                 |
| Weekly creator fees       | \~$910K                  |
| At 10% Bootstrap adoption | \~$91K through Bootstrap |
| Bootstrap revenue (5%)    | \~$4,550/week            |

***

### Why Incentives Align

Bootstrap only earns when tokens generate sustained volume — which requires healthy liquidity. The platform can't profit from extraction. It profits when tokens last.

### Comparison

| Model             | Cost to Traders | Liquidity Impact           |
| ----------------- | --------------- | -------------------------- |
| No fee management | None            | Fees extracted, pool flat  |
| Token tax         | 1-10% per trade | Some growth, kills volume  |
| DAO treasury      | None            | Slow, discretionary        |
| **Bootstrap**     | **None**        | **Continuous compounding** |


# FAQ

## FAQ

**Will Bootstrap make my token succeed?** No. Memecoins are attention-based. If no one is trading your token, there are no fees to compound. Bootstrap is infrastructure for tokens that generate volume — it doesn't create it.

**Does it add a fee to traders?** No. It uses the existing 0.05% PumpSwap creator fee. Traders pay the same regardless.

**Can the creator change the config after launch?** Not once it's locked. Time-locked or permanent — enforced by the platform, not promises.

**Can I use it on an existing token?** Yes. Transfer fee authority to Bootstrap, configure, lock. Works pre and post-bond.

**What can I configure right now?** LP injection percentage and team allocation percentage. More channels (buybacks, burns, holder distributions) are on the roadmap.

**How often does it compound?** Creators choose from four intervals: every 30 minutes (1.00% fee), every 2 hours (0.75%), every 12 hours (0.50%), or daily (0.25%). Higher frequency = more compounding events at a higher fee rate.

**Do I lose control of my token?** No. You keep UI authority on Pump.fun, can trade freely, and manage your community. Bootstrap only controls fee routing.

**What if Bootstrap goes down?** Your token is unaffected — it lives on Pump.fun. Fees accumulate in the vault until the next cycle.

**How is this different from a token tax?** Token taxes add cost on every trade and reduce volume. Bootstrap uses fees that already exist — zero added friction.

**How is this different from liquidity locks?** Locks prevent removal. Bootstrap actively grows the pool. They're complementary — do both.

**Can Bootstrap be used for rug pulls?** Bootstrap locks fee management, not the creator's personal holdings. A creator could still sell their tokens. The fee config, however, is immutable once locked.

**What chains?** Solana only. Built for Pump.fun and PumpSwap.

**Is it audited?** In active development. Formal audits planned. All on-chain activity is transparent and verifiable now.


# Roadmap

## Roadmap

### ✅ Live

* Custodial wallet creation
* Fee allocation config (LP injection, team allocation)
* Immutable lock mechanism
* Automated fee claiming + LP injection
* Variable fee schedule (30 min / 2 hr / 12 hr / daily)
* New launch + existing token support
* On-chain execution logging
* Live validation on-chain
* Buyer verification interface + badge system
* Creator dashboard with real-time metrics

### 🛠️ In Progress

* PumpSwap LP tools (deposits, withdrawals, analytics)
* Ecosystem-wide analytics + public API
* Chrome extension for verification badges on Pump.fun


# API Reference

Bootstrap Protocol exposes a public REST API for querying on-chain token configurations managed by the protocol. All endpoints return JSON.

**Base URL**

```
https://bootstrap-be-production.up.railway.app
```

***

### Tokens

#### Get All Tokens

Returns all token configurations registered with Bootstrap Protocol.

```
GET /api/tokens
```

**Authentication:** None required.

**Parameters:** None.

***

#### Response

**`200 OK`**

json

```json
{
  "tokens": [
    {
      "id": "<uuid>",
      "tokenMint": "<token-mint-address>",
      "poolAddress": "<pool-address>",
      "creatorWalletPublicKey": "<creator-wallet>",
      "teamWalletAddress": "<team-wallet>",
      "teamAllocationBps": 1000,
      "lpAllocationBps": 10000,
      "scheduleInterval": "daily",
      "feeBps": 50,
      "createdAt": "<iso-timestamp>",
      "nextRunAt": "<iso-timestamp>",
      "lastRunAt": "<iso-timestamp>",
      "isExistingToken": false,
      "creatorLocked": false,
      "unlockDate": 0,
      "name": "<token-name>",
      "symbol": "<token-symbol>",
      "imageUri": "<image-url>",
      "description": "<description>",
      "website": "<website-url>",
      "twitter": "<twitter-handle>",
      "telegram": "<telegram-link>"
    }
  ]
}
```

***

#### Response Fields

| Field                    | Type    | Description                                                                       |
| ------------------------ | ------- | --------------------------------------------------------------------------------- |
| `id`                     | string  | Unique identifier for the token configuration (UUID)                              |
| `tokenMint`              | string  | The token's mint address on Solana                                                |
| `poolAddress`            | string  | PumpSwap liquidity pool address associated with this token                        |
| `creatorWalletPublicKey` | string  | Public key of the wallet that created the Bootstrap configuration                 |
| `teamWalletAddress`      | string  | Wallet address that receives the team fee allocation                              |
| `teamAllocationBps`      | integer | Percentage of fees routed to the team wallet, in basis points (e.g. `1000` = 10%) |
| `lpAllocationBps`        | integer | Percentage of fees routed to LP provision, in basis points (e.g. `10000` = 100%)  |
| `scheduleInterval`       | string  | Frequency of automated compounding runs. One of `hourly`, `daily`, `weekly`       |
| `feeBps`                 | integer | Creator fee rate in basis points (e.g. `50` = 0.5%)                               |
| `createdAt`              | string  | ISO 8601 timestamp when the configuration was created                             |
| `nextRunAt`              | string  | ISO 8601 timestamp of the next scheduled compounding run                          |
| `lastRunAt`              | string  | ISO 8601 timestamp of the most recent compounding run                             |
| `isExistingToken`        | boolean | `true` if this configuration was applied to a pre-existing token post-bond        |
| `creatorLocked`          | boolean | `true` if the creator has locked the configuration on-chain                       |
| `unlockDate`             | integer | Unix timestamp of when the configuration unlocks. `0` if no lock is set           |
| `name`                   | string  | Token name                                                                        |
| `symbol`                 | string  | Token ticker symbol                                                               |
| `imageUri`               | string  | URL of the token's image                                                          |
| `description`            | string  | Token description                                                                 |
| `website`                | string  | Project website URL                                                               |
| `twitter`                | string  | Twitter/X handle                                                                  |
| `telegram`               | string  | Telegram group or channel link                                                    |

***

#### Error Responses

| Status | Message                 | Description                                                           |
| ------ | ----------------------- | --------------------------------------------------------------------- |
| `500`  | `Failed to list tokens` | An internal server error occurred while fetching token configurations |

***

#### Example Request

bash

```bash
curl https://bootstrap-be-production.up.railway.app/api/tokens
```

#### Example Response

json

```json
{
  "tokens": [
    {
      "id": "3f7a1c2e-9b4d-4e8f-a123-6d5e7f8a9b0c",
      "tokenMint": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU",
      "poolAddress": "Fg6PaFpoGXkYsidMpWTK6W2BeZ7FEfcYkg476zPFsLnS",
      "creatorWalletPublicKey": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM",
      "teamWalletAddress": "HN7cABqLq46Es1jh92dQQisAq662SmxELLLsHHe4YWrH",
      "teamAllocationBps": 1000,
      "lpAllocationBps": 10000,
      "scheduleInterval": "daily",
      "feeBps": 50,
      "createdAt": "2026-02-14T12:00:00.000Z",
      "nextRunAt": "2026-02-15T12:00:00.000Z",
      "lastRunAt": "2026-02-14T12:00:00.000Z",
      "isExistingToken": false,
      "creatorLocked": true,
      "unlockDate": 1770000000,
      "name": "Bootstrap",
      "symbol": "BOOTSTRAP",
      "imageUri": "https://example.com/bootstrap.png",
      "description": "The protocol that compounds for you.",
      "website": "https://bootstrapprotocol.xyz",
      "twitter": "@bootstrap",
      "telegram": "https://t.me/bootstrap"
    }
  ]
}
```


# Team

Built by traders who kept watching the same thing happen — tokens run, pools stay thin, charts die. We built the tool we wanted to exist. Idea to MVP in two weeks.

***

[@omen\_xbt](https://x.com/omen_xbt) — Product, strategy, coordination. Background in web dev, AI systems, and Solana trading.

[@chudnoffski1](https://x.com/chudnoffski1) — Research, tokenomics, narrative. The original idea came from watching tokens die at scale from thin liquidity.

[@devtonic\_sol](https://x.com/devtonic_sol) — Solana backend. Fee claiming pipelines, LP injection, PumpSwap integration, automation engine.

***

|         |                                              |
| ------- | -------------------------------------------- |
| Twitter | [@bootstrapliq](https://x.com/bootstrapliq)  |
| Website | [bootstrapliq.fun](https://bootstrapliq.fun) |

***

Submitted to the **Pump.fun Build in Public Hackathon** — $3M fund, $250K per project at $10M valuation.


