21 Commits

Author SHA1 Message Date
211c8060ab Merge version_11_1781704633523 into main
Merge version_11_1781704633523 into main
2026-06-17 13:59:31 +00:00
kudinDmitriyUp
b496d144ed Bob AI: Add user requested components to homepage 2026-06-17 13:58:38 +00:00
ecc4fb673d Merge version_10_1781704597876 into main
Merge version_10_1781704597876 into main
2026-06-17 13:56:41 +00:00
477735ba3f Merge version_9_1781704595683 into main
Merge version_9_1781704595683 into main
2026-06-17 13:56:39 +00:00
9c117c557f Update theme colors 2026-06-17 13:56:38 +00:00
713f411906 Update theme colors 2026-06-17 13:56:36 +00:00
0a7a94008f Merge version_8_1781704589132 into main
Merge version_8_1781704589132 into main
2026-06-17 13:56:33 +00:00
86b0470012 Update theme colors 2026-06-17 13:56:29 +00:00
70903278da Merge version_7_1781704578537 into main
Merge version_7_1781704578537 into main
2026-06-17 13:56:22 +00:00
f15b06e06b Merge version_6_1781704576519 into main
Merge version_6_1781704576519 into main
2026-06-17 13:56:20 +00:00
7086f45fd8 Update theme colors 2026-06-17 13:56:19 +00:00
053eadde2e Update theme colors 2026-06-17 13:56:17 +00:00
ff010bd6fe Merge version_5_1781704569650 into main
Merge version_5_1781704569650 into main
2026-06-17 13:56:13 +00:00
c20f8c6180 Update theme colors 2026-06-17 13:56:10 +00:00
15bb3c4454 Merge version_4_1781704565149 into main
Merge version_4_1781704565149 into main
2026-06-17 13:56:08 +00:00
1b704febac Update theme colors 2026-06-17 13:56:05 +00:00
2cf6ea1064 Merge version_3_1781702648949 into main
Merge version_3_1781702648949 into main
2026-06-17 13:24:15 +00:00
ca5393d06a Update theme colors 2026-06-17 13:24:09 +00:00
69f1b6d34b Merge version_2_1781702513426 into main
Merge version_2_1781702513426 into main
2026-06-17 13:23:17 +00:00
kudinDmitriyUp
1285cac44b Bob AI: <ATTACHED_BLOCKS>
The user attached the section/component ca
2026-06-17 13:22:41 +00:00
28d2e180c0 Merge version_1_1781700817408 into main
Merge version_1_1781700817408 into main
2026-06-17 12:55:02 +00:00
12 changed files with 230 additions and 170 deletions

View File

