From f3c5a69183ffc70c115b404dea848304e9ca7f90 Mon Sep 17 00:00:00 2001 From: gustavobftorres Date: Thu, 26 Feb 2026 16:48:01 -0300 Subject: [PATCH 1/6] improve website metadata, match with the purpose of the page --- app/layout.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/layout.tsx b/app/layout.tsx index f7e343d..9ee39ba 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -23,7 +23,7 @@ const newsreader = Newsreader({ }); export const metadata: Metadata = { - title: "LBP Simulator | Balancer", + title: "Liquidity Bootstrapping Pools | Balancer", description: "Simulate a LBP sale to understand price discovery.", icons: { icon: [ From 58be6609e64bf0ac722afc8ab4549afd6a35d7fb Mon Sep 17 00:00:00 2001 From: gustavobftorres Date: Thu, 26 Feb 2026 16:50:29 -0300 Subject: [PATCH 2/6] match voices on buttons CTAs and improve subtitle --- components/lbp-simulator/Hero.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/components/lbp-simulator/Hero.tsx b/components/lbp-simulator/Hero.tsx index 785f1d7..0fa8363 100644 --- a/components/lbp-simulator/Hero.tsx +++ b/components/lbp-simulator/Hero.tsx @@ -45,7 +45,7 @@ export function Hero() { ref={subtitleRef} className="text-lg md:text-xl text-muted-foreground max-w-2xl mb-8" > - Programmable, on-chain price discovery for fair token launches, and more. + Programmable price discovery for token launches, buybacks, and treasury diversification. All on-chain.

- Get the 961 LBPs Analysis + Read the 961 LBPs Analysis
From 1baa4aaa86ba4e8d485646aa9b389d5ac0e74985 Mon Sep 17 00:00:00 2001 From: gustavobftorres Date: Thu, 26 Feb 2026 16:55:09 -0300 Subject: [PATCH 3/6] fix voices on Live and KPI sections --- components/layout/KPI.tsx | 2 +- components/layout/Live.tsx | 43 ++++++++++++++++++++++++++++++-------- 2 files changed, 35 insertions(+), 10 deletions(-) diff --git a/components/layout/KPI.tsx b/components/layout/KPI.tsx index 853d3cb..9b01e72 100644 --- a/components/layout/KPI.tsx +++ b/components/layout/KPI.tsx @@ -101,7 +101,7 @@ export function KPI() {
- Single participants + Unique participants
{formatCount(participants)} diff --git a/components/layout/Live.tsx b/components/layout/Live.tsx index 302a560..115e82d 100644 --- a/components/layout/Live.tsx +++ b/components/layout/Live.tsx @@ -34,7 +34,10 @@ export function Live() { }); return points - .map((p, idx) => `${idx === 0 ? "M" : "L"} ${p.x.toFixed(2)} ${p.y.toFixed(2)}`) + .map( + (p, idx) => + `${idx === 0 ? "M" : "L"} ${p.x.toFixed(2)} ${p.y.toFixed(2)}`, + ) .join(" "); })(); @@ -51,11 +54,12 @@ export function Live() { Live on Balancer

- Launch, divest, and buy back tokens, securely on-chain. + Launch, divest, and buy back tokens, all transparent.

- Launch with confidence using programmable LBP mechanics built for - fair price discovery and transparent allocation. + Built for fair price discovery and minimal market impact, whether + you're launching a token, executing a buyback, or divesting a + treasury position.

@@ -80,16 +84,35 @@ export function Live() {
- + - - + + - + @@ -138,7 +161,9 @@ export function Live() {
Token price - $1.50 USDC + + $1.50 USDC +
From 3dde3e444a45ed5b454ecd93d4ff0cef1d45425c Mon Sep 17 00:00:00 2001 From: gustavobftorres Date: Thu, 26 Feb 2026 16:56:47 -0300 Subject: [PATCH 4/6] improve KPI descriptions to match with title voices --- components/layout/KPI.tsx | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/components/layout/KPI.tsx b/components/layout/KPI.tsx index 9b01e72..ff392db 100644 --- a/components/layout/KPI.tsx +++ b/components/layout/KPI.tsx @@ -79,24 +79,24 @@ export function KPI() {
- Historical amount raised + Total Raised
{formatCurrency(raised)}
- Liquidity bootstrapped through on-chain auctions. + Bootstrapped through on-chain auctions across all LBPs.
- LBP pools created + LBPs Launched
{formatCount(pools)}
- Verified launches across ecosystems and communities. + Completed launches across ecosystems and communities.
@@ -107,7 +107,7 @@ export function KPI() { {formatCount(participants)}
- Unique participants across LBP launches. + Individual wallets that participated in LBP launches.
From 20857fbfc440cdecdf16af8e99dabc536cfe17eb Mon Sep 17 00:00:00 2001 From: gustavobftorres Date: Thu, 26 Feb 2026 17:02:03 -0300 Subject: [PATCH 5/6] improve descriptions on buy back deep-dive section --- components/layout/Insights.tsx | 4 +- components/layout/UseCases.tsx | 77 +++++++++++++++++----------------- 2 files changed, 41 insertions(+), 40 deletions(-) diff --git a/components/layout/Insights.tsx b/components/layout/Insights.tsx index bdd1277..bd7a06e 100644 --- a/components/layout/Insights.tsx +++ b/components/layout/Insights.tsx @@ -33,13 +33,13 @@ const INSIGHTS = [ { subtitle: "Invert the Mechanics", paragraph: - "Reverse the standard logic by starting with high collateral weight (e.g., 90% DAI) to generate natural upward price pressure.", + "Start with high collateral weight (e.g., 90% DAI) to create natural upward price pressure as weights shift.", Icon: RefreshCcw, }, { subtitle: "Passive Accumulation", paragraph: - "Operate as an automated limit order where arbitrageurs are incentivized to fill your treasury organically as weights adjust.", + "Function as an automated limit order: arbitrageurs fill your treasury with collateral as pool weights shift, requiring no active management.", Icon: Magnet, }, { diff --git a/components/layout/UseCases.tsx b/components/layout/UseCases.tsx index e22c223..126713a 100644 --- a/components/layout/UseCases.tsx +++ b/components/layout/UseCases.tsx @@ -21,7 +21,7 @@ const SLIDES = [ slug: "buy-back", title: "Buy Back", description: - "Programmatic buy-backs with transparent price discovery and predictable liquidity.", + "Automated buybacks with transparent price discovery and controlled market impact.", benefits: ["Market Stability", "Fair Pricing", "Transparent Execution"], Icon: RefreshCcw, caseStudy: { @@ -49,7 +49,7 @@ const SLIDES = [ slug: "token-launches", title: "Token Launches", description: - "Fair price discovery for new tokens. Let the market find the right price through an LBP.", + "Let the market set the price. Fairly, transparently, and without bot interference.", benefits: ["No Bot Sniping", "Deep Initial Liquidity", "Community Driven"], Icon: Rocket, caseStudy: { @@ -81,7 +81,7 @@ const SLIDES = [ slug: "divestment", title: "Investment & Divestment", description: - "Gradual, market-driven divestment with configurable weights and transparent execution.", + "Gradually enter or exit positions with configurable parameters and minimal price impact.", benefits: ["Minimal Price Impact", "Controlled Flow", "Verified Discovery"], Icon: TrendingDown, caseStudy: { @@ -167,44 +167,46 @@ const UseCases = ({ activeIndex, onSelect, openCaseSlug }: UseCasesProps) => { return url.toString(); }, []); - const animateDeck = useCallback((currentActiveIndex: number) => { - SLIDES.forEach((_, slideIndex) => { - const wrapper = wrapperRefs.current[slideIndex]; - const card = cardRefs.current[slideIndex]; - if (!wrapper || !card) return; + const animateDeck = useCallback( + (currentActiveIndex: number) => { + SLIDES.forEach((_, slideIndex) => { + const wrapper = wrapperRefs.current[slideIndex]; + const card = cardRefs.current[slideIndex]; + if (!wrapper || !card) return; - const position = getVisualPosition(slideIndex, currentActiveIndex); - const layout = CARD_LAYOUT[position]; - const isFocused = position === 0; - const scale = isFocused ? 1.1 : 1; - const mobileOffsetY = - position === 0 ? -8 : position === 1 ? -28 : -48; - const translateX = isMobile ? 0 : layout.offsetX; - const translateY = isMobile ? mobileOffsetY : isFocused ? -18 : 0; - const rotate = isMobile ? 0 : layout.rotate; - const deckScale = isMobile ? 1 : scale; + const position = getVisualPosition(slideIndex, currentActiveIndex); + const layout = CARD_LAYOUT[position]; + const isFocused = position === 0; + const scale = isFocused ? 1.1 : 1; + const mobileOffsetY = position === 0 ? -8 : position === 1 ? -28 : -48; + const translateX = isMobile ? 0 : layout.offsetX; + const translateY = isMobile ? mobileOffsetY : isFocused ? -18 : 0; + const rotate = isMobile ? 0 : layout.rotate; + const deckScale = isMobile ? 1 : scale; - animate(wrapper, { - translateX, - translateY, - rotate, - scale: deckScale, - duration: 420, - easing: "easeOutQuad", - }); + animate(wrapper, { + translateX, + translateY, + rotate, + scale: deckScale, + duration: 420, + easing: "easeOutQuad", + }); - // Set z-index immediately to prevent overlap issues during transition - wrapper.style.zIndex = (isFocused ? 40 : layout.baseZ).toString(); + // Set z-index immediately to prevent overlap issues during transition + wrapper.style.zIndex = (isFocused ? 40 : layout.baseZ).toString(); - animate(card, { - boxShadow: isFocused - ? "0 24px 60px rgba(230, 200, 163, 0.35)" - : "0 18px 35px rgba(15, 23, 42, 0.2)", - duration: 420, - easing: "easeOutQuad", + animate(card, { + boxShadow: isFocused + ? "0 24px 60px rgba(230, 200, 163, 0.35)" + : "0 18px 35px rgba(15, 23, 42, 0.2)", + duration: 420, + easing: "easeOutQuad", + }); }); - }); - }, [isMobile]); + }, + [isMobile], + ); useEffect(() => { // Initialize styles for all slides @@ -216,8 +218,7 @@ const UseCases = ({ activeIndex, onSelect, openCaseSlug }: UseCasesProps) => { const position = getVisualPosition(slideIndex, activeIndex); const layout = CARD_LAYOUT[position]; const isFocused = position === 0; - const mobileOffsetY = - position === 0 ? -8 : position === 1 ? -28 : -48; + const mobileOffsetY = position === 0 ? -8 : position === 1 ? -28 : -48; const translateX = isMobile ? 0 : layout.offsetX; const translateY = isMobile ? mobileOffsetY : isFocused ? -18 : 0; const rotate = isMobile ? 0 : layout.rotate; From f6ff3e4bb2e0e0b9a07b1b375bf232b511629ee4 Mon Sep 17 00:00:00 2001 From: gustavobftorres Date: Thu, 26 Feb 2026 17:03:46 -0300 Subject: [PATCH 6/6] improve FAQ questions overall --- components/layout/CommomQuestions.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/layout/CommomQuestions.tsx b/components/layout/CommomQuestions.tsx index 4756d54..a01c5ac 100644 --- a/components/layout/CommomQuestions.tsx +++ b/components/layout/CommomQuestions.tsx @@ -29,7 +29,7 @@ const QUESTIONS = [ "Yes. LBPs offer the flexibility to implement structured fixed price strategies over time, enabling teams to launch tokens in a more efficient and controlled manner.", }, { - question: "I wanted to deploy a LBP on a EVM with no support. How can I proceed?", + question: "The chain I want to deploy on isn't supported yet. What are my options?", answer: "Contact our product and support team to learn more about new integrations and other issues.", },