packages/chat-data/README.md
@portfolio/chat-data
Resume/profile data schemas and search helpers.
Overview
This package validates the generated profile/resume snapshots that seed the DynamoDB-backed profile store and provides resume-oriented search utilities:
- Resume, education, award, skill, and profile Zod schemas
- Filesystem adapters for resume/profile seed data
- Resume search helpers used by chat and profile tooling
- Shared embedding helpers for resume ranking
Project data is no longer loaded from this package. Portfolio projects are
sourced live from GitHub and selected/ordered through /admin/portfolio.
Dependencies
minisearch- Lightweight full-text searchzod- Schema validation@portfolio/chat-contract- Shared type contracts
Usage
import { assertProfileSummary, assertResume } from '@portfolio/chat-data';
import profile from '../../generated/profile.json';
import resume from '../../generated/resume.json';
const profileRecord = assertProfileSummary(profile);
const resumeRecord = assertResume(resume);
Related Packages
- @portfolio/chat-contract - Type definitions
Development
Fixture Mode
Use mock data during development:
PORTFOLIO_TEST_FIXTURES=true pnpm dev
Real Data
Connect to live stores and GitHub API:
PORTFOLIO_TEST_FIXTURES= pnpm dev
Chat Knowledge
Profile/persona/resume Markdown is rebuilt with:
pnpm vault:build
Project docs are not part of vault/; /admin/portfolio saves the visible repo
list and syncs GitHub README/docs/markdown files into the OpenAI vector store.
Use the page's full rebuild action, or POST /api/admin/projects/sync, after
recreating the vector store.
Related Documentation
- Chat Overview - How chat knowledge is sourced
- Projects - How portfolio projects are sourced from GitHub
