Skip to content

Commit bb0ae45

Browse files
committed
chore: upgrade portfolio to Astro 7
1 parent c21d52f commit bb0ae45

12 files changed

Lines changed: 182 additions & 172 deletions

File tree

.agents/memory/MEMORY.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
- [Architecture](architecture.md) — Astro 6 static export, React 19 hydrated portfolio island, GitHub GraphQL/REST build-time repository data, terminal UI theme, SEO/analytics, and shared data layer design
1+
- [Architecture](architecture.md) — Astro 7 static export, React 19 hydrated portfolio island, GitHub GraphQL/REST build-time repository data, terminal UI theme, SEO/analytics, and shared data layer design

.agents/memory/architecture.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: Portfolio Site Architecture
3-
description: Astro 6 static export, React 19 hydrated portfolio island, GitHub GraphQL/REST build-time repository data, terminal UI theme, SEO/analytics strategy
3+
description: Astro 7 static export, React 19 hydrated portfolio island, GitHub GraphQL/REST build-time repository data, terminal UI theme, SEO/analytics strategy
44
type: project
55
---
66

@@ -9,6 +9,7 @@ type: project
99
- **Astro pages/layouts**: `src/pages/index.astro` fetches repository data at build time and renders the React portfolio island with `client:load`; `src/pages/resume.astro` renders the print-optimized resume route.
1010
- **Hydrated React island**: `src/components/Portfolio.tsx` owns the interactive homepage UI, scroll/reveal effects, project workbench, contact actions, and terminal easter egg.
1111
- **Static export**: `astro.config.ts` sets `output: "static"` and `outDir: "out"`; `main-release.yml` uploads that artifact for GitHub Pages.
12+
- **Astro 7 fit**: The repo benefits from the Rust `.astro` compiler, Vite 8/Rolldown path, queued rendering, and background dev server commands while staying static. Do not add `src/fetch.ts`, route cache providers, or SSR adapters unless hosting changes away from static GitHub Pages.
1213

1314
**Why:** Build-time data fetching keeps the deployed site as static HTML/CSS/JS while preserving live GitHub profile/repository data when CI provides `GITHUB_TOKEN`.
1415

AGENTS.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# jonathanperis.github.io — AGENTS Guide
22

3-
Standardized repository instructions for agent harnesses working on this Astro 6 and React 19 static portfolio, deployed to GitHub Pages.
3+
Standardized repository instructions for agent harnesses working on this Astro 7 and React 19 static portfolio, deployed to GitHub Pages.
44

55
**Live:** https://jonathanperis.github.io/
66

@@ -10,7 +10,7 @@ Standardized repository instructions for agent harnesses working on this Astro 6
1010

1111
| Technology | Purpose |
1212
|-----------|---------|
13-
| Astro 6 | Static site build and GitHub Pages export |
13+
| Astro 7 | Static site build and GitHub Pages export; Rust compiler, Vite 8, queued rendering, and background dev server support |
1414
| React 19 | Hydrated interactive portfolio UI |
1515
| TypeScript 6 | Strict type checking through `astro/tsconfigs/strict` |
1616
| Tailwind CSS 4 | Custom low-glare terminal-style design system via `@tailwindcss/vite` |
@@ -25,6 +25,10 @@ Standardized repository instructions for agent harnesses working on this Astro 6
2525
```sh
2626
bun install # install dependencies
2727
bun run dev # Astro dev server on :4321
28+
bun run dev:bg # Astro 7 background dev server for agent-assisted work
29+
bun run dev:status # check background dev server status
30+
bun run dev:logs # read background dev server logs
31+
bun run dev:stop # stop the background dev server
2832
bun run lint # astro check
2933
bun run build # static export to ./out
3034
bun run preview # preview the built ./out artifact
@@ -63,6 +67,7 @@ Data layer
6367
## Key Patterns
6468

6569
- **Static export**`astro.config.ts` sets `outDir: 'out'`; GitHub Pages deploys the generated artifact.
70+
- **Astro 7 fit** — This repo adopts Astro 7 for the Rust compiler, Vite 8/Rolldown path, queued rendering, and AI-friendly background dev server. It intentionally does not add `src/fetch.ts`, route cache providers, or SSR adapters while hosting remains static GitHub Pages.
6671
- **Build-time GitHub data**`src/pages/index.astro` calls `fetchRepos()` during `bun run build`; the deployed browser page does not call GitHub APIs.
6772
- **Pinned + ledger model**`src/lib/github.ts` fetches GitHub profile pinned repos and owned public non-fork repos, excludes metadata repos, preserves pinned order, and removes pinned repos from the lower ledger.
6873
- **Pages URL enrichment** — REST `GET /repos/jonathanperis/{repo}/pages` provides `pagesUrl`; standard `https://jonathanperis.github.io/<repo>/` homepage URLs are fallback Pages links.

README.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ The site includes a print-optimized `/resume` route, SEO metadata, JSON-LD, GA4
1818

1919
| Technology | Version / source | Purpose |
2020
|-----------|------------------|---------|
21-
| Astro | `^6` | Static site build and GitHub Pages export |
21+
| Astro | `^7` | Static site build and GitHub Pages export, Rust compiler, Vite 8, and agent-friendly dev server support |
2222
| React | `^19` | Interactive portfolio UI (`client:load`) |
2323
| TypeScript | `^6` with `astro/tsconfigs/strict` | Type safety |
2424
| Tailwind CSS | `^4` via `@tailwindcss/vite` | Styling system |
@@ -37,6 +37,7 @@ The site includes a print-optimized `/resume` route, SEO metadata, JSON-LD, GA4
3737
- Google Analytics 4 loaded only when `PUBLIC_GA_ID` is set
3838
- Konami-code terminal easter egg
3939
- Static export deployed to GitHub Pages from `out/`
40+
- Astro 7 background dev server scripts for agent-assisted local inspection
4041

4142
## Getting Started
4243

@@ -57,6 +58,15 @@ bun run dev
5758

5859
Open <http://localhost:4321>.
5960

61+
For agent-assisted work, Astro 7 can run the dev server in the background and expose status/log subcommands:
62+
63+
```bash
64+
bun run dev:bg
65+
bun run dev:status
66+
bun run dev:logs
67+
bun run dev:stop
68+
```
69+
6070
To build with live repository data instead of fallback data:
6171

6272
```bash

0 commit comments

Comments
 (0)