blob: 1e5d95657c0ea3e3e9f469a8fedcd4e88e7136ba (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
---
import BlogCard from '@/components/BlogCard.astro'
import EventCard from '@/components/EventCard.astro'
import Link from '@/components/Link.astro'
import PageHead from '@/components/PageHead.astro'
import { buttonVariants } from '@/components/ui/button'
import { SITE } from '@/consts'
import Layout from '@/layouts/Layout.astro'
import { getRecentEvents, getRecentPosts } from '@/lib/data-utils'
const blog = await getRecentPosts(SITE.featuredPostCount)
const events = await getRecentEvents(SITE.featuredEventsCount)
---
<Layout class="max-w-3xl">
<PageHead slot="head" title="Home" />
<section class="rounded-lg">
<div class="flex flex-col space-y-1.5 p-6">
<h3 class="font-mono text-3xl leading-relaxed font-medium">
Software belongs to the <span
class="bg-primary text-primary-foreground pl-1"
>
people.
</span>
</h3>
<p class="prose text-muted-foreground mt-5">
We are a community of hackers, builders, and privacy advocates dedicated
to Free and Open Source Software.
</p>
<h3 class="mt-5">Who?</h3>
<p class="prose text-muted-foreground">
See our <a href="/members" class="link">members</a>.
</p>
<h3 class="mt-5">Where?</h3>
<p class="prose text-muted-foreground">
Our events happen in and around <a
href="https://osm.org/go/yniMvvONd-?way=98623861"
class="link">College of Engineering, Trivandrum</a
>.
</p>
<p class="prose text-muted-foreground mt-1 md:mt-0">
Join our <a class="link" href="https://fosscet.zulipchat.com"
>Zulip community</a
> to stay in the loop.
</p>
</div>
</section>
<section class="flex flex-col gap-y-4">
<h2 class="text-2xl font-medium">Events</h2>
<ul class="flex flex-col gap-y-4">
{
events.map((event) => (
<li>
<EventCard entry={event} />
</li>
))
}
</ul>
<div class="flex justify-center">
<Link
href="/events"
class={buttonVariants({ variant: 'ghost' }) + ' group'}
>
See all posts <span
class="ml-1.5 transition-transform group-hover:translate-x-1"
>→</span
>
</Link>
</div>
</section>
<section class="flex flex-col gap-y-4">
<h2 class="text-2xl font-medium">Blog posts</h2>
<ul class="flex flex-col gap-y-4">
{
blog.map((post) => (
<li>
<BlogCard entry={post} />
</li>
))
}
</ul>
<div class="flex justify-center">
<Link
href="/blog"
class={buttonVariants({ variant: 'ghost' }) + ' group'}
>
See all posts <span
class="ml-1.5 transition-transform group-hover:translate-x-1"
>→</span
>
</Link>
</div>
</section>
</Layout>
|