UNPKG

react-resume-kit

Version:

<br/> <br/> <div align="center"> <img src="https://github.com/Kiyameh/react-resume-kit/blob/main/src/assets/logo.png" alt="React Resume Kit Logo" width="300"/> </div> <br/> <br/>

183 lines (144 loc) 3.6 kB
# React Resume Kit <br/> <br/> <div align="center"> <img src="https://github.com/Kiyameh/react-resume-kit/blob/main/src/assets/logo.png" alt="React Resume Kit Logo" width="300"/> </div> <br/> <br/> A modern, customizable React component for creating beautiful and professional resumes or curriculum for your website. Built with TypeScript. ## Features - 🌐 Multi-language support - 📄 PDF download functionality - 🎨 Customizable themes - 🎯 Icon support (Lucide Icons and Simple Icons) - Easy to configure and integrate - 📱 Responsive design - 🎨 Modern and clean UI ## Installation ```bash npm install react-resume-kit ``` ## Quick Start ```tsx import {ResumeLayout, ResumeHeader} from 'react-resume-kit' import {content} from './your-content-file' function App() { return( <ResumeLayout resumeContent={content}> <ResumeHeader> </ResumeLayout> ) } ``` ## Configuration STEP1: Add the ResumeLayout componente by wrapping one or more of the following: ```tsx <ResumeHeader/> <ResumeAbout/> <ResumeWorks/> <ResumeCourses/> <ResumeTechnologies/> <ResumeSoftSkills/> <ResumeProjects/> <ResumeContact/> ``` STEP2: You can add the following props to ResumeLayout component: - initialLanguage="es" - resumeContent={content} - enableLanguageSwitch - enablePdfDownload STEP3: Copy the data/exampleContent file that contains all the resume data. Update it. The content should follow this structure: ```typescript type ResumeContent = { // One for each language en: { // Section names about_title: string works_title: string courses_title: string techs_title: string soft_skills_title: string soft_skills_subtitle: string projects_title: string projects_subtitle: string connect_title: string // Download button text download_pdf: string // Language switcher switcher_text: string language_labels: Array<{label: string; value: string}> // Header name: string title: string email: string phone: string location: string picture?: string // About about_text: string // Experience works: Array<{ title: string company: string date: string location: string points: string[] }> // Courses courses: Array<{ degree: string school: string date: string }> // Technologies technologies: Array<{ name: string icon: SimpleIconName }> // Soft Skills soft_skills: Array<{ title: string description: string icon: LucideIconName }> // Projects projects: Array<{ title: string description: string features: string technologies: string[] link?: string }> // Footer author: string socialLinks: Array<{ name: string icon: LucideIconName | SimpleIconName url: string }> } } ``` ## Icons The component supports both Lucide Icons and Simple Icons. To use them: - For Lucide Icons: Use the icon name directly. Can see them in https://lucide.dev/ - For Simple Icons: Use the 'Si' prefix followed by the icon name (e.g., 'SiReact'). Can see them in https://simpleicons.org ## Language Support The component supports multiple languages. You need to provide the content for each language in the content object: ```typescript const content = { en: { /* English content */ }, es: { /* Spanish content */ }, } ``` ## Contributing Contributions are welcome! Please feel free to submit a Pull Request. ## License MIT ## Author Andoni Gallardo