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 search
  • zod - 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

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