website

#astro#js#html#css

git clone https://git.pyrossh.dev/website

木 Personal website of pyrossh. Built with astrojs, shiki, vite.


b8aaafapyrossh 2026-07-07T11:49:09+05:30
feat: add cv page worker
packages/workers/cv/package.json ADDED
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "@pyrossh/cv",
3
+ "version": "0.0.0",
4
+ "private": true,
5
+ "type": "module",
6
+ "main": "src/index.tsx",
7
+ "types": "src/index.tsx",
8
+ "dependencies": {
9
+ "@pyrossh/config": "workspace:*",
10
+ "@pyrossh/ui": "workspace:*"
11
+ }
12
+ }
packages/workers/cv/src/index.tsx ADDED
@@ -0,0 +1,28 @@
1
+ import { Layout } from "@pyrossh/ui";
2
+ import { SITE_URL } from "@pyrossh/config";
3
+
4
+ export default {
5
+ async fetch(request: Request): Promise<Response> {
6
+ return new Response(
7
+ <Layout title="Curriculum Vitae" description="Peter John CV" request={request}>
8
+ <div>
9
+ <h1 style="display:flex;align-items:flex-start;font-weight:800;font-size:2rem;margin-bottom:1rem">
10
+ Curriculum Vitae
11
+ <a
12
+ href="/assets/pdfs/resume.pdf"
13
+ target="_blank"
14
+ rel="noopener noreferrer"
15
+ style="margin-left:0.4rem;margin-top:0.8rem;color:var(--color-link)"
16
+ >
17
+
18
+ </a>
19
+ </h1>
20
+ <div style="border:1px solid black">
21
+ <img src="/assets/pdfs/resume.svg" alt="Resume" style="width:100%" />
22
+ </div>
23
+ </div>
24
+ </Layout>,
25
+ { headers: { "content-type": "text/html" } },
26
+ );
27
+ },
28
+ };
packages/workers/cv/tsconfig.json ADDED
@@ -0,0 +1,4 @@
1
+ {
2
+ "extends": "../../../tsconfig.base.json",
3
+ "include": ["src"]
4
+ }
packages/workers/cv/wrangler.jsonc ADDED
@@ -0,0 +1,8 @@
1
+ {
2
+ "name": "pyrossh-cv",
3
+ "main": "src/index.tsx",
4
+ "compatibility_date": "2026-07-07",
5
+ "compatibility_flags": ["nodejs_compat"],
6
+ "workers_dev": false,
7
+ "routes": [{ "pattern": "pyrossh.dev/cv", "custom_domain": true }],
8
+ }