@@ -2,6 +2,7 @@ import Head from 'next/head'
2import Link from 'next/link'
2import Link from 'next/link'
3import { useState } from 'react';
3import { useState } from 'react';
4import Container from '../components/Container'
4import Container from '../components/Container'
5+import SingleColumn from '../components/SingleColumn'
5import Header from '../components/Header'
6import Header from '../components/Header'
6import Footer from '../components/Footer'
7import Footer from '../components/Footer'
7import { getAllPosts } from '../lib/lib'
8import { getAllPosts } from '../lib/lib'
@@ -27,134 +28,136 @@ export default function Home({ posts, events }) {
29 <Container>
30 <Container>
30− <Header />
32+ <Header />
32− <section className="layout-narrow pt-48">
34+ <section className="layout-narrow pt-48">
33− <h1>A general-purpose, peer-to-peer, personal computing system.</h1>
35+ <h1>A general-purpose, peer-to-peer, personal computing system.</h1>
34− </section>
36+ </section>
36− <section className="layout-wide pt-48">
38+ <section className="layout-wide pt-48">
37− <div className="bg-yellow w-11/12 hero-card-height rounded-3xl flex">
39+ <div className="bg-yellow w-11/12 hero-card-height rounded-3xl flex">
38− <div className="pt-20 pl-12 w-7/12">
40+ <div className="pt-20 pl-12 w-7/12">
39− <div className="pb-7">
41+ <div className="pb-7">
40− <h2 className="text-gray p-0 m-0">Introducing</h2><h2 className="p-0 m-0">Port</h2>
42+ <h2 className="text-gray p-0 m-0">Introducing</h2><h2 className="p-0 m-0">Port</h2>
44+ <h3 className="pb-5">The Urbit client, now in beta.</h3>
45+ <p className="pb-5">Port lets you... Sed iste iusto deserunt id dolores dignissimos est expedita. Earum ut et nemo et voluptatem sunt ea. Delectus sed unde fugit reiciendis. Voluptatum animi laborum fugit dolores. Dolore qui asperiores eum iusto debitis sit. Et vel dolores voluptas.</p>
46+ <button className="button-lg type-ui mb-5">Download For Mac</button>
47+ <a className="">View on GitHub</a>
42− <h3 className="pb-5">The Urbit client, now in beta.</h3>
43− <p className="pb-5">Port lets you... Sed iste iusto deserunt id dolores dignissimos est expedita. Earum ut et nemo et voluptatem sunt ea. Delectus sed unde fugit reiciendis. Voluptatum animi laborum fugit dolores. Dolore qui asperiores eum iusto debitis sit. Et vel dolores voluptas.</p>
44− <button className="button-lg type-ui mb-5">Download For Mac</button>
45− <a className="">View on GitHub</a>
47− <div className="bg-black w-full rounded-xl hero-image-height hero-image mt-8" />
49+ <div className="bg-black w-full rounded-xl hero-image-height hero-image mt-8" />
51− <section className="layout-narrow pt-48">
52− <div className='measure'>
53− <h2 className="pb-12">Develop on Urbit</h2>
54− <h3 className="pb-12">
55− Urbit is a personal OS designed from scratch to run peer-to-peer applications.
57− <p className="pb-12">
58− The entire OS is a <a>single pure function</a> that provides application developers with strong guarantees: automated persistence and memory management, repeatable builds, and support for hot code reloading.
60− <button className="button-lg type-ui">Contribute</button>
64− <section className="layout-narrow pt-48">
65− <div className='flex items-center measure pb-12'>
66− <h2 className="m-0 p-0 mr-4">Urbit Grants</h2>
67− <button className="flex bg-green type-ui px-4 items-center justify-center h-12 rounded-full">32 Open</button>
69− <h3 className="pb-12 measure">
70− Contribute to Urbit and get rewarded with address space.
72− <div className="flex w-full items-center bg-lightGreen px-8 py-10 rounded-xl">
73− <div className="flex items-center flex-col p-4 w-full">
75− <h3 className="text-gray text-center pt-4">Urbit stars awarded</h3>
77− <div className="h-32 w-4 bg-green" />
51+ </section>
53+ <section className="layout-narrow pt-48">
78− <div className="flex items-center flex-col p-4 w-full">
54+ <div className='measure'>
79− <h2>1M+</h2>
55+ <h2 className="pb-12">Develop on Urbit</h2>
80− <h3 className="text-gray text-center pt-4">USD Rewarded</h3>
56+ <h3 className="pb-12">
81− </div>
57+ Urbit is a personal OS designed from scratch to run peer-to-peer applications.
82− <div className="h-32 w-4 bg-green" />
59+ <p className="pb-12">
83− <div className="flex items-center flex-col p-4 w-full">
60+ The entire OS is a <a>single pure function</a> that provides application developers with strong guarantees: automated persistence and memory management, repeatable builds, and support for hot code reloading.
85− <h3 className="text-gray text-center pt-4">Grants completed</h3>
62+ <button className="button-lg type-ui">Contribute</button>
88− <div className='measure py-12'>
89− <p className="pb-12">We regularly give away address space to reward community contributions, including education, promotion, and development.</p>
90− <button className="button-lg">View Grants</button>
92− </section>
64+ </section>
94− <section className="layout-narrow pt-48">
95− <div className='flex items-center measure pb-12'>
97− onClick={() => setTab(0)}
98− className={`tab-button-lg mr-6 ${tab === 0 ? 'text-black' : 'text-gray'}`}>
102− onClick={() => setTab(1)}
103− className={`tab-button-lg ${tab === 1 ? 'text-black' : 'text-gray'}`}>
108− <TabCarousel index={tab}>
66+ <section className="layout-narrow pt-48">
109− <div className="blog-grid">
67+ <div className='flex items-center measure pb-12'>
110− {
68+ <h2 className="m-0 p-0 mr-4">Urbit Grants</h2>
111− posts.slice(0, 4).map((post, i) => {
69+ <button className="flex bg-green type-ui px-4 items-center justify-center h-12 rounded-full">32 Open</button>
113− <div className={`border-black cursor-pointer blog-grid-${i}`} key={post.slug}>
71+ <h3 className="pb-12 measure">
114− <Link href={'/blog/' + post.slug} key={`post-${post.slug}`}>
72+ Contribute to Urbit and get rewarded with address space.
116− <BackgroundImage src={post.extra.image || ''} />
74+ <div className="flex w-full items-center bg-lightGreen px-8 py-10 rounded-xl">
117− <p className='text-black mt-2'>{post.title}</p>
75+ <div className="flex items-center flex-col p-4 w-full">
118− <caption className='text-black mt-2'>{post.extra.author}</caption>
76+ <h2>200+</h2>
119− <caption className='text-gray'>{post.date}</caption>
77+ <h3 className="text-gray text-center pt-4">Urbit stars awarded</h3>
121− </Link>
79+ <div className="h-32 w-4 bg-green" />
122− </div>
80+ <div className="flex items-center flex-col p-4 w-full">
124− })
82+ <h3 className="text-gray text-center pt-4">USD Rewarded</h3>
126− <div>
84+ <div className="h-32 w-4 bg-green" />
127− <Link href="/blog"><button className="button-lg type-ui">Read More</button></Link>
85+ <div className="flex items-center flex-col p-4 w-full">
87+ <h3 className="text-gray text-center pt-4">Grants completed</h3>
130− <div className="blog-grid">
90+ <div className='measure py-12'>
131− {
91+ <p className="pb-12">We regularly give away address space to reward community contributions, including education, promotion, and development.</p>
132− events.slice(0, 4).map((event, i) => {
92+ <button className="button-lg">View Grants</button>
134− <div className={`border-black cursor-pointer blog-grid-${i}`} key={event.slug}>
135− <Link href={'/events/' + event.slug} key={`post-${event.slug}`}>
137− <BackgroundImage src={event.extra.image || ''} />
138− <p className='text-black mt-2'>{event.title || ''}</p>
139− <caption className='text-gray'>{event.date}</caption>
147− </TabCarousel>
94+ </section>
96+ <section className="layout-narrow pt-48">
97+ <div className='flex items-center measure pb-12'>
99+ onClick={() => setTab(0)}
100+ className={`tab-button-lg mr-6 ${tab === 0 ? 'text-black' : 'text-gray'}`}>
104+ onClick={() => setTab(1)}
105+ className={`tab-button-lg ${tab === 1 ? 'text-black' : 'text-gray'}`}>
110+ <TabCarousel index={tab}>
111+ <div className="blog-grid">
113+ posts.slice(0, 4).map((post, i) => {
115+ <div className={`border-black cursor-pointer blog-grid-${i}`} key={post.slug}>
116+ <Link href={'/blog/' + post.slug} key={`post-${post.slug}`}>
118+ <BackgroundImage src={post.extra.image || ''} />
119+ <p className='text-black mt-2'>{post.title}</p>
120+ <caption className='text-black mt-2'>{post.extra.author}</caption>
121+ <caption className='text-gray'>{post.date}</caption>
129+ <Link href="/blog"><button className="button-lg type-ui">Read More</button></Link>
132+ <div className="blog-grid">
134+ events.slice(0, 4).map((event, i) => {
136+ <div className={`border-black cursor-pointer blog-grid-${i}`} key={event.slug}>
137+ <Link href={'/events/' + event.slug} key={`post-${event.slug}`}>
139+ <BackgroundImage src={event.extra.image || ''} />
140+ <p className='text-black mt-2'>{event.title || ''}</p>
141+ <caption className='text-gray'>{event.date}</caption>
152− <section className="layout-narrow pt-48">
154+ <section className="layout-narrow pt-48">
153− <div className='measure pb-12'>
155+ <div className='measure pb-12'>
154− <h2 className="m-0 p-0 mr-4 pb-12">Inside the OS</h2>
156+ <h2 className="m-0 p-0 mr-4 pb-12">Inside the OS</h2>
155− <p>We send monthly emails on system improvements, upcoming events, and community spotlights.</p>
157+ <p>We send monthly emails on system improvements, upcoming events, and community spotlights.</p>
157− </section>
159+ </section>
159 <Footer />
162 <Footer />