on master help sign in
Edited intro text, updated nav link urls
d26c86cGordon
content/campus/_index.md+12−8
@@ -1,5 +1,6 @@
1+++
1+++
2−title = "Urbit for Software Developers"
2+title = "Software Developers"
3+slug = "software-developers"
3description = "Getting started as a software developer on Urbit"
4description = "Getting started as a software developer on Urbit"
4sort_by = "weight"
5sort_by = "weight"
5+++
6+++
@@ -8,11 +9,14 @@ Imagine how easy it would be to write and deploy software in a world where every
8
9
9Now stop imagining, because we’ve already built it.
10Now stop imagining, because we’ve already built it.
10
11
11−Like anything else, the best way to go about learning how to build on Urbit is to forge your own path. [Get on the network](https://airtable.com/shrmfUVpMskWw145u), clicking around this website. If you attended a Campus Outreach event and remember a term you didn’t understand, go to the search bar in the top right and see what comes up. Here are a few links to help get you started:
12+Like anything else, the best way to go about learning how to build on Urbit is to forge your own path. [Get on the network](https://airtable.com/shrmfUVpMskWw145u), clicking around this website. If you attended a Campus Outreach event and remember a term you didn’t understand, go to the search bar in the top right and see what comes up.
12
13
14+Here are a few links to help get you started:
13
15
16+—
17+
14−### [The Docs](https://developers.urbit.org/overview)
18+### [Urbit Developers Overview](https://developers.urbit.org/)
15−The full documentation, regularly updated with a number of useful writeups geared towards beginners
19+An overview of using Urbit for development
16
20
17### [Lightning Tutorials](https://developers.urbit.org/guides/quickstart/intro)
21### [Lightning Tutorials](https://developers.urbit.org/guides/quickstart/intro)
18Get a feel for the process of making and deploying an Urbit app in half an hour, no previous experience required
22Get a feel for the process of making and deploying an Urbit app in half an hour, no previous experience required
@@ -20,20 +24,20 @@ Get a feel for the process of making and deploying an Urbit app in half an hour,
20### [Core Curriculum](https://developers.urbit.org/guides/core)
24### [Core Curriculum](https://developers.urbit.org/guides/core)
21Learn the Urbit stack at your own pace
25Learn the Urbit stack at your own pace
22
26
23−<br>
24−
25The Foundation also regularly runs a series of cohort-based live courses that go over the core curriculum, free and open to all. One lesson per week for ~8 weeks that can easily be worked into even the busiest schedules. You can also get help with the Urbit stack on the network at the New Hooniverse group on Urbit.
27The Foundation also regularly runs a series of cohort-based live courses that go over the core curriculum, free and open to all. One lesson per week for ~8 weeks that can easily be worked into even the busiest schedules. You can also get help with the Urbit stack on the network at the New Hooniverse group on Urbit.
26
28
29+—
30+
27### [Live Courses](https://developers.urbit.org/courses)
31### [Live Courses](https://developers.urbit.org/courses)
28Learn the Urbit stack as part of a group
32Learn the Urbit stack as part of a group
29
33
30### [New Hooniverse](https://urbit.org/groups/~hiddev-dannut/new-hooniverse)
34### [New Hooniverse](https://urbit.org/groups/~hiddev-dannut/new-hooniverse)
31Discussion group for learning the Urbit stack. Open to beginner, intermediate, and advanced developers
35Discussion group for learning the Urbit stack. Open to beginner, intermediate, and advanced developers
32
36
33−<br>
34−
35Fledgling developers may also be interested in a new framework from [Holium](https://www.holium.com/) that allows Urbit apps to be built entirely in Javascript, as well as the Foundation’s grants program that provides opportunities for junior devs to tackle challenges at their level and take ownership of some of the Urbit address space.
37Fledgling developers may also be interested in a new framework from [Holium](https://www.holium.com/) that allows Urbit apps to be built entirely in Javascript, as well as the Foundation’s grants program that provides opportunities for junior devs to tackle challenges at their level and take ownership of some of the Urbit address space.
36
38
39+—
40+
37### [TomeDB](https://holium.gitbook.io/tomedb/)
41### [TomeDB](https://holium.gitbook.io/tomedb/)
38A framework for building Urbit apps solely with Javascript
42A framework for building Urbit apps solely with Javascript
39
43
content/campus/blockchain-enthusiasts.md+2−1
@@ -1,5 +1,6 @@
1+++
1+++
2−title = "Urbit for Blockchain Enthusiasts"
2+title = "Blockchain Enthusiasts"
3+slug = "blockchain-enthusiasts"
3description = "Learn how sound computing and sound money fit together"
4description = "Learn how sound computing and sound money fit together"
4weight = 4
5weight = 4
5[extra]
6[extra]
content/campus/creatives.md+2−1
@@ -1,5 +1,6 @@
1+++
1+++
2−title = "Urbit for Creatives"
2+title = "Creatives"
3+slug = "creatives"
3description = "Urbit for everyone"
4description = "Urbit for everyone"
4weight = 5
5weight = 5
5[extra]
6[extra]
pages/campus/[[...slug]].js+32−41
@@ -77,30 +77,34 @@ export default function Home({
77
77
78
78
79 {/* Brief explanatory paragraph */}
79 {/* Brief explanatory paragraph */}
80− <Section>
80+ <Section className="flex space-x-8">
81
81
82− <div className="w-full space-y-8 max-w-prose">
82+ <div className="flex w-2/3 space-y-8">
83 <div className="space-y-4">
83 <div className="space-y-4">
84− <p className="">
84+ <p className="type-ui">
85− <span className="font-bold">The internet cannot be saved. </span>
86− No matter how many unsuspecting youth are press-ganged into derivative careers maintaining,
87− optimizing, and reskinning this house of cards, the web as we know it is doomed to crumble under
88− its own weight. The platforms are closed, the data is siloed, and all the exits are shut tight.
89− </p>
90− <p>
91− Well, <i>almost</i> all the exits. For those with the gall to think outside the box, there is another way.
92− A complete reimagining of networked computing from the OS up, designed to facilitate the construction
85+ For those with the will to think outside the box: a complete reimagining of networked computing from the OS up, designed to facilitate the construction
93− of powerful, enduring, and decentralized systems.
86+ of powerful, enduring, and decentralized systems.
94− </p>
87+ </p>
95− <p>
88+ <p className="type-ui">
96− The Urbit Foundation’s Campus Outreach Program aims to find ambitious students interested in leaving the old
89+ The Urbit Foundation’s Campus Outreach Program aims to find ambitious students interested in leaving the old
97− world behind and providing them with the information and resources to help build a better future.
90+ world behind and providing them with the information and resources to help build a better future.
98− If you fit that description and want us to come to your university,{" "}
91+ If you fit that description and want us to come to your university,{" "}
99− <Link href="/campus#contact" passHref>
92+ <Link href="/campus#contact" passHref>
100− <a>get in touch.</a>
93+ <a>get in touch.</a>
101− </Link>{" "}
94+ </Link>{" "}
102− </p>
95+ </p>
103 </div>
96 </div>
97+
98+ </div>
99+
100+ <div className="w-1/3">
101+
102+ <Link href="https://airtable.com/shrmfUVpMskWw145u" passHref>
103+ <a className="button-lg bg-green-400 text-white type-ui max-w-fit">
104+ Get on Urbit
105+ </a>
106+ </Link>
107+
104 </div>
108 </div>
105 </Section>
109 </Section>
106
110
@@ -108,17 +112,8 @@ export default function Home({
108 how to make an in-page link (href to hashtag element id)
112 how to make an in-page link (href to hashtag element id)
109 <a href="#events"> cheebo </a>
113 <a href="#events"> cheebo </a>
110 */}
114 */}
111−
112− <Section className="pb-1">
113− <Link href="https://airtable.com/shrmfUVpMskWw145u" passHref>
114− <a className="button-lg bg-green-400 text-white type-ui max-w-fit">
115− Get on Urbit
116− </a>
117− </Link>
118− </Section>
119−
120
115
121−
116+
122
117
123 {
118 {
124 //funnel, repurposed from /overview page:
119 //funnel, repurposed from /overview page:
@@ -132,7 +127,7 @@ export default function Home({
132 <Sidebar search={search}>
127 <Sidebar search={search}>
133 {childPages("/campus", posts.pages)}
128 {childPages("/campus", posts.pages)}
134 </Sidebar>
129 </Sidebar>
135− <div className="markdown max-w-prose">
130+ <div className={'markdown max-w-prose ' + data.slug }>
136 <h3>{data.title}</h3>
131 <h3>{data.title}</h3>
137 <Markdown.render content={JSON.parse(markdown)} />
132 <Markdown.render content={JSON.parse(markdown)} />
138 </div>
133 </div>
@@ -156,7 +151,7 @@ export default function Home({
156 {events[1] ? <EventPreview event={events[1]} className="mb-8" /> : <div />}
151 {events[1] ? <EventPreview event={events[1]} className="mb-8" /> : <div />}
157 </TwoUp>
152 </TwoUp>
158 ) : (
153 ) : (
159− <p>No events yet — check back later.</p>
154+ <p className="pb-8">No events yet — check back later.</p>
160 )}
155 )}
161 <Link href="/events?tag=campus">
156 <Link href="/events?tag=campus">
162 <a className="bg-wall-600 text-white button-lg w-fit">
157 <a className="bg-wall-600 text-white button-lg w-fit">
@@ -172,10 +167,7 @@ export default function Home({
172
167
173 <div className="bg-wall-100 w-full p-4 md:p-8 rounded-3xl flex flex-wrap items-center">
168 <div className="bg-wall-100 w-full p-4 md:p-8 rounded-3xl flex flex-wrap items-center">
174
169
175− <div className="basis-full sm:basis-1/3 pb-4 sm:pb-0">
170+ <div className="sm:pl-2 align-middle">
176− <img className="rounded-xl w-72" src="https://storage.googleapis.com/media.urbit.org/assembly/assembly-thumb2.jpg" />
177− </div>
178− <div className="sm:basis-2/3 sm:pl-6 align-middle">
179 <h2 className=" text-2xl pb-2" >Get in touch</h2 >
171 <h2 className=" text-2xl pb-2" >Get in touch</h2 >
180 <p className="max-w-prose pb-4">
172 <p className="max-w-prose pb-4">
181 Not sure how to get started after attending an event? Want to schedule one at your university?
173 Not sure how to get started after attending an event? Want to schedule one at your university?
@@ -208,7 +200,7 @@ export default function Home({
208const childPages = (thisLink, children, level = 0) => {
200const childPages = (thisLink, children, level = 0) => {
209 const router = useRouter();
201 const router = useRouter();
210
202
211− const isThisPage = router.asPath === thisLink || router.asPath === `${thisLink}#reading`;
203+ const isThisPage = router.asPath === thisLink || router.asPath === `${thisLink}`;
212
204
213 const pageItemClasses = classnames({
205 const pageItemClasses = classnames({
214 "text-base type-ui": level === 0,
206 "text-base type-ui": level === 0,
@@ -218,7 +210,7 @@ const childPages = (thisLink, children, level = 0) => {
218 return (
210 return (
219 <ul className="">
211 <ul className="">
220 <li className="pb-2">
212 <li className="pb-2">
221− <Link href="/campus#reading">
213+ <Link href="/campus">
222 <a className={`${pageItemClasses} cursor-pointer`}>Software Developers</a>
214 <a className={`${pageItemClasses} cursor-pointer`}>Software Developers</a>
223 </Link>
215 </Link>
224 </li>
216 </li>
@@ -245,7 +237,7 @@ const pageTree = (thisLink, tree, level = 0) => {
245
237
246 return (
238 return (
247 <>
239 <>
248− <Link href={thisLink + "#reading"}>
240+ <Link href={thisLink}>
249 <a className={`${pageItemClasses} cursor-pointer`}>{tree.title}</a>
241 <a className={`${pageItemClasses} cursor-pointer`}>{tree.title}</a>
250 </Link>
242 </Link>
251 </>
243 </>
@@ -308,7 +300,6 @@ export async function getStaticProps({ params }) {
308
300
309
301
310
302
311−
312/* export async function getStaticProps() {
303/* export async function getStaticProps() {
313
304
314
305