# kanaparthiabhinavakarthik-stack/polaris-archive2 architecture

> Architecture diagram of the GitHub repository kanaparthiabhinavakarthik-stack/polaris-archive2, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-26). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/kanaparthiabhinavakarthik-stack/polaris-archive2
- Repository: https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2

## Overview

Polaris Archive is a public-facing polar research archive. Visitors enter through the shared site shell, then explore findings, search records by text or discipline, browse media, and access student resources and project information. The sampled repository route filters in-memory catalogue data; there is no demonstrated remote data store. The tree documents dedicated routes for the major archive sections, but their unsampled implementation details and wiring are not assumed here.

Main entry points: [`ice-explorers-archive-main/src/components/site-header.tsx`](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/components/site-header.tsx) (Site navigation), [`ice-explorers-archive-main/src/server.ts`](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/server.ts) (SSR request handler), [`ice-explorers-archive-main/src/routes/__root.tsx`](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/__root.tsx) (Root layout), [`ice-explorers-archive-main/src/routes/repository.tsx`](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/repository.tsx) (Repository search)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_site["Site shell"]
  node_header["Site navigation<br/>[site-header.tsx]"]
  node_footer["Site footer<br/>[site-footer.tsx]"]
  node_home["Archive home<br/>[index.tsx]"]
end

subgraph group_archive["Research archive"]
  node_findings["Findings<br/>[findings.tsx]"]
  node_repository["Repository search<br/>[repository.tsx]"]
  node_catalogue["Archive catalogue<br/>[archive-data.ts]"]
end

subgraph group_outreach["Public resources"]
  node_media["Media hub<br/>[media.tsx]"]
  node_students["Student resources<br/>[students.tsx]"]
  node_about["About archive<br/>[about.tsx]"]
end

subgraph group_runtime["Application runtime"]
  node_router["Route dispatcher<br/>[router.tsx]"]
  node_root["Root layout<br/>[__root.tsx]"]
  node_server["SSR request handler<br/>[server.ts]"]
  node_error_capture["Error capture<br/>[error-capture.ts]"]
  node_error_page["Error page renderer<br/>[error-page.ts]"]
end

node_visitor(("Visitor"))
node_researcher(("Researcher"))
node_student(("Student"))

node_visitor -->|"requests pages"| node_server
node_server -->|"dispatches request"| node_router
node_router -->|"provides route tree"| node_root
node_root -->|"renders shell"| node_header
node_root -->|"renders shell"| node_footer
node_header -->|"links to"| node_home
node_header -->|"links to"| node_findings
node_header -->|"links to"| node_repository
node_header -->|"links to"| node_media
node_header -->|"links to"| node_students
node_header -->|"links to"| node_about
node_home -->|"reads disciplines"| node_catalogue
node_repository -->|"filters findings"| node_catalogue
node_researcher -->|"browses"| node_findings
node_visitor -->|"searches records"| node_repository
node_visitor -->|"browses media"| node_media
node_student -->|"accesses resources"| node_students
node_visitor -->|"learns about archive"| node_about
node_server -->|"consumes captured error"| node_error_capture
node_server -->|"renders failure page"| node_error_page
node_error_capture -->|"captures failures"| node_server

click node_header "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/components/site-header.tsx"
click node_footer "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/components/site-footer.tsx"
click node_home "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/index.tsx"
click node_findings "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/findings.tsx"
click node_repository "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/repository.tsx"
click node_catalogue "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/lib/archive-data.ts"
click node_media "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/media.tsx"
click node_students "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/students.tsx"
click node_about "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/about.tsx"
click node_router "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/router.tsx"
click node_root "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/__root.tsx"
click node_server "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/server.ts"
click node_error_capture "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/lib/error-capture.ts"
click node_error_page "https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/lib/error-page.ts"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_header,node_footer,node_home toneBlue
class node_findings,node_repository,node_catalogue toneAmber
class node_media,node_students,node_about toneMint
class node_router,node_root,node_server,node_error_capture,node_error_page toneRose
class node_visitor,node_researcher,node_student toneIndigo
```

## Components

### Site shell

- [Site navigation](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/components/site-header.tsx): `ice-explorers-archive-main/src/components/site-header.tsx`
- [Site footer](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/components/site-footer.tsx): `ice-explorers-archive-main/src/components/site-footer.tsx`
- [Archive home](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/index.tsx): `ice-explorers-archive-main/src/routes/index.tsx`

### Research archive

- [Findings](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/findings.tsx): `ice-explorers-archive-main/src/routes/findings.tsx`
- [Repository search](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/repository.tsx): `ice-explorers-archive-main/src/routes/repository.tsx`
- [Archive catalogue](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/lib/archive-data.ts): `ice-explorers-archive-main/src/lib/archive-data.ts`

### Public resources

- [Media hub](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/media.tsx): `ice-explorers-archive-main/src/routes/media.tsx`
- [Student resources](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/students.tsx): `ice-explorers-archive-main/src/routes/students.tsx`
- [About archive](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/about.tsx): `ice-explorers-archive-main/src/routes/about.tsx`

### Application runtime

- [Route dispatcher](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/router.tsx): `ice-explorers-archive-main/src/router.tsx`
- [Root layout](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/routes/__root.tsx): `ice-explorers-archive-main/src/routes/__root.tsx`
- [SSR request handler](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/server.ts): `ice-explorers-archive-main/src/server.ts`
- [Error capture](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/lib/error-capture.ts): `ice-explorers-archive-main/src/lib/error-capture.ts`
- [Error page renderer](https://github.com/kanaparthiabhinavakarthik-stack/polaris-archive2/blob/main/ice-explorers-archive-main/src/lib/error-page.ts): `ice-explorers-archive-main/src/lib/error-page.ts`

### Other components

- **Visitor**
- **Researcher**
- **Student**

## Connections

- Visitor → SSR request handler: requests pages
- SSR request handler → Route dispatcher: dispatches request
- Route dispatcher → Root layout: provides route tree
- Root layout → Site navigation: renders shell
- Root layout → Site footer: renders shell
- Site navigation → Archive home: links to
- Site navigation → Findings: links to
- Site navigation → Repository search: links to
- Site navigation → Media hub: links to
- Site navigation → Student resources: links to
- Site navigation → About archive: links to
- Archive home → Archive catalogue: reads disciplines
- Repository search → Archive catalogue: filters findings
- Researcher → Findings: browses
- Visitor → Repository search: searches records
- Visitor → Media hub: browses media
- Student → Student resources: accesses resources
- Visitor → About archive: learns about archive
- SSR request handler → Error capture: consumes captured error
- SSR request handler → Error page renderer: renders failure page
- Error capture → SSR request handler: captures failures
