on master help sign in
dec spotlight, attempted to add groups functionality to ecosystem
4b31c2dGordon
components/ecosystem/IndexCard.js+2−1
@@ -41,9 +41,10 @@ const badge = (type) => {
41 {
41 {
42 "bg-[#B37ED7]": type === "Organization",
42 "bg-[#B37ED7]": type === "Organization",
43 "bg-[#83b2d4]": type === "Application",
43 "bg-[#83b2d4]": type === "Application",
44+ "bg-[#219DFF]": type === "Group",
44 "bg-wall-600": type === "Podcast",
45 "bg-wall-600": type === "Podcast",
45 "bg-[#8dd5b1]": type === "Marketplace",
46 "bg-[#8dd5b1]": type === "Marketplace",
46− "bg-[#B5966D]": type === "Article"
47+ "bg-[#B5966D]": type === "Article",
47 }
48 }
48 )}
49 )}
49 >
50 >
components/ecosystem/Post.js+10
@@ -80,6 +80,15 @@ export default function Post({ post }) {
80 </a>
80 </a>
81 </Link>
81 </Link>
82 )}
82 )}
83+
84+ {post[feat].type === "Group" && (
85+ <Link href={href || "#"} passHref>
86+ <a class="button-sm text-white flex-col bg-green-400 cursor-pointer pr-4 w-fit">
87+ More about {post[feat].title}
88+ </a>
89+ </Link>
90+ )}
91+
83 </div>
92 </div>
84 ) : null;
93 ) : null;
85 });
94 });
@@ -96,6 +105,7 @@ const badge = (type) => {
96 "bg-wall-600": type === "Podcast",
105 "bg-wall-600": type === "Podcast",
97 "bg-[#8dd5b1]": type === "Marketplace",
106 "bg-[#8dd5b1]": type === "Marketplace",
98 "bg-[#B5966D]": type === "Article",
107 "bg-[#B5966D]": type === "Article",
108+ "bg-[#219DFF]": type === "Group",
99 }
109 }
100 )}
110 )}
101 >
111 >
content/applications/~tirrel/scene.mdnew file+14
@@ -0,0 +1,14 @@
1++++
2+title = "Scene"
3+shortcode = ""
4+license = "MIT"
5+image = "https://tirrel.io/assets/scene-logo-stroke.svg"
6+bgColor = "rgb(0, 0, 0)"
7+developer = "Tirrel Corp."
8+website = "https://tirrel.io"
9+description = "The new Urbit desktop, by ~tirrel corp."
10++++
11+
12+![Screenshot](https://tirrel.io/assets/scene-demo-screenshot.webp)
13+
14+[Download scene here](https://tirrel.io/scene/index.html).
content/ecosystem/spotlight/2022-december.mdnew file+34
@@ -0,0 +1,34 @@
1++++
2+title = "December 2022"
3+date = "2022-11-29"
4+
5+[featured-1]
6+title = "UF Public"
7+description = "The best place to get the latest updates from the team at the Urbit Foundation."
8+image="https://interstellar.nyc3.digitaloceanspaces.com/battus-datsun/2022.11.07..19.39.22-Sig.png"
9+content = """
10+Join the new and improved Urbit Foundation group to get updates from the Urbit Foundation on developer activity, infrastructure, and general announcements. This group also includes a notebook for available talent, as well as a job board, for individuals in the community seeking work, or seeking to hire.
11+
12+"""
13+
14+[featured-2]
15+title = "Groups 2.0 (Beta)"
16+description = "The new Groups application from Tlon is officially now in beta."
17+image="https://storage.googleapis.com/media.urbit.org/site/ecosystem/articles/3things40.jpg"
18+content = """
19+
20+Test drive the future of Urbit now with Tlon's official beta of Groups. This beta features a
21+
22+"""
23+
24+[featured-3]
25+
26+title = "Scene"
27+image=""
28+description = "Explore Urbit with tirrel's desktop app, Scene."
29+content = """
30+
31+Tirrel is developing an outside-the-browser Urbit experience geared towards content creators.
32+
33+"""
34++++
pages/ecosystem/index.js+4−1
@@ -46,6 +46,9 @@ export default function Ecosystem({
46 case "applications":
46 case "applications":
47 title = "Applications • Ecosystem";
47 title = "Applications • Ecosystem";
48 break;
48 break;
49+ case "applications":
50+ title = "Groups • Ecosystem";
51+ break;
49 case "marketplaces":
52 case "marketplaces":
50 title = "Marketplaces • Ecosystem";
53 title = "Marketplaces • Ecosystem";
51 break;
54 break;
@@ -296,7 +299,7 @@ function EcosystemSidebar() {
296 <ActiveLink
299 <ActiveLink
297 currentPath={currentPath}
300 currentPath={currentPath}
298 className="type-ui"
301 className="type-ui"
299− href="/ecosystem?type=marketplaces"
302+ href="/ecosystem?type=groups"
300 >
303 >
301 Marketplaces
304 Marketplaces
302 </ActiveLink>
305 </ActiveLink>
pages/ecosystem/spotlight/[slug].js+2
@@ -50,6 +50,7 @@ export async function getStaticProps({ params }) {
50 "ecosystem/spotlight"
50 "ecosystem/spotlight"
51 );
51 );
52 const marketplaces = getAllPosts(["title", "image", "slug"], "marketplaces");
52 const marketplaces = getAllPosts(["title", "image", "slug"], "marketplaces");
53+ const groups = getAllPosts(["title", "tile,", "description", "slug"], "groups");
53 const podcasts = getAllPosts(
54 const podcasts = getAllPosts(
54 ["title", "image", "date", "podcast", "slug"],
55 ["title", "image", "date", "podcast", "slug"],
55 "podcasts",
56 "podcasts",
@@ -89,6 +90,7 @@ export async function getStaticProps({ params }) {
89 const matchedPost = [
90 const matchedPost = [
90 ...applications.map((e) => ({ ...e, type: "Application" })),
91 ...applications.map((e) => ({ ...e, type: "Application" })),
91 ...organizations.map((e) => ({ ...e, type: "Organization" })),
92 ...organizations.map((e) => ({ ...e, type: "Organization" })),
93+ ...groups.map((e) => ({ ...e, type: "Group" })),
92 ...podcasts.map((e) => ({ ...e, type: "Podcast" })),
94 ...podcasts.map((e) => ({ ...e, type: "Podcast" })),
93 ...marketplaces.map((e) => ({ ...e, type: "Marketplace" })),
95 ...marketplaces.map((e) => ({ ...e, type: "Marketplace" })),
94 ...articles.map((e) => ({ ...e, type: "Article" })),
96 ...articles.map((e) => ({ ...e, type: "Article" })),