From 25f9f0b644e7a96dddeacc69d6aae5f3d2fa1cfd Mon Sep 17 00:00:00 2001 From: Patrick Raedler Date: Fri, 1 Nov 2024 12:08:32 +0100 Subject: [PATCH 01/11] feat(public/favicon): add sh icon --- public/favicon.ico | Bin 15406 -> 15086 bytes 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 public/favicon.ico diff --git a/public/favicon.ico b/public/favicon.ico old mode 100644 new mode 100755 index 60c702aac13409c82c4040f8fee9603eb84aa10c..a3cc0cf7deff7c2c85200e23ef488da91cb67a60 GIT binary patch literal 15086 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 literal 15406 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 A#Q*>R From 698d2ab8d1c14814e3c59d4d5c250b1c5525f420 Mon Sep 17 00:00:00 2001 From: Patrick Raedler Date: Fri, 1 Nov 2024 12:08:44 +0100 Subject: [PATCH 02/11] refactor(admin/layout): add basic metadata --- src/app/admin/layout.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/app/admin/layout.tsx b/src/app/admin/layout.tsx index b8bc835..48f3e9e 100644 --- a/src/app/admin/layout.tsx +++ b/src/app/admin/layout.tsx @@ -34,6 +34,11 @@ interface LayoutInterface { unauthenticated: React.ReactNode } +export const metadata = { + title: "Admin", + description: "Admin portal", +} + export default async function Layout({ authenticated, unauthenticated, From 4967743f55ee0a48fd54c9d79e68efff5ae6acbd Mon Sep 17 00:00:00 2001 From: Patrick Raedler Date: Fri, 1 Nov 2024 12:08:53 +0100 Subject: [PATCH 03/11] refactor(documents/privacy-policy): add metadata --- src/app/documents/legal/privacy-policy/page.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/app/documents/legal/privacy-policy/page.tsx b/src/app/documents/legal/privacy-policy/page.tsx index 6630024..54b4cc2 100644 --- a/src/app/documents/legal/privacy-policy/page.tsx +++ b/src/app/documents/legal/privacy-policy/page.tsx @@ -1,3 +1,8 @@ +export const metadata = { + title: "Privacy Policy", + description: "Privacy Policy guidelines by Schrödinger Hat", +} + export default function PrivacyPolicyPage() { return ( <> From 22bcf1d7aeef9e26b294ccdf94111ecad68c7293 Mon Sep 17 00:00:00 2001 From: Patrick Raedler Date: Fri, 1 Nov 2024 12:09:03 +0100 Subject: [PATCH 04/11] refactor(documents/statute): add basic metadata --- src/app/documents/legal/statute/page.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/app/documents/legal/statute/page.tsx b/src/app/documents/legal/statute/page.tsx index 4721188..ba13a34 100644 --- a/src/app/documents/legal/statute/page.tsx +++ b/src/app/documents/legal/statute/page.tsx @@ -1,3 +1,8 @@ +export const metadata = { + title: "Statute", + description: "Statute guidelines by Schrödinger Hat", +} + export default function StatutePage() { return ( <> From 63469d53b179d4a6717fe0e4fb8cd2b0870caf96 Mon Sep 17 00:00:00 2001 From: Patrick Raedler Date: Fri, 1 Nov 2024 12:09:13 +0100 Subject: [PATCH 05/11] refactor(documents/terms-of-service): add basic metadata --- src/app/documents/legal/terms-of-service/page.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/app/documents/legal/terms-of-service/page.tsx b/src/app/documents/legal/terms-of-service/page.tsx index aab9e98..61ebb4f 100644 --- a/src/app/documents/legal/terms-of-service/page.tsx +++ b/src/app/documents/legal/terms-of-service/page.tsx @@ -1,3 +1,8 @@ +export const metadata = { + title: "Terms of Service", + description: "Terms of Service guidelines by Schrödinger Hat", +} + export default function TermsOfServicePage() { return ( <> From 454c5cea9b41fdc8aa909b3638c45e7b9960b3a4 Mon Sep 17 00:00:00 2001 From: Patrick Raedler Date: Fri, 1 Nov 2024 12:09:21 +0100 Subject: [PATCH 06/11] refactor(documents): add basic metadata --- src/app/documents/layout.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/app/documents/layout.tsx b/src/app/documents/layout.tsx index aa8e205..416883a 100644 --- a/src/app/documents/layout.tsx +++ b/src/app/documents/layout.tsx @@ -3,6 +3,11 @@ import Link from "next/link" import logo from "@/images/logo-white.svg" +export const metadata = { + title: "Documents", + description: "Legal documents regarding Peoplez and Schrödinger Hat", +} + export default function LegalLayout({ children, }: { From ae2d0be69b6d8a023d3ecd0fb0119699466b0a8f Mon Sep 17 00:00:00 2001 From: Patrick Raedler Date: Fri, 1 Nov 2024 12:09:30 +0100 Subject: [PATCH 07/11] refactor(members/authenticated): add basic metadata --- src/app/members/@authenticated/page.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/app/members/@authenticated/page.tsx b/src/app/members/@authenticated/page.tsx index c02e78f..aaae755 100644 --- a/src/app/members/@authenticated/page.tsx +++ b/src/app/members/@authenticated/page.tsx @@ -18,6 +18,11 @@ function getData(userId: string | undefined) { }) } +export const metadata = { + title: "Welcome!", + description: "Welcome to the Peoplez portal", +} + export default async function MembershipPortalHomePage() { const session = await getServerAuthSession() const membership = await getData(session?.user.id) From a81e3e6d11933016e7878120f3f0787e7b454964 Mon Sep 17 00:00:00 2001 From: Patrick Raedler Date: Fri, 1 Nov 2024 12:09:46 +0100 Subject: [PATCH 08/11] refactor(members/layout): add basic metadata --- src/app/members/layout.tsx | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/app/members/layout.tsx b/src/app/members/layout.tsx index 4b21e46..3d8730c 100644 --- a/src/app/members/layout.tsx +++ b/src/app/members/layout.tsx @@ -21,9 +21,8 @@ import { usernameToInitials } from "@/lib/utils" import { getServerAuthSession } from "@/server/auth" export const metadata = { - description: "Generated by create-t3-app", - icons: [{ rel: "icon", url: "/favicon.ico" }], - title: "Create T3 App", + title: "Members", + description: "Everything related membership status", } interface LayoutInterface { From 5418aba3b3610d4d41b122203d394d33fbf2850a Mon Sep 17 00:00:00 2001 From: Patrick Raedler Date: Fri, 1 Nov 2024 12:10:22 +0100 Subject: [PATCH 09/11] refactor(app/signup): add basic metadata --- src/app/signup/page.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/app/signup/page.tsx b/src/app/signup/page.tsx index 9cb6a19..f3815f9 100644 --- a/src/app/signup/page.tsx +++ b/src/app/signup/page.tsx @@ -1,6 +1,11 @@ import SignupForm from "@/app/signup/form" import { db } from "@/services/db" +export const metadata = { + title: "Sign Up", + description: "Sign up for a membership", +} + function getData() { return db.membershipTemplate.findMany({ orderBy: [ From 1e6e1c6dd1c52a8ea6ec2a5018964546ced8b857 Mon Sep 17 00:00:00 2001 From: Patrick Raedler Date: Fri, 1 Nov 2024 12:11:09 +0100 Subject: [PATCH 10/11] feat(app/layout): add general metadata --- src/app/layout.tsx | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 220b340..5e7969c 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -9,10 +9,35 @@ const inter = Inter({ variable: "--font-sans", }) +const BASIC_METADATA = { + NAME: "Peoplez", + DESCRIPTION: + "Peoplez is an open-source, self-hosted organisation management software that allows you to manage basic needs of your nonprofit organisation", + URL: "https://peoplez.schroedinger-hat.org", +} + export const metadata = { - description: "Generated by create-t3-app", + title: { default: "Homepage", template: `%s | ${BASIC_METADATA.NAME}` }, + description: BASIC_METADATA.DESCRIPTION, icons: [{ rel: "icon", url: "/favicon.ico" }], - title: "Create T3 App", + openGraph: { + // images: "Needs to be added" + description: BASIC_METADATA.DESCRIPTION, + siteName: BASIC_METADATA.NAME, + title: BASIC_METADATA.NAME, + type: "website", + url: BASIC_METADATA.URL, + }, + twitter: { + card: "summary_large_image", + creator: "@schrodinger_hat", + description: BASIC_METADATA.DESCRIPTION, + site: BASIC_METADATA.URL, + // images: { + // url: "http://needs-to-be-added.png", + // alt: "Schroedinger Hat Logo", + // }, + }, } interface LayoutInterface { From 9dd1165433f53c207d9a8f7ed9a916e020f0eae9 Mon Sep 17 00:00:00 2001 From: Patrick Raedler Date: Fri, 1 Nov 2024 12:11:19 +0100 Subject: [PATCH 11/11] refactor(app/page): add basic metadata --- src/app/page.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/app/page.tsx b/src/app/page.tsx index 4313ff9..4c376a2 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -3,6 +3,11 @@ import { redirect, RedirectType } from "next/navigation" import { DevPage } from "@/app/devPage" import { inDevEnvironment } from "@/lib/envs" +export const metadata = { + title: "Homepage", + description: "Main page of the website.", +} + export default async function HomePage() { if (inDevEnvironment) return else redirect("/members", RedirectType.replace)