extract-resume
SolidParse a resume's uploaded PDF into structured JSON (basics, experience, projects, skills, education) and save it to the editor.
Data & Documents 67 stars
17 forks Updated yesterday MIT
Install
Quality Score: 84/100
Stars 20%
Recency 20%
Frontmatter 20%
Documentation 15%
Issue Health 10%
License 10%
Description 5%
Skill Content
# Extract Resume - Source PDF → Structured Data
Read a resume's uploaded source PDF and produce JSON matching the JobPilot resume schema, then save via the API. Inverse of the editor.
## Setup
Follow `../_shared/setup.md`. The profile response provides `user.primaryResumeId`, `primaryResumeSourceAbsolutePath`, and `resumes` (every base with `id`, `label`, `sourceFilename`, `hasData`, `isPrimary`).
## Step 1: Resolve Target
Parse the argument:
- Integer → use that resume id.
- Empty → use `user.primaryResumeId`. If no primary, stop:
> No primary resume set. Pass an explicit id, or set a primary at <$JOBPILOT_WEB/resumes>.
- `--force` (anywhere) → overwrite existing structured data. Otherwise refuse to overwrite (Step 3).
Let `RESUME_ID` be the resolved id, `FORCE` be `true`/`false`.
```bash
curl -fsS -H "authorization: Bearer $JOBPILOT_API_TOKEN" "$JOBPILOT_API/api/resumes/$RESUME_ID"
```
If 404, stop and report the id doesn't exist.
## Step 2: Verify Source PDF
`sourceFilename` must be set. If `null`, stop:
> Resume {id} ({label}) has no uploaded source PDF. Upload one at <$JOBPILOT_WEB/resumes/{id}>, then re-run.
Resolve the absolute path:
- Primary resume → prefer `primaryResumeSourceAbsolutePath`.
- Otherwise → `${JOBPILOT_WORKSPACE_ROOT}/apps/api/storage/resumes/{sourceFilename}`.
If `sourceMimeType !== "application/pdf"`, stop and ask the user to re-upload as PDF.
## Step 3: Refuse to Clobber
If `content` is non-null and `FORCE === false`, stop:
> Res...
Details
- Author
- suxrobGM
- Repository
- suxrobGM/jobpilot
- Created
- 5 months ago
- Last Updated
- yesterday
- Language
- TypeScript
- License
- MIT
Integrates with
Similar Skills
Semantically similar based on skill content — not just same category
Code & Development Solid
review-resume
Review a freshly uploaded resume and save a stronger rewritten version as a suggestion the user accepts or discards in the dashboard.
67 Updated yesterday
suxrobGM AI & Automation Listed
resume-workflow
Generate and manage resumes in JSON Resume format using the resumed CLI. Use when updating resume content, rendering to HTML or PDF, or trying different themes.
0 Updated 2 days ago
matthull AI & Automation Listed
resume
AI-powered resume system. Manages structured experience data and generates tailored LaTeX resumes for different job targets. Use when user says 'resume', 'generate resume', 'make resume', 'init resume', 'add experience', '简历', '生成简历', '初始化简历', or '添加经历'.
0 Updated yesterday
isolationistmuttontallow763