@@ -1,4 +1,4 @@
import FooterSimple from '@/components/sections/footer/FooterSimple';
import FooterSimpleMedia from '@/components/sections/footer/FooterSimpleMedia';
import NavbarInline from '@/components/ui/NavbarInline';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
import SiteBackgroundSlot from "@/components/ui/SiteBackgroundSlot";
@@ -53,8 +53,9 @@ export default function Layout() {
<Outlet />
</main>
<SectionErrorBoundary name="footer">
<FooterSimple
<FooterSimpleMedia
brand="Band"
imageSrc="http://img.b2bpic.net/free-photo/portrait-health-worker-special-equipment_23-2148980746.jpg"
columns={[
{
title: "Platform",

View File

@@ -5,15 +5,15 @@
:root {
/* @colorThemes/lightTheme/grayNavyBlue */
--background: #e3deea;
--card: #ffffff;
--foreground: #1f2027;
--primary-cta: #1f2027;
--primary-cta-text: #e3deea;
--secondary-cta: #ffffff;
--secondary-cta-text: #1f2027;
--accent: #627dc6;
--background-accent: #627dc6;
--background: #0a0a0a;
--card: #1a1a1a;
--foreground: #ffffff;
--primary-cta: #1f7cff;
--primary-cta-text: #ffffff;
--secondary-cta: #010101;
--secondary-cta-text: #ffffff;
--accent: #1f7cff;
--background-accent: #f96b2f;
/* @layout/border-radius/rounded */
--radius: 1rem;

View File

@@ -1,171 +1,38 @@
import AboutTextSplit from '@/components/sections/about/AboutTextSplit';
import ContactCta from '@/components/sections/contact/ContactCta';
import FaqTabbedAccordion from '@/components/sections/faq/FaqTabbedAccordion';
import FeaturesImageBento from '@/components/sections/features/FeaturesImageBento';
import FeaturesMediaCarousel from '@/components/sections/features/FeaturesMediaCarousel';
import HeroSplit from '@/components/sections/hero/HeroSplit';
import MetricsFeatureCards from '@/components/sections/metrics/MetricsFeatureCards';
import TestimonialMarqueeCards from '@/components/sections/testimonial/TestimonialMarqueeCards';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
// AUTO-GENERATED shell by per-section-migrate.
// Section bodies live in ./<PageBase>/sections/<X>.tsx. Edit the section
// files directly. Non-block content (wrappers, non-inlinable sections) is
// preserved inline; extracted section blocks become <XSection/> refs.
export default function HomePage() {
import React from 'react';
import HeroSection from './HomePage/sections/Hero';
import ProblemSection from './HomePage/sections/Problem';
import ArchitectureSection from './HomePage/sections/Architecture';
import FeaturesSection from './HomePage/sections/Features';
import MetricsSection from './HomePage/sections/Metrics';
import TestimonialsSection from './HomePage/sections/Testimonials';
import FaqSection from './HomePage/sections/Faq';
import ContactSection from './HomePage/sections/Contact';
import TeamSection from './HomePage/sections/Team';export default function HomePage(): React.JSX.Element {
return (
<>
<div id="hero" data-section="hero">
<SectionErrorBoundary name="hero">
<HeroSplit
tag="Clinical Protocol Orchestration"
title="Band is the context layer for high-stakes clinical trials."
description="Stop losing context between Clinical Evidence, Trial Design, and Regulatory teams. Orchestrate multi-agent workflows that keep evidence attached to decisions."
primaryButton={{
text: "View Demo", href: "#architecture"}}
secondaryButton={{
text: "Join Hackathon", href: "https://lablab.ai/ai-hackathons/band-of-agents-hackathon"}}
imageSrc="http://img.b2bpic.net/free-photo/empty-high-end-workspace-with-advanced-tech-tools-enhancing-productivity_482257-119752.jpg"
/>
</SectionErrorBoundary>
</div>
<>
<HeroSection />
<div id="problem" data-section="problem">
<SectionErrorBoundary name="problem">
<AboutTextSplit
title="The Cascading Failure"
descriptions={[
"Clinical trial development is broken by siloed context. Evidence teams synthesize safety signals, but these are often lost in Word docs.", "When the Protocol Design team misinterprets safety signals, the conflict remains hidden until Regulatory catches it during the IND submission—weeks later.", "This cycle happens 2-3 times per trial, costing up to $5M in acceleration value and delaying life-saving treatments."]}
/>
</SectionErrorBoundary>
</div>
<ProblemSection />
<div id="architecture" data-section="architecture">
<SectionErrorBoundary name="architecture">
<FeaturesMediaCarousel
tag="Agent Architecture"
title="Agentic Coordination"
description="Evidence findings, design choices, and regulatory requirements are linked in a single immutable log."
items={[
{
title: "Literature Scout", description: "AI Agent identifies safety signals and patient populations directly from literature.", buttonIcon: "Search", imageSrc: "http://img.b2bpic.net/free-photo/close-up-doctors-completing-medical-form_23-2148733954.jpg"},
{
title: "Protocol Designer", description: "Generates structured protocols that explicitly link back to core safety data.", buttonIcon: "FileText", imageSrc: "http://img.b2bpic.net/free-photo/digital-filing-storage_1048-12068.jpg"},
{
title: "Regulatory Agent", description: "Reviewer that flags inconsistencies before they reach the FDA submission phase.", buttonIcon: "Shield", imageSrc: "http://img.b2bpic.net/free-photo/standard-quality-control-collage-concept_23-2149595833.jpg"},
]}
/>
</SectionErrorBoundary>
</div>
<ArchitectureSection />
<div id="features" data-section="features">
<SectionErrorBoundary name="features">
<FeaturesImageBento
tag="Platform Features"
title="The Single Workspace"
description="Built on top of Band to provide tamper-evident logs and context tracking."
items={[
{
title: "Evidence Linking", description: "Context stays attached to design decisions.", imageSrc: "http://img.b2bpic.net/free-photo/3d-low-poly-abstract-background-with-connecting-lines-dots_1048-11673.jpg"},
{
title: "Conflict Detection", description: "Conflicts surfaced in real-time.", imageSrc: "http://img.b2bpic.net/free-photo/flat-lay-chat-bubbles-with-paper-shape-communication_23-2148796082.jpg"},
{
title: "Audit Trails", description: "Tamper-evident logs for regulation.", imageSrc: "http://img.b2bpic.net/free-photo/cool-background-blank-wallpaper-place-your-concept_1194-641481.jpg"},
{
title: "Auto-Briefings", description: "Evidence summarized automatically.", imageSrc: "http://img.b2bpic.net/free-photo/close-up-code-laptop-screen-server-hub-employees-reading-paperwork_482257-122503.jpg"},
{
title: "Escalation Logic", description: "Automated cross-agent notification.", imageSrc: "http://img.b2bpic.net/free-photo/settings-icon-front-side-white-background_187299-40209.jpg"},
{
title: "Version Control", description: "Iterate without losing history.", imageSrc: "http://img.b2bpic.net/free-vector/infography-about-world-new-technologies_23-2147568678.jpg"},
{
title: "IND Drafting", description: "Regulatory outputs structured.", imageSrc: "http://img.b2bpic.net/free-photo/flat-lay-business-concept_53876-14498.jpg"},
]}
/>
</SectionErrorBoundary>
</div>
<FeaturesSection />
<div id="metrics" data-section="metrics">
<SectionErrorBoundary name="metrics">
<MetricsFeatureCards
tag="Business Value"
title="Quantifiable Acceleration"
description="Band reduces trial timelines through proactive coordination and context preservation."
metrics={[
{
value: "2-Week", title: "Timeline Reduction", features: [
"Aggressive conflict resolution", "Automated regulatory alignment", "Reduced redesign iterations"],
},
{
value: "$5M", title: "Acceleration Value", features: [
"Direct ROI for $50M trials", "Reduced operational burn", "Earlier market entry"],
},
{
value: "100%", title: "Audit Coverage", features: [
"Tamper-evident logs", "Traceable context decisions", "Regulatory-ready export"],
},
]}
/>
</SectionErrorBoundary>
</div>
<MetricsSection />
<div id="testimonials" data-section="testimonials">
<SectionErrorBoundary name="testimonials">
<TestimonialMarqueeCards
tag="Validation"
title="Trusted by Researchers"
description="Hear from our partners about the impact of the Band orchestration layer."
testimonials={[
{
name: "Dr. Aris Thorne", role: "Head of Research", quote: "Band transforms our agent workflows. Context no longer gets lost in the shuffle.", imageSrc: "http://img.b2bpic.net/free-photo/portrait-health-worker-special-equipment_23-2148980746.jpg"},
{
name: "Elena Vance", role: "Regulatory Specialist", quote: "The early conflict detection in Band saved our latest IND from a massive delay.", imageSrc: "http://img.b2bpic.net/free-photo/vintage-style-people-working-office-with-computers_23-2149850980.jpg"},
{
name: "Marcus Chen", role: "Trial Architect", quote: "Finally, an agent-first workspace that actually respects clinical trial structure.", imageSrc: "http://img.b2bpic.net/free-photo/elderly-businessman-with-laptop_23-2148116267.jpg"},
{
name: "Sarah Miller", role: "BioTech VP", quote: "The acceleration potential is massive. This is a game-changer for trial design.", imageSrc: "http://img.b2bpic.net/free-photo/senior-business-woman-smiling_1187-1564.jpg"},
{
name: "James L. Doe", role: "Lead Data Scientist", quote: "Context tracking that just works across all our trial agents.", imageSrc: "http://img.b2bpic.net/free-photo/concerned-middle-aged-man-wearing-white-t-shirt-with-tie-crossing-hands-isolated-orange-wall_141793-83158.jpg"},
]}
/>
</SectionErrorBoundary>
</div>
<TestimonialsSection />
<TeamSection />
<div id="faq" data-section="faq">
<SectionErrorBoundary name="faq">
<FaqTabbedAccordion
tag="FAQ"
title="Common Questions"
description="Learn more about how Band helps optimize your clinical trials."
categories={[
{
name: "Platform", items: [
{
question: "What is Band?", answer: "Band is the orchestration layer that allows AI agents to communicate context securely in clinical workflows."},
{
question: "Is this compliant?", answer: "Yes, Band provides tamper-evident logs suitable for audit trails in regulated clinical environments."},
],
},
{
name: "Integration", items: [
{
question: "Can it integrate with EHR?", answer: "Band is agent-agnostic and connects to existing research databases and document repositories."},
{
question: "How do agents coordinate?", answer: "Agents communicate through Band's centralized workspace, ensuring every design choice links back to the original evidence."},
],
},
]}
/>
</SectionErrorBoundary>
</div>
<FaqSection />
<div id="contact" data-section="contact">
<SectionErrorBoundary name="contact">
<ContactCta
tag="Join the Hackathon"
text="Ready to build the future of clinical orchestration with Band?"
primaryButton={{
text: "Band Documentation", href: "https://www.band.ai/"}}
secondaryButton={{
text: "View on Lablab", href: "https://lablab.ai/ai-hackathons/band-of-agents-hackathon"}}
/>
</SectionErrorBoundary>
</div>
<ContactSection />
</>
);
}

View File

@@ -0,0 +1,28 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "architecture" section.
import React from 'react';
import FeaturesMediaCarousel from '@/components/sections/features/FeaturesMediaCarousel';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function ArchitectureSection(): React.JSX.Element {
return (
<div id="architecture" data-section="architecture">
<SectionErrorBoundary name="architecture">
<FeaturesMediaCarousel
tag="Agent Architecture"
title="Agentic Coordination"
description="Evidence findings, design choices, and regulatory requirements are linked in a single immutable log."
items={[
{
title: "Literature Scout", description: "AI Agent identifies safety signals and patient populations directly from literature.", buttonIcon: "Search", imageSrc: "http://img.b2bpic.net/free-photo/close-up-doctors-completing-medical-form_23-2148733954.jpg"},
{
title: "Protocol Designer", description: "Generates structured protocols that explicitly link back to core safety data.", buttonIcon: "FileText", imageSrc: "http://img.b2bpic.net/free-photo/digital-filing-storage_1048-12068.jpg"},
{
title: "Regulatory Agent", description: "Reviewer that flags inconsistencies before they reach the FDA submission phase.", buttonIcon: "Shield", imageSrc: "http://img.b2bpic.net/free-photo/standard-quality-control-collage-concept_23-2149595833.jpg"},
]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,23 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "contact" section.
import React from 'react';
import ContactCta from '@/components/sections/contact/ContactCta';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function ContactSection(): React.JSX.Element {
return (
<div id="contact" data-section="contact">
<SectionErrorBoundary name="contact">
<ContactCta
tag="Join the Hackathon"
text="Ready to build the future of clinical orchestration with Band?"
primaryButton={{
text: "Band Documentation", href: "https://www.band.ai/"}}
secondaryButton={{
text: "View on Lablab", href: "https://lablab.ai/ai-hackathons/band-of-agents-hackathon"}}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,17 @@
// Created by add_section_from_catalog (FaqTwoColumn).
import React from 'react';
import FaqTwoColumn from '@/components/sections/faq/FaqTwoColumn';
export default function FaqSection(): React.JSX.Element {
return (
<div data-webild-section="faq" id="faq">
<FaqTwoColumn
items={[{"answer":"Band is the orchestration layer that allows AI agents to communicate context securely in clinical workflows.","question":"What is Band?"},{"answer":"Yes, Band provides tamper-evident logs suitable for audit trails in regulated clinical environments.","question":"Is this compliant?"},{"answer":"Band is agent-agnostic and connects to existing research databases and document repositories.","question":"Can it integrate with EHR?"},{"answer":"Agents communicate through Band's centralized workspace, ensuring every design choice links back to the original evidence.","question":"How do agents coordinate?"}]}
description="Learn more about how Band helps optimize your clinical trials."
title="Common Questions"
tag="FAQ"
/>
</div>
);
}

View File

@@ -0,0 +1,36 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "features" section.
import React from 'react';
import FeaturesImageBento from '@/components/sections/features/FeaturesImageBento';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function FeaturesSection(): React.JSX.Element {
return (
<div id="features" data-section="features">
<SectionErrorBoundary name="features">
<FeaturesImageBento
tag="Platform Features"
title="The Single Workspace"
description="Built on top of Band to provide tamper-evident logs and context tracking."
items={[
{
title: "Evidence Linking", description: "Context stays attached to design decisions.", imageSrc: "http://img.b2bpic.net/free-photo/3d-low-poly-abstract-background-with-connecting-lines-dots_1048-11673.jpg"},
{
title: "Conflict Detection", description: "Conflicts surfaced in real-time.", imageSrc: "http://img.b2bpic.net/free-photo/flat-lay-chat-bubbles-with-paper-shape-communication_23-2148796082.jpg"},
{
title: "Audit Trails", description: "Tamper-evident logs for regulation.", imageSrc: "http://img.b2bpic.net/free-photo/cool-background-blank-wallpaper-place-your-concept_1194-641481.jpg"},
{
title: "Auto-Briefings", description: "Evidence summarized automatically.", imageSrc: "http://img.b2bpic.net/free-photo/close-up-code-laptop-screen-server-hub-employees-reading-paperwork_482257-122503.jpg"},
{
title: "Escalation Logic", description: "Automated cross-agent notification.", imageSrc: "http://img.b2bpic.net/free-photo/settings-icon-front-side-white-background_187299-40209.jpg"},
{
title: "Version Control", description: "Iterate without losing history.", imageSrc: "http://img.b2bpic.net/free-vector/infography-about-world-new-technologies_23-2147568678.jpg"},
{
title: "IND Drafting", description: "Regulatory outputs structured.", imageSrc: "http://img.b2bpic.net/free-photo/flat-lay-business-concept_53876-14498.jpg"},
]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,18 @@
// Created by add_section_from_catalog (HeroBrand).
import React from 'react';
import HeroBrand from '@/components/sections/hero/HeroBrand';
export default function HeroSection(): React.JSX.Element {
return (
<div data-webild-section="hero" id="hero">
<HeroBrand
imageSrc="http://img.b2bpic.net/free-photo/empty-high-end-workspace-with-advanced-tech-tools-enhancing-productivity_482257-119752.jpg"
primaryButton={{"text":"View Demo","href":"#architecture"}}
description="The context layer for high-stakes clinical trials. Stop losing context between Clinical Evidence, Trial Design, and Regulatory teams. Orchestrate multi-agent workflows that keep evidence attached to decisions."
brand="Band"
secondaryButton={{"href":"https://lablab.ai/ai-hackathons/band-of-agents-hackathon","text":"Join Hackathon"}}
/>
</div>
);
}

View File

@@ -0,0 +1,17 @@
// Created by add_section_from_catalog (MetricsIconCards).
import React from 'react';
import MetricsIconCards from '@/components/sections/metrics/MetricsIconCards';
export default function MetricsSection(): React.JSX.Element {
return (
<div data-webild-section="metrics" id="metrics">
<MetricsIconCards
tag="Business Value"
title="Quantifiable Acceleration"
metrics={[{"value":"2-Week","icon":"Clock","title":"Timeline Reduction"},{"value":"$5M","title":"Acceleration Value","icon":"DollarSign"},{"title":"Audit Coverage","icon":"ShieldCheck","value":"100%"}]}
description="Band reduces trial timelines through proactive coordination and context preservation."
/>
</div>
);
}

View File

@@ -0,0 +1,20 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "problem" section.
import React from 'react';
import AboutTextSplit from '@/components/sections/about/AboutTextSplit';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function ProblemSection(): React.JSX.Element {
return (
<div id="problem" data-section="problem">
<SectionErrorBoundary name="problem">
<AboutTextSplit
title="The Cascading Failure"
descriptions={[
"Clinical trial development is broken by siloed context. Evidence teams synthesize safety signals, but these are often lost in Word docs.", "When the Protocol Design team misinterprets safety signals, the conflict remains hidden until Regulatory catches it during the IND submission—weeks later.", "This cycle happens 2-3 times per trial, costing up to $5M in acceleration value and delaying life-saving treatments."]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,17 @@
// Created by add_section_from_catalog (TeamListCards).
import React from 'react';
import TeamListCards from '@/components/sections/team/TeamListCards';
export default function TeamSection(): React.JSX.Element {
return (
<div data-webild-section="team" id="team">
<TeamListCards
tag="Agents"
title="The Orchestration Team"
groups={[{"members":[{"detail":"Synthesizes literature, finds safety signals, identifies patient populations.","imageSrc":"http://img.b2bpic.net/free-photo/portrait-health-worker-special-equipment_23-2148980746.jpg","name":"Literature Scout Agent","role":"Evidence Team"},{"name":"Protocol Design Agent","role":"Design Team","imageSrc":"http://img.b2bpic.net/free-photo/vintage-style-people-working-office-with-computers_23-2149850980.jpg","detail":"Takes evidence and writes the protocol, defines inclusion/exclusion criteria, endpoints."},{"name":"Statistical Agent","role":"Statistical Programming Team","imageSrc":"http://img.b2bpic.net/free-photo/elderly-businessman-with-laptop_23-2148116267.jpg","detail":"Reads protocol, designs analysis, identifies statistical gaps."},{"imageSrc":"http://img.b2bpic.net/free-photo/senior-business-woman-smiling_1187-1564.jpg","name":"Regulatory Agent","role":"Regulatory Team","detail":"Reads all outputs together, drafts IND, flags any inconsistencies back to Design."}],"title":"Clinical Trial Agents"}]}
description="The specialized teams working sequentially over 3-6 months to design and execute clinical trials."
/>
</div>
);
}

View File

@@ -0,0 +1,16 @@
// Created by add_section_from_catalog (TestimonialAvatarCard).
import React from 'react';
import TestimonialAvatarCard from '@/components/sections/testimonial/TestimonialAvatarCard';
export default function TestimonialsSection(): React.JSX.Element {
return (
<div data-webild-section="testimonials" id="testimonials">
<TestimonialAvatarCard
tag="Validation"
title="Trusted by Researchers"
avatars={[{"imageSrc":"http://img.b2bpic.net/free-photo/portrait-health-worker-special-equipment_23-2148980746.jpg","name":"Dr. Aris Thorne"},{"imageSrc":"http://img.b2bpic.net/free-photo/vintage-style-people-working-office-with-computers_23-2149850980.jpg","name":"Elena Vance"},{"name":"Marcus Chen","imageSrc":"http://img.b2bpic.net/free-photo/elderly-businessman-with-laptop_23-2148116267.jpg"},{"imageSrc":"http://img.b2bpic.net/free-photo/senior-business-woman-smiling_1187-1564.jpg","name":"Sarah Miller"},{"name":"James L. Doe","imageSrc":"http://img.b2bpic.net/free-photo/concerned-middle-aged-man-wearing-white-t-shirt-with-tie-crossing-hands-isolated-orange-wall_141793-83158.jpg"}]}
/>
</div>
);
}