diff --git a/README.md b/README.md index 2b5c1263..489a7365 100644 --- a/README.md +++ b/README.md @@ -27,12 +27,10 @@ npm run deploy # build + push out/ to master (GitHub mirror) ## How it deploys -`npm run deploy` runs `predeploy` (build) then pushes the `out/` directory to `master` via `gh-pages`. That's what feeds the GitHub Pages backup at lerko96.com. +`npm run deploy` runs `predeploy` (build) then pushes the `out/` directory to `master` via `gh-pages`. That's what feeds the GitHub Pages backup mirror. `postbuild` drops `out/.nojekyll` so GitHub Pages doesn't ignore `_next/` assets. -Custom domain is in `public/CNAME` — gets copied into `out/` on build. - --- ## Project layout @@ -51,8 +49,7 @@ src/ data/ projects.ts # all projects, featured + archive split services.ts # homelab services with categories -public/ - CNAME # www.lerko96.com +public/ # static assets copied into out/ on build ``` > Tailwind v4 is CSS-first — no `tailwind.config.ts`. All custom tokens live in `globals.css` under `@theme {}`. diff --git a/src/app/archive/page.tsx b/src/app/archive/page.tsx index 9fd15070..13e5848b 100644 --- a/src/app/archive/page.tsx +++ b/src/app/archive/page.tsx @@ -1,4 +1,5 @@ import type { Metadata } from "next"; +import Widget from "@/components/Widget"; import { archiveProjects } from "@/data/projects"; export const metadata: Metadata = { @@ -9,51 +10,64 @@ export const metadata: Metadata = { export default function ArchivePage() { return ( <> -
- Archive -
-- Experiments, browser extensions, and bootcamp projects. Kept here for context — not representative of current work. +
+ Experiments, browser extensions, and bootcamp projects. Kept here for context — not + representative of current work.
- {project.description} -
- -+ {project.description} +
+- lerkolabs -
-- Personal infrastructure environment for learning, self-hosting, and operational practice. - Running 24/7 on production-grade hardware with real network segmentation, SSO, - monitoring, and IaC-style documentation. +
+ Personal infrastructure environment for learning, self-hosting, and operational + practice. Running 24/7 on production-grade hardware with real network segmentation, + SSO, monitoring, and IaC-style documentation.
{label}
-{value}
++ {label} +
+{value}
- Default deny inter-VLAN policy. Each VLAN has explicit firewall rules for what it can reach. -
+| VLAN | -Name | -Subnet | -Purpose | +
|---|---|---|---|
| + VLAN + | ++ Name + | ++ Subnet + | ++ Purpose + |
| {v.id} | -{v.name} | -{v.subnet} | -{v.purpose} | +
| + {v.id} + | +{v.name} | ++ {v.subnet} + | +{v.purpose} |
{categoryLabels[cat]} - -
{svc.name}
-{svc.description}
++ {svc.name} +
++ {svc.description} +
- Short-form ADRs — why things are configured the way they are. -
-- Decision: {adr.decision} +
{adr.title}
++ decision: + {adr.decision}
-- Why: {adr.why} +
+ why: + {adr.why}
lerkolabs on GitHub
-- Full documentation: VLAN maps, runbooks, service registry, config exports, and setup guides. -
-lerkolabs on GitHub
++ Full documentation: VLAN maps, runbooks, service registry, config exports, and setup guides. +
- View repo + ↗ github.com/lerko96/homelab-wip