Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion frontend/src/components/landing/faq.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ const faqs = [
},
{
q: "Which tokens can I stream?",
a: "sBTC, STX, USDA, ALEX, xBTC, or any SIP-010 token. If it follows the SIP-010 standard on Stacks, you can stream it by the second.",
a: "sBTC, USDA, ALEX, xBTC, or any SIP-010 token. If it follows the SIP-010 standard on Stacks, you can stream it block by block. Native STX isn't a SIP-010 token, so it can't be streamed directly.",
},
{
q: "Is my money safe while it's streaming?",
Expand Down
4 changes: 2 additions & 2 deletions frontend/src/components/landing/features.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,8 @@ const features = [
icon: Coins,
title: "Stream any asset",
points: [
"sBTC, STX, USDA, ALEX, or any SIP-010 token",
"Stream real Bitcoin, by the second",
"sBTC, USDA, ALEX, xBTC, or any SIP-010 token",
"Stream Bitcoin-backed sBTC, block by block",
],
},
{
Expand Down
6 changes: 3 additions & 3 deletions frontend/src/components/landing/hero.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ export function Hero() {
transition={{ duration: 0.5, delay: 0.1 }}
className="text-2xl sm:text-4xl md:text-5xl lg:text-7xl font-bold tracking-tight leading-[1.1]"
>
<span className="text-zinc-100">Pay by the second.</span>
<span className="text-zinc-100">Pay by the block.</span>
<br />
<span className="gradient-text">Settled on Bitcoin.</span>
</motion.h1>
Expand All @@ -57,8 +57,8 @@ export function Hero() {
>
StackStream turns payroll, grants, and subscriptions into a live stream
of money. Recipients earn every block and claim whenever they want, and
senders keep every token that isn&apos;t earned yet. Stream sBTC, STX, or
any token on Stacks. Settlement inherits Bitcoin finality.
senders keep every token that isn&apos;t earned yet. Stream sBTC or any
SIP-010 token on Stacks. Settlement inherits Bitcoin finality.
</motion.p>

{/* CTAs */}
Expand Down
6 changes: 3 additions & 3 deletions frontend/src/components/landing/live-stream-card.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ const DURATION_SECONDS = 30 * 24 * 60 * 60; // 30 days
const RATE_PER_SECOND = DEPOSIT / DURATION_SECONDS; // ~0.0000000386 sBTC/sec
const BASE_EARNED = 0.05734829; // ~57% streamed

const TOKENS = ["sBTC", "STX", "USDA", "ALEX"];
const TOKENS = ["sBTC", "USDA", "ALEX", "xBTC"];

export function LiveStreamCard() {
// Start from the same value on server and first client paint to avoid a
Expand Down Expand Up @@ -81,13 +81,13 @@ export function LiveStreamCard() {

{/* Friendly caption */}
<p className="mt-4 text-sm leading-relaxed text-zinc-400">
This is real money landing every second. No invoice, no waiting for
This is real money landing every block. No invoice, no waiting for
payday, and they can cash out the moment they want.
</p>

{/* Any token */}
<div className="mt-5 flex flex-wrap items-center gap-1.5 border-t border-border/60 pt-4">
<span className="mr-1 text-xs text-zinc-500">Stream any token:</span>
<span className="mr-1 text-xs text-zinc-500">Stream any SIP-010 token:</span>
{TOKENS.map((t) => (
<span
key={t}
Expand Down
6 changes: 3 additions & 3 deletions frontend/src/components/landing/who-its-for.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ const segments = [
"Share your address, agree an amount and a length — done",
"Balance ticks up live while you build; pull it anytime",
"No invoice, no chasing, no 30-day wait",
"Get paid in sBTC, STX, or any token you choose",
"Get paid in sBTC or any SIP-010 token you choose",
],
},
{
Expand All @@ -53,7 +53,7 @@ const segments = [
points: [
"Stream a grant across the whole project, not one lump sum",
"Builders earn steadily as they ship",
"Unearned funds stay in your wallet to pause or pull back",
"Unearned funds stay yours: pause the stream or cancel to pull them back",
"No escrow agent, no awkward refunds — we fund our work this way",
],
},
Expand All @@ -66,7 +66,7 @@ const steps = [
headline: "Set it up once",
points: [
"Choose who you are paying",
"Pick any token — sBTC, STX, or your own",
"Pick a token — sBTC, USDA, or any SIP-010 token",
"Set the amount and how long it runs",
],
},
Expand Down
6 changes: 3 additions & 3 deletions frontend/src/lib/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -122,12 +122,12 @@ export interface TokenConfig {
const MAINNET_TOKENS: readonly TokenConfig[] = [
{
symbol: "sBTC",
name: "Stacks BTC",
name: "sBTC",
decimals: 8,
contractId: "SM3VDXK3WZZSA84XXFKAFAF15NNZX32CTSG82JFQ4.sbtc-token",
ftName: "sbtc-token",
icon: "/bitcoin.svg",
description: "Native Bitcoin on Stacks — the flagship streaming token",
description: "1:1 Bitcoin-backed asset on Stacks — the flagship streaming token",
},
{
symbol: "USDA",
Expand All @@ -140,7 +140,7 @@ const MAINNET_TOKENS: readonly TokenConfig[] = [
},
{
symbol: "ALEX",
name: "ALEX",
name: "ALEX Token",
decimals: 8,
contractId: "SP102V8P0F7JX67ARQ77WEA3D3CFB5XW39REDT0AM.token-alex",
ftName: "alex",
Expand Down
Loading