Add new files

#VERCEL_SKIP

Co-authored-by: Jeff Emmett <46964190+Jeff-Emmett@users.noreply.github.com>
This commit is contained in:
v0 2025-11-27 20:22:20 +00:00
parent 05a4a0ae53
commit 540f6599d3
17 changed files with 308 additions and 201 deletions

105
app/membership/page.tsx Normal file
View File

@ -0,0 +1,105 @@
import { Header } from "@/components/header"
import { Footer } from "@/components/footer"
import { ExternalLink } from "lucide-react"
import { Card, CardContent } from "@/components/ui/card"
import { Button } from "@/components/ui/button"
import Image from "next/image"
export default function MembershipPage() {
return (
<main className="min-h-screen">
<Header />
<div className="pt-20">
{/* Hero Section */}
<section className="bg-muted py-20">
<div className="container mx-auto px-4">
<h1 className="text-4xl md:text-5xl font-bold mb-6">CCA Membership in Bread Cooperative</h1>
<p className="text-xl text-muted-foreground max-w-3xl">
Understanding our cooperative membership and shared values
</p>
</div>
</section>
{/* Main Content */}
<section className="py-16">
<div className="container mx-auto px-4 max-w-4xl">
<Card className="mb-8">
<CardContent className="p-8">
<div className="flex flex-col md:flex-row gap-8 items-start mb-8">
<Image
src="/images/breadcoop-logo.svg"
alt="BreadCoop Logo"
width={150}
height={150}
className="object-contain"
/>
<div>
<h2 className="text-3xl font-bold mb-4">About Bread Cooperative</h2>
<p className="text-muted-foreground mb-4">
BreadCoop is a worker-owned cooperative that operates on principles of democratic ownership and
equitable distribution. As a cooperative, BreadCoop embodies the values of collective stewardship
and shared governance that align closely with the mission of the Crypto Commons Association.
</p>
</div>
</div>
<div className="space-y-6">
<div>
<h3 className="text-2xl font-semibold mb-3">Our Membership</h3>
<p className="text-muted-foreground">
The Crypto Commons Association is a proud member of Bread Cooperative. This membership represents
a natural alignment between traditional cooperative economics and emerging blockchain-based
commons governance models. Through this membership, we participate in a network of organizations
committed to building alternative economic systems based on cooperation rather than extraction.
</p>
</div>
<div>
<h3 className="text-2xl font-semibold mb-3">Shared Values</h3>
<p className="text-muted-foreground mb-4">
BreadCoop's cooperative model demonstrates how organizations can be structured to prioritize
member wellbeing and collective decision-making over extractive profit models. These principles
resonate deeply with our work on digital commons:
</p>
<ul className="list-disc list-inside space-y-2 text-muted-foreground ml-4">
<li>Democratic governance and shared decision-making</li>
<li>Equitable distribution of resources and value</li>
<li>Collective ownership and stewardship</li>
<li>Commitment to community wellbeing over individual profit</li>
<li>Transparency and accountability in operations</li>
</ul>
</div>
<div>
<h3 className="text-2xl font-semibold mb-3">Supporting Our Mission</h3>
<p className="text-muted-foreground">
Bread Cooperative has generously supported the CCA with a $10,000 contribution, helping advance
research and development of digital commons infrastructure. This support enables more cooperative,
community-driven economic systems and shows how digital tools can amplify and extend proven
cooperative principles into the blockchain space.
</p>
</div>
<div className="pt-4">
<Button asChild variant="default" size="lg">
<a
href="https://bread.coop"
target="_blank"
rel="noopener noreferrer"
className="inline-flex items-center gap-2"
>
Learn More About BreadCoop
<ExternalLink className="h-4 w-4" />
</a>
</Button>
</div>
</div>
</CardContent>
</Card>
</div>
</section>
</div>
<Footer />
</main>
)
}

View File

