ClientSPA — Agent Guidelines
## Overview
Angular 20 frontend SPA. Builds to `../APIViewWeb/wwwroot/spa` for hosting by the ASP.NET backend.
See [CONTRIBUTING.md](CONTRIBUTING.md) for setup and contribution details.
## Tech Stack
- **Angular 20** with
architect mastering Angular 15+ with enterprise patterns. Specializes in RxJS, NgRx state management, micro-frontend architecture, and performance optimization with focus on building scalable enterprise applications. |
| golang-pro | Expert
Frontend — Agent Context
This is an Astro 7 + React 19 + Tailwind 4 site wired to the ONE backend.
## Architecture
```
apps/web/
├── one.config.ts — the single control surface (defineOne, plugins)
├── src/
│ ├── layouts/ — Layout.astro
Frontend assets update
- Static assets are now split under `src/zimage/static/css`, `js`, and `i18n` (relative URLs in `index.html`).
- Translations are loaded via `js/i18n-loader.js` into `window.translations` and consumed by `js/main.js
asks about repository code.
2. **Project development:** For implementation, architecture, tests, bugs, CLI behavior, frontend behavior, or deployment code, work from this repository and preserve its existing engineering patterns
root. The reusable retrieval
crate is `crates/memorywhale-core`, CLI sources are in `crates/mw-cli`, the
React frontend is in `src`, and `src-tauri` contains only the desktop shell.
- Build every helper from
commands
unless explicitly told.
- After non-trivial UI changes, screenshot to verify (see README → Frontend
Testing). Screenshots to `/tmp`, deleted after
this repository is written for Go 1.25+.
## Architecture Invariant
Cluster mutations (PUT/DELETE) are **async**: Frontend writes to CosmosDB with non-terminal state → Backend polls and processes → updates with terminal state