Skip to content

Commit a94b334

Browse files
committed
Update web dependencies
1 parent c383340 commit a94b334

File tree

7 files changed

+1688
-650
lines changed

7 files changed

+1688
-650
lines changed

badgers-web/package.json

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,18 @@
1616
"@vercel/analytics": "^1.0.1",
1717
"autoprefixer": "10.4.14",
1818
"crates.io": "^2.2.4",
19-
"eslint": "8.40.0",
20-
"eslint-config-next": "13.4.2",
21-
"next": "^13.4.3",
19+
"eslint": "8.57.0",
20+
"eslint-config-next": "^14.2.3",
21+
"next": "^14.2.3",
2222
"postcss": "8.4.23",
23-
"react": "18.2.0",
24-
"react-dom": "18.2.0",
23+
"react": "^18.3.1",
24+
"react-dom": "^18.3.1",
2525
"tailwindcss": "3.3.2",
2626
"typescript": "5.0.4"
2727
},
2828
"devDependencies": {
2929
"@octokit/types": "^9.2.2",
30-
"encoding": "^0.1.13"
30+
"encoding": "^0.1.13",
31+
"sharp": "^0.33.3"
3132
}
3233
}

badgers-web/src/app/layout.tsx

Lines changed: 145 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -1,78 +1,161 @@
1-
import { Inter } from 'next/font/google'
2-
import Image from 'next/image'
3-
import { Analytics } from '@vercel/analytics/react'
1+
import { Inter } from "next/font/google";
2+
import Image from "next/image";
3+
import { Analytics } from "@vercel/analytics/react";
44

5-
import Logo from './logo.png'
5+
import Logo from "./logo.png";
66

7-
import './globals.css'
8-
import Link from 'next/link'
7+
import "./globals.css";
8+
import Link from "next/link";
9+
import { Metadata, Viewport } from "next";
910

10-
const inter = Inter({ subsets: ['latin'] })
11+
const inter = Inter({ subsets: ["latin"] });
1112

