An AI platform for evaluating software engineers. KYD analyzes CVs, scores tech stacks, and highlights strengths and red flags to help employers quickly assess developer suitability.
Note: This repository is a Work in Progress.
🌐 Try it here: knowyourdev.onrender.com — access requires credentials, please contact us to request them.
A monorepo for KYD containing the API service and the Web frontend. It uses pnpm workspaces and Turborepo for task orchestration.
- apps/
- api/ — Node.js/Express TypeScript API with AI-powered resume/project extraction
- web/ — React + TypeScript + Vite frontend
- Node.js >= 22
- pnpm 9.x (this repo is configured with pnpm)
Check your versions:
node -vpnpm -v
-
Clone the repo.
-
Install dependencies at the root:
pnpm install -
Build all workspaces (first-time setup or after dependency changes):
pnpm build -
Set up environment variables:
- Copy
apps/api/.env.exampletoapps/api/.envand fill required values. - Copy
apps/web/.env.exampletoapps/web/.envand fill required values. - Note: .env.example files mirror the existing .env files’ keys and comments. Do not add inferred variables; keep them in sync with the real .env files.
- Copy
-
Run the app(s) in development mode:
- Run all dev tasks concurrently via Turborepo:
pnpm dev - Or run a single app from its directory:
- API:
pnpm --filter @kyd/api dev(orpnpm devif package defines it) - Web:
pnpm --filter @kyd/web dev(orpnpm dev)
- API:
- Run all dev tasks concurrently via Turborepo:
Note: Turborepo is configured in turbo.json. Tasks like build, dev, and lint are orchestrated across workspaces.
From the repository root:
pnpm dev— run all dev processes (non-cached, persistent) via turbopnpm build— build all apps/packages via turbopnpm lint— run lint across the workspace via turbo
You can also target a specific app with pnpm --filter. Examples:
pnpm --filter ./apps/api buildpnpm --filter ./apps/web dev
- Entry point:
apps/api/src/index.ts - HTTP/HTTPS: Controlled via
SCHEMEenv variable (httporhttps). Forhttps, certs are read fromapps/api/src/cert/key.pemandapps/api/src/cert/cert.pem. - MongoDB: Startup/shutdown logic handled via
apps/api/src/app/mongo.tsutilities. Ensure related env vars are provided. - AI/LLM: Resume and project extraction chains live under
apps/api/src/chain. They rely on prompts and an AI model provider configured inapps/api/src/app/aiModel.tsand utils.
To run only the API in dev, from root:
pnpm --filter ./apps/api dev
- Vite React + TypeScript. The scaffolded README in
apps/web/README.mdcontains Vite/ESLint notes. - API client lives under
apps/web/src/api.
To run only the Web app in dev, from root:
pnpm --filter ./apps/web dev