mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2026-07-26 01:44:53 +10:00
📦 v5.0.2 · Changelog: https://docs.rxresu.me/changelog
This commit is contained in:
@@ -0,0 +1,128 @@
|
||||
---
|
||||
name: Resume Builder
|
||||
description: Generate professional resumes that conform to the Reactive Resume schema. Use when the user wants to create, build, or generate a resume through conversational AI, or asks about resume structure, sections, or content. This skill guides the agent to ask clarifying questions, avoid hallucination, and produce valid JSON output for https://rxresu.me.
|
||||
---
|
||||
|
||||
# Resume Builder for Reactive Resume
|
||||
|
||||
Build professional resumes through conversational AI for [Reactive Resume](https://rxresu.me), a free and open-source resume builder.
|
||||
|
||||
## Core Principles
|
||||
|
||||
1. **Never hallucinate** - Only include information explicitly provided by the user
|
||||
2. **Ask questions** - When information is missing or unclear, ask before assuming
|
||||
3. **Be concise** - Use clear, direct language; avoid filler words
|
||||
4. **Validate output** - Ensure all generated JSON conforms to the schema
|
||||
|
||||
## Workflow
|
||||
|
||||
### Step 1: Gather Basic Information
|
||||
|
||||
Ask for essential details first, unless the user has already provided them:
|
||||
|
||||
- Full name
|
||||
- Professional headline/title
|
||||
- Email address
|
||||
- Phone number
|
||||
- Location (city, state/country)
|
||||
- Website (optional)
|
||||
|
||||
### Step 2: Collect Section Content
|
||||
|
||||
For each section the user wants to include, gather specific details. Never invent dates, company names, or achievements.
|
||||
|
||||
**Experience**: company, position, location, period (e.g., "Jan 2020 - Present"), description of responsibilities/achievements
|
||||
|
||||
**Education**: school, degree, area of study, grade (optional), location, period
|
||||
|
||||
**Skills**: name, proficiency level (Beginner/Intermediate/Advanced/Expert), keywords
|
||||
|
||||
**Projects**: name, period, website (optional), description
|
||||
|
||||
**Other sections**: languages, certifications, awards, publications, volunteer work, interests, references
|
||||
|
||||
### Step 3: Configure Layout and Design
|
||||
|
||||
Ask about preferences:
|
||||
|
||||
- Template preference (13 available: azurill, bronzor, chikorita, ditto, ditgar, gengar, glalie, kakuna, lapras, leafish, onyx, pikachu, rhyhorn)
|
||||
- Page format: A4 or Letter
|
||||
- Which sections to include and their order
|
||||
|
||||
### Step 4: Generate Valid JSON
|
||||
|
||||
Output must conform to the Reactive Resume schema. See [references/schema.md](references/schema.md) for the complete schema structure.
|
||||
|
||||
Key requirements:
|
||||
- All item `id` fields must be valid UUIDs
|
||||
- Description fields accept HTML-formatted strings
|
||||
- Website fields require both `url` and `label` properties
|
||||
- Colors use `rgba(r, g, b, a)` format
|
||||
- Fonts must be available on Google Fonts
|
||||
|
||||
## Resume Writing Tips
|
||||
|
||||
Share these tips when helping users craft their resume content:
|
||||
|
||||
### Content Guidelines
|
||||
|
||||
- **Lead with impact**: Start bullet points with action verbs (Led, Developed, Increased, Managed)
|
||||
- **Quantify achievements**: Use numbers when possible ("Increased sales by 25%", "Managed team of 8")
|
||||
- **Tailor to the role**: Emphasize relevant experience for the target position
|
||||
- **Be specific**: Replace vague terms with concrete examples
|
||||
- **Keep it concise**: 1-2 pages maximum for most professionals
|
||||
|
||||
### Section Order Recommendations
|
||||
|
||||
For most professionals:
|
||||
1. Summary (if experienced)
|
||||
2. Experience
|
||||
3. Education
|
||||
4. Skills
|
||||
5. Projects (if relevant)
|
||||
6. Certifications/Awards
|
||||
|
||||
For students/recent graduates:
|
||||
1. Education
|
||||
2. Projects
|
||||
3. Skills
|
||||
4. Experience (if any)
|
||||
5. Activities/Volunteer
|
||||
|
||||
### Common Mistakes to Avoid
|
||||
|
||||
- Including personal pronouns ("I", "my")
|
||||
- Using passive voice
|
||||
- Listing job duties instead of achievements
|
||||
- Including irrelevant personal information
|
||||
- Inconsistent date formatting
|
||||
|
||||
## Output Format
|
||||
|
||||
When generating the resume, output a complete JSON object that conforms to the Reactive Resume schema. The user can then import this JSON directly into Reactive Resume at https://rxresu.me.
|
||||
|
||||
Example minimal structure:
|
||||
|
||||
```json
|
||||
{
|
||||
"picture": { "hidden": true, "url": "", "size": 80, "rotation": 0, "aspectRatio": 1, "borderRadius": 0, "borderColor": "rgba(0, 0, 0, 0.5)", "borderWidth": 0, "shadowColor": "rgba(0, 0, 0, 0.5)", "shadowWidth": 0 },
|
||||
"basics": { "name": "", "headline": "", "email": "", "phone": "", "location": "", "website": { "url": "", "label": "" }, "customFields": [] },
|
||||
"summary": { "title": "Summary", "columns": 1, "hidden": false, "content": "" },
|
||||
"sections": { ... },
|
||||
"customSections": [],
|
||||
"metadata": { "template": "onyx", "layout": { ... }, ... }
|
||||
}
|
||||
```
|
||||
|
||||
For the complete schema, see [references/schema.md](references/schema.md).
|
||||
|
||||
## Asking Good Questions
|
||||
|
||||
When information is missing, ask specific questions:
|
||||
|
||||
- "What was your job title at [Company]?"
|
||||
- "What dates did you work there? (e.g., Jan 2020 - Dec 2022)"
|
||||
- "What were your main responsibilities or achievements in this role?"
|
||||
- "Do you have a specific target role or industry in mind?"
|
||||
|
||||
Avoid compound questions. Ask one thing at a time for clarity.
|
||||
@@ -0,0 +1,365 @@
|
||||
# Reactive Resume Schema Reference
|
||||
|
||||
The complete JSON Schema is available at: https://rxresu.me/schema.json
|
||||
|
||||
This reference provides key structural information for generating valid resume data.
|
||||
|
||||
## Top-Level Structure
|
||||
|
||||
```json
|
||||
{
|
||||
"picture": { ... },
|
||||
"basics": { ... },
|
||||
"summary": { ... },
|
||||
"sections": { ... },
|
||||
"customSections": [ ... ],
|
||||
"metadata": { ... }
|
||||
}
|
||||
```
|
||||
|
||||
## Picture Configuration
|
||||
|
||||
```json
|
||||
{
|
||||
"hidden": false,
|
||||
"url": "https://example.com/photo.jpg",
|
||||
"size": 80,
|
||||
"rotation": 0,
|
||||
"aspectRatio": 1,
|
||||
"borderRadius": 0,
|
||||
"borderColor": "rgba(0, 0, 0, 0.5)",
|
||||
"borderWidth": 0,
|
||||
"shadowColor": "rgba(0, 0, 0, 0.5)",
|
||||
"shadowWidth": 0
|
||||
}
|
||||
```
|
||||
|
||||
## Basics
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "John Doe",
|
||||
"headline": "Senior Software Engineer",
|
||||
"email": "john@example.com",
|
||||
"phone": "+1 (555) 123-4567",
|
||||
"location": "San Francisco, CA",
|
||||
"website": { "url": "https://johndoe.com", "label": "Portfolio" },
|
||||
"customFields": []
|
||||
}
|
||||
```
|
||||
|
||||
## Summary
|
||||
|
||||
```json
|
||||
{
|
||||
"title": "Summary",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"content": "<p>HTML-formatted summary content here.</p>"
|
||||
}
|
||||
```
|
||||
|
||||
## Sections
|
||||
|
||||
All sections share a common structure:
|
||||
|
||||
```json
|
||||
{
|
||||
"title": "Section Title",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"items": [ ... ]
|
||||
}
|
||||
```
|
||||
|
||||
### Experience Items
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "uuid-here",
|
||||
"hidden": false,
|
||||
"company": "Acme Corp",
|
||||
"position": "Software Engineer",
|
||||
"location": "San Francisco, CA",
|
||||
"period": "Jan 2020 - Present",
|
||||
"website": { "url": "https://acme.com", "label": "" },
|
||||
"description": "<ul><li>Built scalable microservices</li><li>Led team of 5 engineers</li></ul>"
|
||||
}
|
||||
```
|
||||
|
||||
### Education Items
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "uuid-here",
|
||||
"hidden": false,
|
||||
"school": "Stanford University",
|
||||
"degree": "Bachelor of Science",
|
||||
"area": "Computer Science",
|
||||
"grade": "3.8 GPA",
|
||||
"location": "Stanford, CA",
|
||||
"period": "2012 - 2016",
|
||||
"website": { "url": "", "label": "" },
|
||||
"description": ""
|
||||
}
|
||||
```
|
||||
|
||||
### Skills Items
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "uuid-here",
|
||||
"hidden": false,
|
||||
"icon": "",
|
||||
"name": "JavaScript",
|
||||
"proficiency": "Expert",
|
||||
"level": 5,
|
||||
"keywords": ["React", "Node.js", "TypeScript"]
|
||||
}
|
||||
```
|
||||
|
||||
Level: 0-5 (0 hides the visual indicator)
|
||||
|
||||
### Project Items
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "uuid-here",
|
||||
"hidden": false,
|
||||
"name": "Open Source Project",
|
||||
"period": "2023 - Present",
|
||||
"website": { "url": "https://github.com/user/project", "label": "GitHub" },
|
||||
"description": "<p>Description of the project and your contributions.</p>"
|
||||
}
|
||||
```
|
||||
|
||||
### Language Items
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "uuid-here",
|
||||
"hidden": false,
|
||||
"language": "English",
|
||||
"fluency": "Native",
|
||||
"level": 5
|
||||
}
|
||||
```
|
||||
|
||||
Fluency examples: Native, Fluent, Conversational, Basic, or CEFR levels (A1-C2)
|
||||
|
||||
### Certification Items
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "uuid-here",
|
||||
"hidden": false,
|
||||
"title": "AWS Solutions Architect",
|
||||
"issuer": "Amazon Web Services",
|
||||
"date": "March 2023",
|
||||
"website": { "url": "https://aws.amazon.com/certification/", "label": "Verify" },
|
||||
"description": ""
|
||||
}
|
||||
```
|
||||
|
||||
### Award Items
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "uuid-here",
|
||||
"hidden": false,
|
||||
"title": "Employee of the Year",
|
||||
"awarder": "Acme Corp",
|
||||
"date": "2022",
|
||||
"website": { "url": "", "label": "" },
|
||||
"description": ""
|
||||
}
|
||||
```
|
||||
|
||||
### Publication Items
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "uuid-here",
|
||||
"hidden": false,
|
||||
"title": "Research Paper Title",
|
||||
"publisher": "IEEE",
|
||||
"date": "2021",
|
||||
"website": { "url": "https://doi.org/...", "label": "DOI" },
|
||||
"description": ""
|
||||
}
|
||||
```
|
||||
|
||||
### Volunteer Items
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "uuid-here",
|
||||
"hidden": false,
|
||||
"organization": "Local Food Bank",
|
||||
"location": "San Francisco, CA",
|
||||
"period": "2020 - Present",
|
||||
"website": { "url": "", "label": "" },
|
||||
"description": "<p>Volunteer activities and impact.</p>"
|
||||
}
|
||||
```
|
||||
|
||||
### Interest Items
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "uuid-here",
|
||||
"hidden": false,
|
||||
"icon": "",
|
||||
"name": "Photography",
|
||||
"keywords": ["Landscape", "Portrait", "Street"]
|
||||
}
|
||||
```
|
||||
|
||||
### Reference Items
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "uuid-here",
|
||||
"hidden": false,
|
||||
"name": "Jane Smith",
|
||||
"position": "Engineering Manager at Acme Corp",
|
||||
"website": { "url": "https://linkedin.com/in/janesmith", "label": "LinkedIn" },
|
||||
"phone": "+1 (555) 987-6543",
|
||||
"description": "<p>Optional testimonial or quote.</p>"
|
||||
}
|
||||
```
|
||||
|
||||
### Profile Items (Social Links)
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "uuid-here",
|
||||
"hidden": false,
|
||||
"icon": "linkedin-logo",
|
||||
"network": "LinkedIn",
|
||||
"username": "johndoe",
|
||||
"website": { "url": "https://linkedin.com/in/johndoe", "label": "" }
|
||||
}
|
||||
```
|
||||
|
||||
Icons use @phosphor-icons/web names. Common icons: `linkedin-logo`, `github-logo`, `twitter-logo`, `globe`
|
||||
|
||||
## Metadata
|
||||
|
||||
### Template Options
|
||||
|
||||
Available templates: `azurill`, `bronzor`, `chikorita`, `ditto`, `ditgar`, `gengar`, `glalie`, `kakuna`, `lapras`, `leafish`, `onyx`, `pikachu`, `rhyhorn`
|
||||
|
||||
### Layout Configuration
|
||||
|
||||
```json
|
||||
{
|
||||
"sidebarWidth": 35,
|
||||
"pages": [
|
||||
{
|
||||
"fullWidth": false,
|
||||
"main": ["profiles", "summary", "experience", "education", "projects"],
|
||||
"sidebar": ["skills", "languages", "certifications", "interests"]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
Section IDs for layout: `profiles`, `experience`, `education`, `projects`, `skills`, `languages`, `interests`, `awards`, `certifications`, `publications`, `volunteer`, `references`, `summary`
|
||||
|
||||
### Page Settings
|
||||
|
||||
```json
|
||||
{
|
||||
"gapX": 4,
|
||||
"gapY": 6,
|
||||
"marginX": 14,
|
||||
"marginY": 12,
|
||||
"format": "a4",
|
||||
"locale": "en-US",
|
||||
"hideIcons": false
|
||||
}
|
||||
```
|
||||
|
||||
Format options: `a4`, `letter`
|
||||
|
||||
### Design Settings
|
||||
|
||||
```json
|
||||
{
|
||||
"colors": {
|
||||
"primary": "rgba(220, 38, 38, 1)",
|
||||
"text": "rgba(0, 0, 0, 1)",
|
||||
"background": "rgba(255, 255, 255, 1)"
|
||||
},
|
||||
"level": {
|
||||
"icon": "star",
|
||||
"type": "circle"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Level types: `hidden`, `circle`, `square`, `rectangle`, `rectangle-full`, `progress-bar`, `icon`
|
||||
|
||||
### Typography
|
||||
|
||||
```json
|
||||
{
|
||||
"body": {
|
||||
"fontFamily": "IBM Plex Serif",
|
||||
"fontWeights": ["400", "500"],
|
||||
"fontSize": 10,
|
||||
"lineHeight": 1.5
|
||||
},
|
||||
"heading": {
|
||||
"fontFamily": "IBM Plex Serif",
|
||||
"fontWeights": ["600"],
|
||||
"fontSize": 14,
|
||||
"lineHeight": 1.5
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Font family must be available on Google Fonts. Font weights: 100-900.
|
||||
|
||||
### CSS Customization
|
||||
|
||||
```json
|
||||
{
|
||||
"enabled": false,
|
||||
"value": ""
|
||||
}
|
||||
```
|
||||
|
||||
## Custom Sections
|
||||
|
||||
Custom sections extend the base section structure with additional fields:
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "uuid-here",
|
||||
"title": "Custom Section Title",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"type": "experience",
|
||||
"items": [ ... ]
|
||||
}
|
||||
```
|
||||
|
||||
The `type` field determines the item schema. Valid types: `profiles`, `experience`, `education`, `projects`, `skills`, `languages`, `interests`, `awards`, `certifications`, `publications`, `volunteer`, `references`
|
||||
|
||||
## UUID Generation
|
||||
|
||||
All `id` fields require valid UUIDs version 7. If available, use 'v7()' from the 'uuid' package to generate a valid UUID. Otherwise, fallback to generating a valid UUID v4 using crypto.randomUUID() from 'node' or the equivalent.
|
||||
|
||||
## HTML Content
|
||||
|
||||
Fields marked as "HTML-formatted string" accept basic HTML:
|
||||
- `<p>` for paragraphs
|
||||
- `<ul><li>` for bullet lists
|
||||
- `<ol><li>` for numbered lists
|
||||
- `<strong>` for bold
|
||||
- `<em>` for italic
|
||||
- `<a href="...">` for links
|
||||
|
||||
Keep formatting minimal for best rendering across templates.
|
||||
Reference in New Issue
Block a user