⚠️ ⚠️ ⚠️ This Repo won't be continued, you can find the successor at LukaHarambasic/vue-resume-component.⚠️ ⚠️ ⚠️
Do you want some new features? Create an issue :)
- LinkedIn Import
- Generate pages and CVs automatically for each folder in content
- Disable coverletter on production
- Overflow warning for pages
- add field for address and telephone
- add new layout with: skill level, timeline
- add responsiveness
- explain how to add new informations
- two elements of education/experience/voluntary could be on the same line if there isn't enough conntent. Quick fix, add as many invisivble characters (not spaces) until it looks normal. You can copy it from: https://stackoverflow.com/questions/17978720/invisible-characters-ascii?answertab=votes#tab-top
- Go to
content
and edit the all files, but never delete files or delete attributes (just delete the content if you don't want them):company.yml
: company specific information <- should be customized for each company you apply, used for: coverlettereducation.yml
: educational background, used for: firstpage on cvexperienceFirstPage.yml
: work experiences, used for: firstpage on cvexperienceSecondPage.yml
: work experiences if there isn't enough space on the first page. Could also be used two show something different like projects on the page. If you don't need it just delete the segments, but not the file, used for: secondpage on cvfooter.yml
: links in footer, is very flexible, used for: each pageperson.yml
: your personal information, used for: coverletter, firstpage on cvsettings.yml
: your central hub to manage most of the stuff you can see, everything is explained in this file, used for: everywhereskills.yml
: all your skills, used for: firstpage on cvvoluntary.yml
: like education and experience just for your voluntary work, used for: secondpage on cvcomponents/Footer.vue
to your logo.
- If you want to apply for many different jobs/positions you have to follow this steps:
- Create a folder for this job/position where you copy the files you want to customize. In this repository there is the example
HighTechCompany
where thecompany.yml
,coverletter.yml
andskills.yml
are customized. - Duplicate the
pages/index.vue
inpages
and customize the following lines to match yout new files (here from the HighTechCompany example):import settings from '~/content/settings.yml' import coverletter from '~/content/HighTechCompany/coverletter.yml' //CUSTOMIZED import company from '~/content/HighTechCompany/company.yml' //CUSTOMIZED import person from '~/content/person.yml' import experienceFirstPage from '~/content/experienceFirstPage.yml' import experienceSecondPage from '~/content/experienceSecondPage.yml' import education from '~/content/education.yml' import skills from '~/content/HighTechCompany/skills.yml' //CUSTOMIZED import voluntary from '~/content/voluntary.yml' import footer from '~/content/footer.yml'
- After that you can access this page by adding the file name to your url, in this example for the page
HighTechCompany.vue
add/HighTechCompany
to your url to gethttp://localhost:3000/HighTechCompany
. - So you have to repead this for each jobs/position.
- Create a folder for this job/position where you copy the files you want to customize. In this repository there is the example
- Change the colors in
assets/scss/_settings.scss
, mainly the$c-primary
color but you can change everything you want, but I suspect that it will destroy the layout. - In the same file you can change the font but than you have to add the Google Font in the
nuxt.config.js
file (just replace the url you find there).
- Install all dependencies
npm install
- you only have to do this once - Run
npm run dev
and go to localhost:3000
- Open the print dialog
- Click on
More settings
- And select
- Paper size: A4
- Margins: None
- Scale: 100
- Options: (true) Background graphics
- Select
Save as PDF
as print destination - And that's it :)
- You can deploy it via Netlify, a free account is enough and you can add your own domain if you want
- Everything will be public and could be seen, so be careful about the data which is in
content
- The Coverletter isn't optimized for Mobile Devices
npm run build
npm run start
$ docker build -t yaml2cv --build-arg NODE_ENV=production .
$ docker-compose up -d
- move to the container
docker exec -it yaml2cv bash
pm2 monit
pm2 list
pm2 stop app
pm2 restart app
npm run generate
- Copy the files from the
dist
folder to your webserver
- Content should be managed per page, so it can be easily customized centrally
- No complex properties like objects, just primitives. If an object is required the property has a custom validator to check if the expect keys exist