diff --git a/.gitignore b/.gitignore index 9129e69..07ebd1e 100644 --- a/.gitignore +++ b/.gitignore @@ -37,4 +37,3 @@ Thumbs.db # Local /_local -/resources/ diff --git a/README.md b/README.md index c68294c..e3b3f8c 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,18 @@ +# !! Breaking Changes !! + +Thanks to [@raphendyr](https://gitlab.com/raphendyr), we can now add more than one page and change order of the sections. Also, there are tons of refactoring which made the theme more modular. + +**If you are already using a previous version of the theme, you will get an ERROR** after this update. Don't worry. The solution is very easy. You just need to edit ```projects.yaml```, ```features.yaml``` and ```config.yaml``` since their structure has changed. After that, all should be fine. + # Features * Simple, easy to use, single or multi page, A4-sized Resume generator. * Print friendly, just use your browser or save as PDF. * Write your resume in yaml. All content stored in data files. -* Remove/Add sections from `config.toml`. -* Section names are configurable in `config.toml`. So, you can write in any language you want. +* Add/Remove sections order change section orders by editing `config.yaml`. +* Section names are configurable in `config.yaml`. So, you can write in any language you want. + +[Here is a blog post](https://mertbakir.gitlab.io/projects/resume-a4/) about this project. # How To Use @@ -19,7 +27,7 @@ cd themes git clone https://gitlab.com/mertbakir/resume-a4.git ``` -or add ass a submodule +or add as a submodule ``` git submodule add https://gitlab.com/mertbakir/resume-a4.git themes/resume-a4 @@ -27,19 +35,26 @@ git submodule add https://gitlab.com/mertbakir/resume-a4.git themes/resume-a4 ## Start -1. Copy `config.toml` from `exampleSite` to the root directory of your hugo project. -2. Open `config.toml` and add your relevant information. +1. Copy `config.yaml` from `exampleSite` to the root directory of your hugo project. +2. Open `config.yaml` and add your relevant information. 3. Copy `data` folder from `exampleSite` to the root directory of your hugo project. All you need is that folder. 4. Create your resume in yaml files. -## Notes +## Config File -* Add/Remove sections in `config.toml` -* Set avatar link in `config.toml`, keep your image under `static` folder if you want. -* You can change `style` of the `publications` feature in the config file. - I've created options for APA and IEEE standards. - You can add more standards to `section-publications.html` file in the `layouts\partials` folder if you are looking for something else. -* [Here is the blog post](https://mertbakir.gitlab.io/projects/resume-a4/) about this project. +* You can add/remove sections. +* Add multiple pages as many as you like. (_still, let's not forget the aim here. a resume should be precise. I don't think a recruiter will scroll down on it._) +* Order of the "features" are important in the config file. + +### Custom CSS + +Copy the ```\assets``` folder under the ```exampleSite``` directory if you like to make simple modifications. +### Avatar + +Set avatar link in `config.yaml`, you may keep the image under `static` folder. +### Publications + +You can change `style` of the `publications` feature in the config file. There are options for APA and IEEE standards. Report me on gitlab or send a merge requests if standarts are erroneous. I'm no expert on citation standarts. # License diff --git a/assets/css/_print.scss b/assets/css/_print.scss index cc4b147..ed9e608 100644 --- a/assets/css/_print.scss +++ b/assets/css/_print.scss @@ -51,8 +51,6 @@ } } - .item-title {} - footer { display: none; } diff --git a/assets/css/_section.scss b/assets/css/_section.scss index b2f63f3..1affef6 100644 --- a/assets/css/_section.scss +++ b/assets/css/_section.scss @@ -69,7 +69,6 @@ .job-title { font-size: 14px; - font-style: italic; } .date { diff --git a/exampleSite/config.toml b/config.yaml similarity index 52% rename from exampleSite/config.toml rename to config.yaml index 9cce5f9..01f832b 100644 --- a/exampleSite/config.toml +++ b/config.yaml @@ -1,18 +1,8 @@ -baseURL = "/" -languageCode = "en-us" -title = "Resume | MERT BAKIR" -disableKinds = ["taxonomy", "term", "page", "section", "RSS", "sitemap", "robotsTXT", "404"] -theme = "resume-a4" - -[params] -useFontAwesome = true -css = [ "custom.scss" ] - -[params.header] -avatar = "avatar.jpg" -contact = true -tagline = true -links = true +baseURL: "/" +languageCode: "en-us" +title: "Resume | MERT BAKIR" +disableKinds: ["taxonomy", "term", "page", "section", "RSS", "sitemap", "robotsTXT", "404"] +theme: "resume-a4" # Construct main column, side column and additional page from features # Every column and page may include any features. Some features are @@ -55,73 +45,52 @@ links = true # groupName: title of the group # list: list of strings rendered under the group -# Side panel - -[[params.side]] -feature = "education" - -[[params.side]] -feature = "languages" - -[[params.side]] -feature = "skills" -widget = "word-list" -style = "title-list" # list, compact, title-list - -[[params.side]] -feature = "interests" -widget = "word-list" -style = "list" # list, compact, title-list - - -# First Page - -[[params.pages]] -[[params.pages.features]] -feature = "about" -title = "About Me" - -[[params.pages.features]] -feature = "experience" - - -# Additional Pages - -[[params.pages]] -[[params.pages.features]] -feature = "projects" -collection = "projects" - -[[params.pages.features]] -feature = "publications" -style = "IEEE" # IEEE, APA, else - -[[params.pages.features]] -feature = "awards" - -[[params.pages.features]] -feature = "certificates" -title = "Certifications" - - -# Footer - -[params.footer] -show = true -credits = true -footnote = "You can print this resume in A4 size or save as pdf. | Last update on 2020-09-01." - -[[params.footer.links]] -prefix = "Contact me on" -title = "Linkedin" -url = "https://linkedin.com/in/mertbakir/" -icon = "fab fa-linkedin" - -[[params.footer.links]] -prefix = "Check out my" -title = "Website" -url = "https://mertbakir.gitlab.io/about/" -icon = "fas fa-globe" - - -# p.s. if you know YAML, then you should use that for this file. +params: + useFontAwesome: true + css: + - custom.scss + header: + avatar: avatar.jpg + contact: true + tagline: true + links: false + side: + - feature: languages + - feature: skills + widget: word-list + style: compact # list, compact, title-list + - feature: education + - feature: interests + widget: word-list + style: list + pages: + - features: + - feature: about + title: About Me + - feature: experience + - features: + - feature: projects + collection: projects + - feature: publications + style: IEEE # IEEE, APA, else + - feature: awards + - feature: certificates + title: Certifications + - feature: interests + widget: word-list + style: list + + footer: + show: true + credits: true + footnote: >- + You can print this resume in A4 size or save as pdf. | Last update on 2020-09-01. + links: + - prefix: Contact me on + title: Linkedin + url: 'https://linkedin.com/in/mertbakir/' + icon: fab fa-linkedin + - prefix: Check out my + title: Website + url: 'https://mertbakir.gitlab.io/about/' + icon: fas fa-globe diff --git a/exampleSite/assets/css/custom.scss b/exampleSite/assets/css/custom.scss index 7ceb8ec..ef7d192 100644 --- a/exampleSite/assets/css/custom.scss +++ b/exampleSite/assets/css/custom.scss @@ -13,3 +13,7 @@ main.paper { //line-height: 1.5; } } + +.job_title { + // font-style: italic; +} \ No newline at end of file diff --git a/exampleSite/data/projects.yaml b/exampleSite/data/projects.yaml index 7e07403..e02d49d 100644 --- a/exampleSite/data/projects.yaml +++ b/exampleSite/data/projects.yaml @@ -13,5 +13,5 @@ projects: Bring CI/CD to your resume using YAML and Git." links: - title: Available in GitLab - utl: https://gitlab.com/mertbakir/resume-a4 + url: https://gitlab.com/mertbakir/resume-a4 icon: fab fa-gitlab diff --git a/resources/_gen/assets/scss/css/main.scss_48b060fe05b0a273d182ef83c0605941.content b/resources/_gen/assets/scss/css/main.scss_48b060fe05b0a273d182ef83c0605941.content new file mode 100644 index 0000000..a66b75d --- /dev/null +++ b/resources/_gen/assets/scss/css/main.scss_48b060fe05b0a273d182ef83c0605941.content @@ -0,0 +1 @@ +*{margin:0;padding:0}body{background:#fff;color:#202020;font-family:pt sans,ibm plex sans,arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none;color:#202020}a i{padding:0 .2rem 0 .25rem}a:hover{text-decoration:underline}a:not(.no-external-icon)::after{content:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAQElEQVR42qXKwQkAIAxDUUdxtO6/RBQkQZvSi8I/pL4BoGw/XPkh4XigPmsUgh0626AjRsgxHTkUThsG2T/sIlzdTsp52kSS1wAAAABJRU5ErkJggg==);margin:0 .2rem 0 .25rem}li{list-style-type:square;padding-left:0;list-style-position:inside;margin:.5rem 0}*::-webkit-scrollbar{width:12px;height:8px}*::-webkit-scrollbar-thumb{background-color:#b56b00;outline:1px solid #b56b00}*::-webkit-scrollbar-track{background-color:#ffe1b5}::selection{background:#b56b00;color:#fff}::-moz-selection{background:#b56b00;color:#fff}.paper{position:relative;margin:.5rem auto;padding:.45in .5in;width:210mm;height:297mm;background-color:#fff;-webkit-box-shadow:.2rem .2rem .6rem #aaa;-moz-box-shadow:.2rem .2rem .6rem #aaa;box-shadow:.2rem .2rem .6rem #aaa;box-sizing:border-box;font-size:.88rem}.paper h1,.paper h2,.paper h3{line-height:1.2}.paper h1{margin-bottom:.8rem;font-size:1.5rem}.paper h2{margin-bottom:.4rem;font-size:1.1rem}.paper h3{margin-bottom:.2rem;font-size:1rem}.paper p{margin:.5rem 0;font-size:.88rem;line-height:1.5;text-align:justify}.paper>*:first-child{margin-top:0}main.paper{margin-top:2.5rem;padding-top:0}main.paper .grid{width:100%;height:100%;display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(6,1fr);grid-column-gap:0;grid-row-gap:0}main.paper .grid .flex-row{display:flex;flex-direction:row;justify-content:space-between}main.paper header{grid-area:1/1/2/8;border-bottom:#bfbfbf .05rem solid}main.paper header .title{display:flex;flex-direction:column;justify-content:center;font-family:pt sans,ibm plex sans,arial,sans-serif}main.paper header .title h1{margin-bottom:.4rem;font-size:4rem;color:#202020;letter-spacing:.15rem;text-transform:uppercase}main.paper header .title h2{margin-bottom:.3rem;font-size:1rem}main.paper header .avatar{display:block;margin:1rem auto;padding:1rem;object-fit:cover;height:8.75rem;-webkit-border-radius:50%;-moz-border-radius:50%;-ms-border-radius:50%;-o-border-radius:50%;border-radius:50%}main.paper header a i{padding:0}main.paper .left-column,main.paper .right-column{margin-top:.75rem}main.paper .left-column>*:first-child,main.paper .left-column>*:first-child>*:first-child,main.paper .right-column>*:first-child,main.paper .right-column>*:first-child>*:first-child{margin-top:0}main.paper .left-column{grid-area:2/1/7/6;display:flex;flex-direction:column;justify-content:flex-start;border-right:#bfbfbf .05rem solid;padding-right:1rem}main.paper .right-column{grid-area:2/6/7/8;display:flex;flex-direction:column;justify-content:flex-start;margin-left:.5rem}main.paper .right-column li{list-style-type:none;padding:0}main.paper .right-column h1{margin-bottom:.5rem;font-size:1.2rem}main.paper .right-column h2{margin-bottom:.2rem;font-size:1rem}main.paper .right-column h3{margin-bottom:.1rem;font-size:.8rem}main.paper .right-column p{font-size:.8rem;line-height:1.3}.section{margin-bottom:1.5rem}.section>*:last-child{margin-bottom:0}.right-column .section{margin-bottom:1rem}.section-title{border-left:solid .4rem #202020;padding-left:.5rem;font-family:pt sans,ibm plex sans,arial,sans-serif}.right-column .section-title{border-left:solid .3rem #202020}.item{margin-bottom:.6rem}.item dl dt{display:inline;font-weight:600}.item dl dt::after{content:': '}.item dl dd{display:inline}.item dl dd:not(:last-child)::after{content:"";display:block;margin-bottom:.4em}.item dl dd *:not(:last-child)::after{content:"; ";margin-right:.25rem}.item.group .item{margin-top:0}.item-title{font-weight:600;margin-bottom:2px}.item-info{font-weight:400;font-size:14px}.job-title{font-size:14px}.date{color:#636363}main.paper .right-column .section-education h2,main.paper .left-column .section-education h2,.paper .section-education h2{margin-bottom:0;font-size:1rem}main.paper .right-column .section-languages .item,main.paper .left-column .section-languages .item,.paper .section-languages .item{margin-bottom:.4rem}main.paper .right-column .section-languages h2,main.paper .left-column .section-languages h2,.paper .section-languages h2{margin-bottom:.1rem;font-size:.9rem;line-height:1.1}main.paper .right-column .section-languages h2 span,main.paper .left-column .section-languages h2 span,.paper .section-languages h2 span{font-weight:400;font-size:.8rem}footer{width:8.25in;margin:36px auto;text-align:center;display:flex;flex-flow:column}footer .footer-item{margin-bottom:.5rem}footer .footer-item a{color:#e30a17;padding:0 4px}footer .footer-item a span{font-weight:700}footer .footer-item a:hover{color:#fff;background-color:#e30a17;text-decoration:none;transition:all .35s ease-out;transition-property:all .35s ease-out;-webkit-transition-property:all .35s ease-out;-moz-transition-property:all .35s ease-out;-o-transition-property:all .35s ease-out}footer .footer-item .footer-link:not(:last-child)::after{content:"\00B7"}@media print{@page{size:A4;margin:0}html,body{background:#fff;margin:0;padding:0}.paper,main.paper{margin:0;width:210mm;height:297mm;overflow:hidden;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;page-break-after:always}a{text-decoration:none}a:not(.non-existing)::after{content:" (" attr(href)")";margin:0;font-weight:400;font-size:.75rem;color:#636363}.item-title a::after{content:attr(href);display:block;margin:0}.section-publications a::after{content:attr(href);display:block;margin:0 .75rem}footer{display:none}} \ No newline at end of file diff --git a/resources/_gen/assets/scss/css/main.scss_48b060fe05b0a273d182ef83c0605941.json b/resources/_gen/assets/scss/css/main.scss_48b060fe05b0a273d182ef83c0605941.json new file mode 100644 index 0000000..06d7b1d --- /dev/null +++ b/resources/_gen/assets/scss/css/main.scss_48b060fe05b0a273d182ef83c0605941.json @@ -0,0 +1 @@ +{"Target":"css/main.min.ce35efa31d5a9b210d2d8611078223c82ed49d6f51a468abfe9c6445cabc56ef.css","MediaType":"text/css","Data":{"Integrity":"sha256-zjXvox1amyENLYYRB4IjyC7UnW9RpGir/pxkRcq8Vu8="}} \ No newline at end of file