Skip to content

Commit

Permalink
add a separate page for each readme
Browse files Browse the repository at this point in the history
  • Loading branch information
oliverlevay committed Feb 3, 2025
1 parent 98c1760 commit 3b6d31b
Show file tree
Hide file tree
Showing 7 changed files with 61 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ CREATE TABLE "readme" (
"title" TEXT NOT NULL,
"url" TEXT NOT NULL,
"created_at" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMPTZ(6) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMPTZ(6) NOT NULL,
"year" INTEGER NOT NULL,
"number" INTEGER NOT NULL,
"published_at" TIMESTAMPTZ(6),

CONSTRAINT "readme_pkey" PRIMARY KEY ("id")
Expand Down
2 changes: 2 additions & 0 deletions src/database/prisma/schema.prisma
Original file line number Diff line number Diff line change
Expand Up @@ -1133,6 +1133,8 @@ model Readme {
url String
createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz(6)
updatedAt DateTime @map("updated_at") @db.Timestamptz(6)
year Int
number Int
publishedAt DateTime? @map("published_at") @db.Timestamptz(6)
@@map("readme")
Expand Down
2 changes: 2 additions & 0 deletions src/database/schema.zmodel
Original file line number Diff line number Diff line change
Expand Up @@ -1237,6 +1237,8 @@ model Readme {
url String
createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz(6)
updatedAt DateTime @map("updated_at") @db.Timestamptz(6)
year Int
number Int
publishedAt DateTime? @map("published_at") @db.Timestamptz(6)

@@map("readme")
Expand Down
28 changes: 28 additions & 0 deletions src/database/seed/.snaplet/dataModel.json
Original file line number Diff line number Diff line change
Expand Up @@ -8403,6 +8403,34 @@
"isId": false,
"maxLength": null
},
{
"id": "public.readme.year",
"name": "year",
"columnName": "year",
"type": "int4",
"isRequired": true,
"kind": "scalar",
"isList": false,
"isGenerated": false,
"sequence": false,
"hasDefaultValue": false,
"isId": false,
"maxLength": null
},
{
"id": "public.readme.number",
"name": "number",
"columnName": "number",
"type": "int4",
"isRequired": true,
"kind": "scalar",
"isList": false,
"isGenerated": false,
"sequence": false,
"hasDefaultValue": false,
"isId": false,
"maxLength": null
},
{
"id": "public.readme.published_at",
"name": "published_at",
Expand Down
2 changes: 2 additions & 0 deletions src/database/seed/data.ts
Original file line number Diff line number Diff line change
Expand Up @@ -310,6 +310,8 @@ export const models: SeedClientOptions["models"] = {
title: `README #${faker.number.int({ min: 1, max: 5 })}`,
url: "https://publuu.com/flip-book/782891/1741481/page/1?embed",
publishedAt: () => faker.date.past(),
year: () => faker.date.recent().getFullYear(),
number: () => faker.number.int({ min: 1, max: 5 }),
},
},
};
17 changes: 17 additions & 0 deletions src/routes/(app)/readme/[year]/[number]/+page.server.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import type { PageServerLoad } from "./$types";
import { error } from "@sveltejs/kit";

export const load: PageServerLoad = async ({ locals, params }) => {
const prisma = locals.prisma;
const { year, number } = params;
const readme = await prisma.readme.findFirst({
where: {
year: parseInt(year),
number: parseInt(number),
},
});
if (!readme) {
error(404, "README not found");
}
return { readme };
};
7 changes: 7 additions & 0 deletions src/routes/(app)/readme/[year]/[number]/+page.svelte
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<script lang="ts">
import type { PageData } from "./$types";
import Readme from "$lib/components/home/Readme.svelte";
export let data: PageData;
</script>

<Readme readme={data.readme} />

0 comments on commit 3b6d31b

Please sign in to comment.