@ -1,10 +1,14 @@
import { Header } from "@/components/header"
import { Footer } from "@/components/footer"
import { ExternalLink } from "lucide-react" import { ExternalLink } from "lucide-react"
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card" import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card"
import { Button } from "@/components/ui/button" import { Button } from "@/components/ui/button"
export default function ResearchPage() { export default function ResearchPage() {
return ( return (
<div className="min-h-screen bg-background"> <main className="min-h-screen">
<Header />
<div className="pt-20">
{/* Hero Section */} {/* Hero Section */}
<section className="bg-muted py-20"> <section className="bg-muted py-20">
<div className="container mx-auto px-4"> <div className="container mx-auto px-4">
@ -37,9 +41,9 @@ export default function ResearchPage() {
<CardContent> <CardContent>
<p className="text-muted-foreground mb-4"> <p className="text-muted-foreground mb-4">
This paper explores the challenges of scaling commons-based approaches in the digital age, examining This paper explores the challenges of scaling commons-based approaches in the digital age, examining
how blockchain technology and tokenomics can support sustainable commons governance at global scales. how blockchain technology and tokenomics can support sustainable commons governance at global
The authors analyze various models for coordinating distributed communities and aligning incentives scales. The authors analyze various models for coordinating distributed communities and aligning
toward collective goals. incentives toward collective goals.
</p> </p>
<Button asChild variant="outline"> <Button asChild variant="outline">
<a <a
@ -68,9 +72,9 @@ export default function ResearchPage() {
</CardHeader> </CardHeader>
<CardContent> <CardContent>
<p className="text-muted-foreground mb-4"> <p className="text-muted-foreground mb-4">
This case study examines the Commons Stack, an open-source toolkit for creating token-based economies This case study examines the Commons Stack, an open-source toolkit for creating token-based
that fund and support public goods. It explores how new coordination mechanisms can realign incentives economies that fund and support public goods. It explores how new coordination mechanisms can
to promote sustainable funding for commons-oriented projects and communities. realign incentives to promote sustainable funding for commons-oriented projects and communities.
</p> </p>
<Button asChild variant="outline"> <Button asChild variant="outline">
<a <a
@ -103,9 +107,9 @@ export default function ResearchPage() {
</CardHeader> </CardHeader>
<CardContent> <CardContent>
<p className="text-muted-foreground mb-4"> <p className="text-muted-foreground mb-4">
A comprehensive roadmap exploring the development and implementation of commons-based economic systems. A comprehensive roadmap exploring the development and implementation of commons-based economic
This resource maps out pathways for building regenerative economies that prioritize collective systems. This resource maps out pathways for building regenerative economies that prioritize
stewardship and shared value creation. collective stewardship and shared value creation.
</p> </p>
<Button asChild variant="outline"> <Button asChild variant="outline">
<a <a
@ -130,8 +134,8 @@ export default function ResearchPage() {
<CardContent className="p-8 text-center"> <CardContent className="p-8 text-center">
<h2 className="text-3xl font-bold mb-4">Contribute to Our Research</h2> <h2 className="text-3xl font-bold mb-4">Contribute to Our Research</h2>
<p className="text-lg mb-6 max-w-2xl mx-auto"> <p className="text-lg mb-6 max-w-2xl mx-auto">
Are you working on research related to blockchain commons, tokenomics, or decentralized governance? We'd Are you working on research related to blockchain commons, tokenomics, or decentralized governance?
love to feature your work. We'd love to feature your work.
</p> </p>
<Button asChild variant="secondary" size="lg"> <Button asChild variant="secondary" size="lg">
<a href="/#contact">Get in Touch</a> <a href="/#contact">Get in Touch</a>
@ -141,5 +145,7 @@ export default function ResearchPage() {
</div> </div>
</section> </section>
</div> </div>
<Footer />
</main>
) )
} }

View File

@ -1,11 +1,14 @@
import { ExternalLink } from "lucide-react" import { Header } from "@/components/header"
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card" import { Footer } from "@/components/footer"
import { Card, CardContent } from "@/components/ui/card"
import { Button } from "@/components/ui/button" import { Button } from "@/components/ui/button"
import Image from "next/image" import Image from "next/image"
export default function SponsorsPage() { export default function SponsorsPage() {
return ( return (
<div className="min-h-screen bg-background"> <main className="min-h-screen">
<Header />
<div className="pt-20">
{/* Hero Section */} {/* Hero Section */}
<section className="bg-muted py-20"> <section className="bg-muted py-20">
<div className="container mx-auto px-4"> <div className="container mx-auto px-4">
@ -20,56 +23,39 @@ export default function SponsorsPage() {
{/* Major Sponsors */} {/* Major Sponsors */}
<section className="py-16"> <section className="py-16">
<div className="container mx-auto px-4"> <div className="container mx-auto px-4">
<h2 className="text-3xl font-bold mb-8">Major Supporters</h2> <h2 className="text-3xl font-bold mb-8">Our Supporters</h2>
<Card className="mb-8"> <div className="grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-6">
<CardHeader> {[
<div className="flex items-center gap-4 mb-4"> { name: "BreadCoop", logo: "/images/breadcoop-logo.svg" },
<Image { name: "Ledgerloops", logo: "/ledgerloops-logo-blue-circular.jpg" },
src="/images/breadcoop-logo.svg" { name: "Informal Systems", logo: "/informal-systems-logo-blue-circular.jpg" },
alt="BreadCoop Logo" { name: "EthicHub", logo: "/ethichub-logo-green-hexagon.jpg" },
width={120} { name: "Grassroots Economics", logo: "/grassroots-economics-logo-orange-circular.jpg" },
height={120} { name: "One Project", logo: "/one-project-logo.jpg" },
className="object-contain" { name: "Holochain", logo: "/holochain-logo.jpg" },
/> { name: "Breadchain", logo: "/breadchain-logo.jpg" },
<div> { name: "Regen Network", logo: "/regen-network-logo-green-circular.jpg" },
<CardTitle className="text-3xl">BreadCoop</CardTitle> { name: "Namada", logo: "/namada-logo-yellow-circular.jpg" },
<CardDescription className="text-base mt-2"> { name: "Poetic Technologies", logo: "/poetic-technologies-logo-white-network.jpg" },
Worker Cooperative $10,000 Contribution { name: "Tezos", logo: "/tezos-logo-blue-t3-circular.jpg" },
</CardDescription> { name: "Telos", logo: "/telos-logo-purple-circular.jpg" },
</div> ].map((sponsor) => (
</div> <Card
</CardHeader> key={sponsor.name}
<CardContent> className="flex flex-col items-center justify-center p-6 hover:shadow-lg transition-shadow"
<p className="text-muted-foreground mb-4">
BreadCoop is a worker-owned cooperative that operates on principles of democratic ownership and
equitable distribution. As a cooperative, BreadCoop embodies the values of collective stewardship and
shared governance that align closely with the mission of the Crypto Commons Association.
</p>
<p className="text-muted-foreground mb-4">
Their cooperative model demonstrates how organizations can be structured to prioritize member wellbeing
and collective decision-making over extractive profit models. By supporting the CCA with a generous
$10,000 contribution, BreadCoop is helping advance research and development of digital commons
infrastructure that can enable more cooperative, community-driven economic systems.
</p>
<p className="text-muted-foreground mb-4">
This partnership represents a natural alignment between traditional cooperative economics and emerging
blockchain-based commons governance models, showing how digital tools can amplify and extend proven
cooperative principles.
</p>
<Button asChild variant="outline">
<a
href="https://bread.coop"
target="_blank"
rel="noopener noreferrer"
className="inline-flex items-center gap-2"
> >
Visit BreadCoop <Image
<ExternalLink className="h-4 w-4" /> src={sponsor.logo || "/placeholder.svg"}
</a> alt={`${sponsor.name} Logo`}
</Button> width={80}
</CardContent> height={80}
className="object-contain mb-4"
/>
<p className="text-sm font-medium text-center">{sponsor.name}</p>
</Card> </Card>
))}
</div>
</div> </div>
</section> </section>
@ -80,8 +66,8 @@ export default function SponsorsPage() {
<CardContent className="p-8 text-center"> <CardContent className="p-8 text-center">
<h2 className="text-3xl font-bold mb-4">Support Our Mission</h2> <h2 className="text-3xl font-bold mb-4">Support Our Mission</h2>
<p className="text-lg mb-6 max-w-2xl mx-auto"> <p className="text-lg mb-6 max-w-2xl mx-auto">
Help us advance the development of digital commons infrastructure and research. Your support enables us Help us advance the development of digital commons infrastructure and research. Your support enables
to continue building tools and knowledge for community-driven blockchain ecosystems. us to continue building tools and knowledge for community-driven blockchain ecosystems.
</p> </p>
<Button asChild variant="secondary" size="lg"> <Button asChild variant="secondary" size="lg">
<a href="/#contact">Become a Supporter</a> <a href="/#contact">Become a Supporter</a>
@ -91,5 +77,7 @@ export default function SponsorsPage() {
</div> </div>
</section> </section>
</div> </div>
<Footer />
</main>
) )
} }

View File

@ -12,14 +12,19 @@ export function Footer() {
<div className="space-y-4"> <div className="space-y-4">
<h3 className="font-semibold text-lg">Contact</h3> <h3 className="font-semibold text-lg">Contact</h3>
<div className="space-y-2 text-sm text-primary-foreground/80"> <div className="space-y-2 text-sm text-primary-foreground/80">
<p>crypto-commons.org</p> <a href="mailto:contact@crypto-commons.org" className="hover:text-primary-foreground transition-colors">
contact@crypto-commons.org
</a>
<p className="text-primary-foreground/60">For inquiries about our work and mission</p> <p className="text-primary-foreground/60">For inquiries about our work and mission</p>
</div> </div>
</div> </div>
</div> </div>
<div className="mt-12 pt-8 border-t border-primary-foreground/20 text-center text-sm text-primary-foreground/60"> <div className="mt-12 pt-8 border-t border-primary-foreground/20 text-center space-y-2">
<p>&copy; {new Date().getFullYear()} Crypto Commons Association. All rights reserved.</p> <p className="text-lg font-semibold">Producing #RealValue</p>
<p className="text-sm text-primary-foreground/60">
&copy; {new Date().getFullYear()} Crypto Commons Association. All rights reserved.
</p>
</div> </div>
</div> </div>
</footer> </footer>

View File

@ -30,6 +30,9 @@ export function Header() {
<Link href="/sponsors" className="text-sm text-muted-foreground hover:text-foreground transition-colors"> <Link href="/sponsors" className="text-sm text-muted-foreground hover:text-foreground transition-colors">
Sponsors Sponsors
</Link> </Link>
<Link href="/membership" className="text-sm text-muted-foreground hover:text-foreground transition-colors">
Membership
</Link>
<Link href="/#contact" className="text-sm text-muted-foreground hover:text-foreground transition-colors"> <Link href="/#contact" className="text-sm text-muted-foreground hover:text-foreground transition-colors">
Contact Contact
</Link> </Link>

BIN
public/breadchain-logo.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

BIN
public/holochain-logo.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
public/one-project-logo.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB