diff options
| author | Nikhil M Warrier <nikhilmw.dev@gmail.com> | 2026-03-03 09:19:21 +0530 |
|---|---|---|
| committer | Nikhil M Warrier <nikhilmw.dev@gmail.com> | 2026-03-03 09:19:21 +0530 |
| commit | e6dad1976a63a63af52c2bc5c9c568086028705d (patch) | |
| tree | 5a78c8c7ccd1283929fe501b57dfc6f90f14d098 | |
| parent | 2cfd3cb55f2a13403eac429111320ec07c8c796b (diff) | |
Update homepage and fonts
| -rw-r--r-- | public/fonts/0xProto/0xProto-Bold.woff2 | bin | 0 -> 56216 bytes | |||
| -rw-r--r-- | public/fonts/0xProto/0xProto-Italic.woff2 | bin | 0 -> 63004 bytes | |||
| -rw-r--r-- | public/fonts/0xProto/0xProto-Regular.woff2 | bin | 0 -> 56992 bytes | |||
| -rw-r--r-- | public/fonts/0xProto/LICENSE | 92 | ||||
| -rw-r--r-- | src/components/Header.astro | 2 | ||||
| -rw-r--r-- | src/consts.ts | 2 | ||||
| -rw-r--r-- | src/pages/index.astro | 63 | ||||
| -rw-r--r-- | src/styles/global.css | 29 | ||||
| -rw-r--r-- | src/styles/typography.css | 5 |
9 files changed, 158 insertions, 35 deletions
diff --git a/public/fonts/0xProto/0xProto-Bold.woff2 b/public/fonts/0xProto/0xProto-Bold.woff2 Binary files differnew file mode 100644 index 0000000..9201c73 --- /dev/null +++ b/public/fonts/0xProto/0xProto-Bold.woff2 diff --git a/public/fonts/0xProto/0xProto-Italic.woff2 b/public/fonts/0xProto/0xProto-Italic.woff2 Binary files differnew file mode 100644 index 0000000..267f9f7 --- /dev/null +++ b/public/fonts/0xProto/0xProto-Italic.woff2 diff --git a/public/fonts/0xProto/0xProto-Regular.woff2 b/public/fonts/0xProto/0xProto-Regular.woff2 Binary files differnew file mode 100644 index 0000000..0bfbb2b --- /dev/null +++ b/public/fonts/0xProto/0xProto-Regular.woff2 diff --git a/public/fonts/0xProto/LICENSE b/public/fonts/0xProto/LICENSE new file mode 100644 index 0000000..d61ab62 --- /dev/null +++ b/public/fonts/0xProto/LICENSE @@ -0,0 +1,92 @@ +Copyright (c) 2026, 0xType Project Authors (https://github.com/0xType) + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + +--- + +## SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1. Neither the Font Software nor any of its individual components, + in Original or Modified Versions, may be sold by itself. + +2. Original or Modified Versions of the Font Software may be bundled, + redistributed and/or sold with any software, provided that each copy + contains the above copyright notice and this license. These can be + included either as stand-alone text files, human-readable headers or + in the appropriate machine-readable metadata fields within text or + binary files as long as those fields can be easily viewed by the user. + +3. No Modified Version of the Font Software may use the Reserved Font + Name(s) unless explicit written permission is granted by the corresponding + Copyright Holder. This restriction only applies to the primary font name as + presented to the users. + +4. The name(s) of the Copyright Holder(s) or the Author(s) of the Font + Software shall not be used to promote, endorse or advertise any + Modified Version, except to acknowledge the contribution(s) of the + Copyright Holder(s) and the Author(s) or with their explicit written + permission. + +5. The Font Software, modified or unmodified, in part or in whole, + must be distributed entirely under this license, and must not be + distributed under any other license. The requirement for fonts to + remain under this license does not apply to any document created + using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/src/components/Header.astro b/src/components/Header.astro index ff7dafe..c8b06d1 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -13,7 +13,7 @@ import logo from '../../public/static/logo.svg' <Link href="/" class="flex shrink-0 items-center justify-center gap-3"> <Image src={logo} alt="Logo" class="size-5 sm:size-6" /> <span - class="hidden h-full text-lg leading-none font-medium min-[400px]:block" + class="hidden h-full font-mono text-lg leading-none font-medium min-[400px]:block" >{SITE.title}</span > </Link> diff --git a/src/consts.ts b/src/consts.ts index 58bb71e..15c6ad1 100644 --- a/src/consts.ts +++ b/src/consts.ts @@ -1,7 +1,7 @@ import type { IconMap, SocialLink, Site } from '@/types' export const SITE: Site = { - title: 'FOSS CET', + title: 'FOSSCET', description: "Don't just join a club; build one. We need architects, not just members", href: 'https://astro-erudite.vercel.app', diff --git a/src/pages/index.astro b/src/pages/index.astro index 9549a7c..c884146 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -6,7 +6,7 @@ import PageHead from '@/components/PageHead.astro' import { buttonVariants } from '@/components/ui/button' import { SITE } from '@/consts' import Layout from '@/layouts/Layout.astro' -import { getRecentPosts, getRecentEvents } from '@/lib/data-utils' +import { getRecentEvents, getRecentPosts } from '@/lib/data-utils' const blog = await getRecentPosts(SITE.featuredPostCount) const events = await getRecentEvents(SITE.featuredEventsCount) @@ -16,55 +16,58 @@ const events = await getRecentEvents(SITE.featuredEventsCount) <PageHead slot="head" title="Home" /> <section class="rounded-lg border"> <div class="flex flex-col space-y-1.5 p-6"> - <h3 class="text-3xl leading-none font-medium">er·u·dite</h3> - <p class="text-muted-foreground text-sm"> - /ˈer(y)əˌdīt/ • <span class="font-medium">adjective</span> + <h3 class="font-mono text-3xl leading-none font-medium"> + Software belongs to the people. + </h3> + <p class="text-muted-foreground mt-5"> + We are a community of hackers, builders, and privacy advocates dedicated + to Free and Open Source Software. </p> </div> </section> <section class="flex flex-col gap-y-4"> - <h2 class="text-2xl font-medium">Latest events</h2> + <h2 class="text-2xl font-medium">Events</h2> <ul class="flex flex-col gap-y-4"> { - events.map((event) => ( - <li> - <EventCard entry={event} /> - </li> - )) + 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 - > + 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">Latest posts</h2> + <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> - )) + 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 - > + 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> diff --git a/src/styles/global.css b/src/styles/global.css index 719f8dc..d7dffa3 100644 --- a/src/styles/global.css +++ b/src/styles/global.css @@ -7,7 +7,7 @@ Geist, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; --font-mono: - Geist Mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, + '0xProto', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace; --color-background: var(--background); @@ -42,6 +42,33 @@ font-display: swap; } +/* Regular */ +@font-face { + font-family: '0xProto'; + src: url('/fonts/0xProto/0xProto-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; +} + +/* Bold */ +@font-face { + font-family: '0xProto'; + src: url('/fonts/0xProto/0xProto-Bold.woff2') format('woff2'); + font-weight: 700; + font-style: normal; + font-display: swap; +} + +/* Italic */ +@font-face { + font-family: '0xProto'; + src: url('/fonts/0xProto/0xProto-Italic.woff2') format('woff2'); + font-weight: 400; + font-style: italic; + font-display: swap; +} + :root { --background: oklch(1 0 0); --foreground: oklch(0.145 0 0); diff --git a/src/styles/typography.css b/src/styles/typography.css index e8f6e14..6667606 100644 --- a/src/styles/typography.css +++ b/src/styles/typography.css @@ -18,6 +18,7 @@ h5, h6 { @apply text-balance; + @apply font-mono; } p { @@ -134,8 +135,8 @@ } :where(img, video, figure, .expressive-code):not( - :where(.not-prose, .not-prose *) - ) { + :where(.not-prose, .not-prose *) + ) { @apply mx-auto my-6; } |
