1
2
Create Sample Resume Data File
ready-for-dev
2025-11-30
BMAD Story Context Workflow
docs/sprint-artifacts/1-2-create-sample-resume-data-file.md
developer
a sample resume data file with realistic content
I can test the preview and PDF generation with real data
Create app/data/resume.en.ts file with header comment
Import Resume type and export resumeData constant
Define basics section (name, label, email, phone, location, profiles, summary)
Define work experience (2+ entries, 3+ highlights each)
Define education (1+ entry)
Define skills (2+ categories, 4+ keywords each)
Define languages (2+ entries)
Verify TypeScript compilation
File exists at app/data/resume.en.ts
Exports resumeData of type Resume
Contains full name and job title in basics
Contains contact info (email, phone, location) in basics
Contains at least 2 social profiles with icons (LinkedIn, GitHub)
Contains professional summary (2-3 sentences)
Contains at least 2 work experiences with 3+ highlights each
Contains at least 1 education entry
Contains at least 2 skill categories with 4+ keywords each
Contains at least 2 languages
Data is independent from portfolio data
docs/architecture.md
Resume Export Feature - Architecture Document
Data Architecture - Sample Data Structure
Defines sample resume data structure with Ali Arghyani as sample name. Includes basics, work, education, skills, languages sections.
docs/epics.md
Resume Export Feature - Epic Breakdown
Story 1.2: Create Sample Resume Data File
Acceptance criteria for sample data including realistic content requirements and independence from portfolio data.
docs/sprint-artifacts/tech-spec-epic-1.md
Epic Technical Specification: Resume Data and Types
Data Models and Contracts
Complete data structure examples with sample values for all resume sections.
docs/prd.md
nuxt-portfolio - Product Requirements Document
Functional Requirements FR1-4
FR1: System stores resume data in dedicated file. FR3: Resume data is independent from portfolio data.
app/types/resume.ts
types
Resume, ResumeBasics, WorkExperience, Education, Skill, Language, Certification
MUST import Resume type from this file. Created in Story 1.1.
app/data/portfolio.ts
data
portfolio
Reference for data file pattern. Resume data should follow similar structure but be INDEPENDENT.
app/data/portfolio.en.ts
data
default export
Reference for locale-specific data file naming pattern (resume.en.ts).
typescript
^5.9.x
Type checking for data file
nuxt
^4.1.3
Auto-imports data from app/data/
Data must conform to Resume interface from app/types/resume.ts
Date fields must use YYYY-MM string format (e.g., "2022-01")
Resume data must be independent from portfolio data (FR3)
File naming supports future i18n (resume.en.ts, resume.fa.ts)
File must be at app/data/resume.en.ts
Use Iconify icon names for profiles: i-mdi-linkedin, i-mdi-github
Language fluency must use union type: 'Native' | 'Fluent' | 'Intermediate' | 'Basic'
Use Ali Arghyani as sample name per Architecture doc
Resume
TypeScript interface
interface Resume {
basics: ResumeBasics
work: WorkExperience[]
education: Education[]
skills: Skill[]
languages?: Language[]
certifications?: Certification[]
}
app/types/resume.ts
resumeData export
TypeScript const export
export const resumeData: Resume = { ... }
app/data/resume.en.ts (to be created)
TypeScript compiler validates data structure at build time. No runtime tests needed for static data. Use pnpm typecheck or pnpm build to verify compilation.
TypeScript compilation (pnpm typecheck)
Build process (pnpm build)
Verify file exists after creation
TypeScript compiler validates type annotation
Manual review of data content completeness
Verify no imports from portfolio data files