12-
export const metadata = {
13-
title: 'SpaceBadgers',
14-
applicationName: 'SpaceBadgers',
15-
description: 'Fast and clean SVG badges',
16-
keywords: ['badge', 'badges', 'badgers', 'spacebadgers', 'badge-generator', 'svg',],
17-
colorScheme: 'light',
18-
authors: [{ name: 'Marco Quinten', url: 'https://github.com/splittydev' }],
19-
creator: 'Marco Quinten',
13+
export const metadata: Metadata = {
14+
title: "SpaceBadgers",
15+
applicationName: "SpaceBadgers",
16+
description: "Fast and clean SVG badges",
17+
keywords: [
18+
"badge",
19+
"badges",
20+
"badgers",
21+
"spacebadgers",
22+
"badge-generator",
23+
"svg",
24+
],
25+
authors: [{ name: "Marco Quinten", url: "https://github.com/splittydev" }],
26+
creator: "Marco Quinten",
27+
metadataBase: new URL(`${process.env.NEXT_PUBLIC_WEB_PROTO!}://${process.env.NEXT_PUBLIC_WEB_HOST!}`),
28+
}
29+
30+
export const viewport: Viewport = {
31+
colorScheme: "light",
2032
}
2133

2234
export default function RootLayout({
2335
children,
2436
}: {
25-
children: React.ReactNode
37+
children: React.ReactNode;
2638
}) {
2739
return (
2840
<html lang="en">
29-
<body className={`${inter.className} w-full flex flex-col items-center`}>
30-
<div className="flex min-h-screen w-full xl:w-10/12 2xl:w-8/12 flex-col items-center py-4 md:p-16 gap-8">
31-
<header className="flex flex-col gap-4">
32-
<Link href="/" className="flex gap-4 select-none">
33-
<div className="max-w-[64px] max-h-[64px] rounded-full shadow-md">
34-
<Image placeholder='blur' priority alt="badgers.space Logo" src={Logo} width={256} height={256} />
35-
</div>
36-
<h1 className="text-6xl font-bold text-center">
37-
Badge
38-
<span className="text-orange-500">rs</span>
39-
</h1>
40-
</Link>
41-
<div className="flex flex-col items-center justify-center">
42-
Fast and clean SVG badges for your projects
43-
</div>
44-
</header>
45-
<div className="flex flex-col gap-8 w-full">
46-
{children}
47-
<footer className="flex flex-col gap-6 w-full">
48-
49-
{/* Created by and link section */}
50-
<section className="flex flex-wrap justify-between gap-2 bg-gray-100 mx-4 px-4 py-2 rounded-md">
51-
<div className="text-sm">
52-
<span className="text-gray-600">
53-
Made with <span className="text-rose-500"></span> by <a target="_blank" className="text-gray-500 hover:text-amber-600" href="https://github.com/SplittyDev">Marco Quinten</a>.
54-
</span>
55-
</div>
56-
<div className="flex gap-4 text-sm">
57-
<a target="_blank" className="text-gray-500 hover:text-amber-600" href="https://github.com/splittydev/spacebadgers">GitHub</a>
58-
</div>
59-
</section>
60-
61-
{/* Informational Text */}
62-
<section className="flex flex-col gap-4 px-6 text-sm text-justify text-gray-700">
63-
<h2 className="text-md text-gray-600 font-bold">About SpaceBadgers</h2>
64-
<p>Hey there, welcome to SpaceBadgers! If you&#x27;re wondering who we are and what we do, let us fill you in. We&#x27;re an open-source project with a passion for delivering top-notch SVG badges that are as speedy as they are stylish.</p>
65-
<p>You see, we noticed that developers and project maintainers like you needed a way to display key information &#x2013; think build status, version, download counts &#x2013; in a way that&#x27;s quick and easy to integrate. That&#x27;s where we come in.</p>
66-
<p>Under the hood, we&#x27;re powered by a Rust-based core library <a className="text-xs text-gray-700 hover:text-orange-600" href="https://crates.io/crates/spacebadgers" target="_blank">(crates.io)</a> and a Cloudflare worker. This dynamic duo ensures that we&#x27;re always delivering badges with excellent performance, straight from the edge. And speaking of integration, we&#x27;ve made it our mission to ensure smooth sailing when it comes to working with third-party services, courtesy of our NextJS-based API routes running on Vercel edge infrastructure.</p>
67-
<p>What makes us different? We&#x27;re glad you asked! Unlike traditional image-based badges, we&#x27;re all about SVGs. They&#x27;re scalable, high-quality, and we serve them in a minified and compressed form for optimal delivery.</p>
68-
<p>So that&#x27;s us, SpaceBadgers, in a nutshell. We&#x27;re here to provide a seamless, efficient badge generation process. If that sounds like your cup of tea, why not join the open-source community using SpaceBadgers today? We&#x27;d be thrilled to have you onboard!</p>
69-
<p>For more information, take a look at our <a className="text-gray-700 hover:text-orange-600 underline underline-offset-2" href="https://github.com/splittydev/spacebadgers" target="_blank">GitHub</a>!</p>
70-
</section>
71-
</footer>
72-
</div>
41+
<body className={`${inter.className} w-full flex flex-col items-center`}>
42+
<div className="flex min-h-screen w-full xl:w-10/12 2xl:w-8/12 flex-col items-center py-4 md:p-16 gap-8">
43+
<header className="flex flex-col gap-4">
44+
<Link href="/" className="flex gap-4 select-none">
45+
<div className="max-w-[64px] max-h-[64px] rounded-full shadow-md">
46+
<Image
47+
placeholder="blur"
48+
priority
49+
alt="badgers.space Logo"
50+
src={Logo}
51+
width={256}
52+
height={256}
53+
/>
54+
</div>
55+
<h1 className="text-6xl font-bold text-center">
56+
Badge
57+
<span className="text-orange-500">rs</span>
58+
</h1>
59+
</Link>
60+
<div className="flex flex-col items-center justify-center">
61+
Fast and clean SVG badges for your projects
7362
</div>
74-
<Analytics />
75-
</body>
63+
</header>
64+
<div className="flex flex-col gap-8 w-full">
65+
{children}
66+
<footer className="flex flex-col gap-6 w-full">
67+
{/* Created by and link section */}
68+
<section className="flex flex-wrap justify-between gap-2 bg-gray-100 mx-4 px-4 py-2 rounded-md">
69+
<div className="text-sm">
70+
<span className="text-gray-600">
71+
Made with <span className="text-rose-500"></span> by{" "}
72+
<a
73+
target="_blank"
74+
className="text-gray-500 hover:text-amber-600"
75+
href="https://github.com/SplittyDev"
76+
>
77+
Marco Quinten
78+
</a>
79+
.
80+
</span>
81+
</div>
82+
<div className="flex gap-4 text-sm">
83+
<a
84+
target="_blank"
85+
className="text-gray-500 hover:text-amber-600"
86+
href="https://github.com/splittydev/spacebadgers"
87+
>
88+
GitHub
89+
</a>
90+
</div>
91+
</section>
92+
93+
{/* Informational Text */}
94+
<section className="flex flex-col gap-4 px-6 text-sm text-justify text-gray-700">
95+
<h2 className="text-md text-gray-600 font-bold">
96+
About SpaceBadgers
97+
</h2>
98+
<p>
99+
Hey there, welcome to SpaceBadgers! If you&#x27;re wondering
100+
who we are and what we do, let us fill you in. We&#x27;re an
101+
open-source project with a passion for delivering top-notch
102+
SVG badges that are as speedy as they are stylish.
103+
</p>
104+
<p>
105+
You see, we noticed that developers and project maintainers
106+
like you needed a way to display key information &#x2013;
107+
think build status, version, download counts &#x2013; in a way
108+
that&#x27;s quick and easy to integrate. That&#x27;s where we
109+
come in.
110+
</p>
111+
<p>
112+
Under the hood, we&#x27;re powered by a Rust-based core
113+
library{" "}
114+
<a
115+
className="text-xs text-gray-700 hover:text-orange-600"
116+
href="https://crates.io/crates/spacebadgers"
117+
target="_blank"
118+
>
119+
(crates.io)
120+
</a>{" "}
121+
and a Cloudflare worker. This dynamic duo ensures that
122+
we&#x27;re always delivering badges with excellent
123+
performance, straight from the edge. And speaking of
124+
integration, we&#x27;ve made it our mission to ensure smooth
125+
sailing when it comes to working with third-party services,
126+
courtesy of our NextJS-based API routes running on Vercel edge
127+
infrastructure.
128+
</p>
129+
<p>
130+
What makes us different? We&#x27;re glad you asked! Unlike
131+
traditional image-based badges, we&#x27;re all about SVGs.
132+
They&#x27;re scalable, high-quality, and we serve them in a
133+
minified and compressed form for optimal delivery.
134+
</p>
135+
<p>
136+
So that&#x27;s us, SpaceBadgers, in a nutshell. We&#x27;re
137+
here to provide a seamless, efficient badge generation
138+
process. If that sounds like your cup of tea, why not join the
139+
open-source community using SpaceBadgers today? We&#x27;d be
140+
thrilled to have you onboard!
141+
</p>
142+
<p>
143+
For more information, take a look at our{" "}
144+
<a
145+
className="text-gray-700 hover:text-orange-600 underline underline-offset-2"
146+
href="https://github.com/splittydev/spacebadgers"
147+
target="_blank"
148+
>
149+
GitHub
150+
</a>
151+
!
152+
</p>
153+
</section>
154+
</footer>
155+
</div>
156+
</div>
157+
<Analytics />
158+
</body>
76159
</html>
77160
)
78161
}

0 commit comments

Comments
 (0)