muliacode / resumify-php
A lightweight PHP package for creating and exporting resume profiles to standardized formats like JSON-Resume, Europass, and HR-XML
Fund package maintenance!
muliacode
Requires
- php: ^8.3
- justinrainbow/json-schema: ^6.4
- respect/validation: ^2.4
Requires (Dev)
- laravel/pint: ^1.0
- pestphp/pest: ^3.0
- pestphp/pest-plugin-type-coverage: ^3.6
- phpstan/phpstan: ^2.1
- rector/rector: ^2.1
- spatie/ray: ^1.28
This package is auto-updated.
Last update: 2025-08-05 20:10:38 UTC
README
A lightweight PHP package for creating and exporting resume profiles to standardized formats like json-resume.
Installation
You can install the package via composer:
composer require muliacode/resumify-php
Usage
// Create a new Resume instance $resume = Muliacode\Resumify\Resume::create(); // Add basic information $resume->basics( Muliacode\Resumify\Models\Basics::create( 'John Doe', 'Software Developer', 'https://example.com/profile.jpg', 'john.doe@example.com', '+1 (555) 123-4567', 'https://johndoe.com', 'Experienced software developer with a passion for clean code and problem-solving.', Muliacode\Resumify\Models\Location::create( 'San Francisco', 'CA', 'USA', '94105', 'Market Street', '123' ), [ Muliacode\Resumify\Models\Profile::create( 'GitHub', 'johndoe', 'https://github.com/johndoe' ), Muliacode\Resumify\Models\Profile::create( 'LinkedIn', 'johndoe', 'https://linkedin.com/in/johndoe' ) ] ) ); // Add work experience $resume->addWork( Muliacode\Resumify\Models\Work::create( 'Acme Inc.', 'San Francisco, CA', 'Technology company focused on innovative solutions', 'Senior Software Developer', 'https://acme.com', '2020-01-01', '2023-07-31', 'Led development of core products and mentored junior developers', [ 'Developed and maintained RESTful APIs', 'Implemented CI/CD pipelines', 'Reduced system response time by 40%' ] ) ); // Add education $resume->addEducation( Muliacode\Resumify\Models\Education::create( 'University of Technology', 'San Francisco, CA', 'Computer Science', 'Bachelor of Science', '2014-09-01', '2018-06-30', '3.8 GPA', [ 'Dean\'s List 2016-2018', 'Senior Project: Distributed Systems Architecture' ] ) ); // Add skills $resume->addSkills( Muliacode\Resumify\Models\Skill::create( 'Programming', 'Advanced', [ 'PHP', 'JavaScript', 'Python', 'SQL' ] ) ); // Add languages $resume->addLanguages( Muliacode\Resumify\Models\Language::create( 'English', 'Native' ) ); // Validate and finalize the resume $resume->done(); // Export to JSON (JSON Resume format) $jsonResume = json_encode($resume, JSON_PRETTY_PRINT); echo $jsonResume; // You can also access the resume data as an array $resumeArray = $resume->summarize();
For more detailed examples and advanced usage, please check the documentation.
Testing
composer test
or (with additional checks such as styling, static anaylsis, etc.)
composer test:complete
Contributing
Please see CONTRIBUTING for details on how to contribute to this project.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
License
The MIT License (MIT). Please see License File for more information.