Files
claudemesh/.cursor/rules/orientation.mdc
Alejandro Gutiérrez d3163a5bff feat(db): mesh data model — meshes, members, invites, audit log
- pgSchema "mesh" with 4 tables isolating the peer mesh domain
- Enums: visibility, transport, tier, role
- audit_log is metadata-only (E2E encryption enforced at broker/client)
- Cascade on mesh delete, soft-delete via archivedAt/revokedAt

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 21:19:32 +01:00

55 lines
1.6 KiB
Plaintext

---
description: Cognitive orientation - project identity and constraints
alwaysApply: true
---
# LiquidRender
DSL-to-React rendering engine built on TurboStarter.
## What This Is
A system that compiles a domain-specific language into React UI components. The DSL describes interfaces declaratively; the renderer produces interactive dashboards, forms, and data visualizations.
## Structure
```
packages/liquid-render/ ← Core engine
├── src/compiler/ ← DSL → render tree
├── src/renderer/ ← React components (47 components)
│ └── components/ ← DataTable, Charts, Forms, Layout
└── src/types/ ← Type definitions
packages/liquid-code/ ← Code generation
packages/liquid-survey/ ← Survey/form builder
apps/web/ ← Next.js web app
apps/mobile/ ← Expo mobile app
packages/db/ ← Drizzle schemas (10 tables)
```
## Core Files
| What | Where |
|------|-------|
| Main renderer | `liquid-render/src/renderer/LiquidUI.tsx` |
| Design tokens | `liquid-render/src/renderer/components/utils.ts` |
| DSL types | `liquid-render/src/types/` |
| DB schemas | `packages/db/src/schema/` |
## Before Building Anything
**Read `capabilities.yaml` first.** Most things already exist.
## Conventions
- Design tokens in `utils.ts` - never hardcode colors/spacing
- Components need `data-liquid-type` attribute
- Handle empty/null states in all components
## Expand
- Creating components → `cache/answers/how-to-create-component.md`
- Full entity map → `knowledge.json`
- Library docs → `libraries.json` + MCP