How peter812/prm works
PRM is a personal relationship manager for recording people and their connections, notes, interactions, groups, social accounts, and family relationships. The main workflow is a signed-in user navigating the web app, making API requests, and managing relationship data persisted in PostgreSQL. The application also exposes family-tree, social-media, AI/vector, import/export, image-storage, and background-task capabilities. The README gives only a brief product description; several branches are represented by routes and pages in the tree, but their detailed server-side wiring was not sampled.
Main entry points: App.tsx App and router · queryClient.ts API client · routes.ts Route registration · auth-setup.ts Auth and import routes
Components 26
Web experience
- App and router
client/src/App.tsx - Image management
client/src/pages/images-list.tsx - API client
client/src/lib/queryClient.ts
API and workflows
- Import and export
client/src/pages/import-export-home.tsx - Task controls
client/src/pages/tasks-settings.tsx - Route registration
server/routes.ts - Auth and import routes
server/routes/auth-setup.ts - People and social routes
server/routes/people-groups.ts - Family routes
server/routes/family.ts - Social media routes
server/routes/social-media.ts
Relationship management
- People profiles
client/src/pages/people-list.tsx - Family tree UI
client/src/pages/family-tree.tsx - Social graph UI
client/src/pages/social-graph-3d.tsx - Notes and interactions
client/src/components/notes-tab.tsx
Search and intelligence
- AI and vector routes
server/routes/ai-vector.ts - AI tools
server/ai-tools.ts - Family tree AI
server/family-tree-ai.ts - Vector search
server/vector-universal.ts
Persistence and media
- Domain storage
server/storage.ts - Domain schema
shared/schema.ts - PostgreSQL
server/db.ts - S3 image storage
server/s3.ts - Local image storage
server/local-storage.ts
Other components
- Signed-in user
- PostgreSQL service
- S3 service
Connections 31
- Signed-in user → App and router: uses
- App and router → People profiles: routes to
- App and router → Family tree UI: routes to
- App and router → Social graph UI: routes to
- App and router → Notes and interactions: shows
- App and router → Import and export: routes to
- App and router → Image management: routes to
- App and router → Task controls: routes to
- People profiles → API client: requests API
- Family tree UI → API client: requests API
- Social graph UI → API client: requests API
- Notes and interactions → API client: requests API
- Import and export → API client: requests API
- Image management → API client: requests API
- Task controls → API client: requests API
- API client → Route registration: sends HTTP
- Route registration → Auth and import routes: registers
- Route registration → People and social routes: registers
- Route registration → Social media routes: registers
- Route registration → AI and vector routes: registers
- Route registration → Family routes: registers
- Auth and import routes → Domain storage: reads and writes
- Auth and import routes → S3 image storage: uploads and deletes
- Auth and import routes → Local image storage: uploads and deletes
- Domain storage → PostgreSQL: queries
- Domain storage → Domain schema: uses tables
- PostgreSQL → PostgreSQL service: connects
- S3 image storage → S3 service: stores images
- AI and vector routes → Vector search: dispatches search
- AI and vector routes → AI tools: exposes tools
- AI and vector routes → Family tree AI: exposes family AI