Project Guidelines
## Overview
pgconsole is a PostgreSQL management console with a React frontend and Express backend using ConnectRPC for API communication.
## Working Guidelines
### Plan Mode
When using plan mode, create
single catch-all web route hands everything to the Vue SPA. The frontend uses DaisyUI 5 on Tailwind CSS 4 with Heroicons.
## Development Commands
```bash
# Install
composer install && npm install
special non-versioned preview data (e.g., Potree octree viewer files) that the frontend reads directly from the auxiliary bucket.
- The `constructPipeline` lambda should prefer the appropriate output path when provided
files, and other visual content. It deploys as a CloudFormation/CDK stack with:
- **React frontend** (`web/`) — Cloudscape UI, many viewer plugins for 3D/media
- **Python Lambda backend** (`backend/`) — Casbin ABAC/RBAC auth, DynamoDB
container processing or special non-versioned viewer data (e.g., Potree octree files that the frontend reads directly). It should **not** be used for standard pipeline outputs that flow through
CLAUDE.md - VAMS Frontend (web/)
This is the frontend-specific Claude Code steering document for the VAMS (Visual Asset Management System) web application. It is auto-loaded when working within
sandbox, and the boundary between **tracked core specs** and
> **untracked ad-hoc specs**. For frontend patterns see `web/CLAUDE.md`.
---
## What these tests are for
Playwright drives the **deployed** application
VAMS Viewer Plugin System
Auto-loaded when working within `web/src/visualizerPlugin/`. See `web/CLAUDE.md` for the frontend-wide steering.
---
## Architecture
The 3D/media viewer system uses a plugin-based architecture:
- **PluginRegistry** (`core/PluginRegistry.ts`) — Singleton
exact timestamp in the source video. FastAPI + Python backend, React + Vite + TypeScript frontend, SQLite for local dev (Postgres + pgvector already provisioned in production — see **Deployment** below).
---
## Tech Stack
**Backend**
- Python
Overview
**Claude Code Studio** — lightweight web UI for Claude Code. Express.js backend + vanilla JS frontend, no build tools required. Chat with Claude via WebSocket, with multi-agent orchestration, MCP server
A file Claude Code reads at the start of every session. It holds the commands, conventions and warnings the agent needs for this project.
Where does it go?
At the repository root. Claude Code also reads CLAUDE.md files in subdirectories when it works there.
What should it contain?
Build and test commands, the project's layout, conventions that aren't obvious from the code, and mistakes to avoid. Short files tend to work better than long ones.
CLAUDE.md or AGENTS.md?
Claude Code reads CLAUDE.md; most other agents read AGENTS.md. Many projects keep one and point the other at it.