extract-resume
This example extracts a resume with nested education records, work experience, and skills. The Resume and Education interfaces define the output shape; JSDoc comments add instructions to the generated schema.
A plain TypeScript caller can import extractResume and await its result.
export interface Education { school: string; degree: string; /** graduation year */ year: number;}
export interface Resume { name: string; email: string; /** one entry per position, most recent first */ experience: string[]; skills: string[]; education: Education[];}
export infer function extractResume(.message: string) { return ask `the candidate's resume data`: Resume;}Run it
Section titled “Run it”npx nola-lang run src/main.ts # mock provider (deterministic)# real model: edit nola.config.ts to openai({ model: "gpt-5-mini" }) (needs OPENAI_API_KEY)Scaffold: npm create nola my-app -- --template extract-resume
Source: examples/extract-resume on GitHub.
Next: classify-message