commit 9754215321d7317e74c4403a3a01caa2545c4271 Author: Simon C Date: Mon May 31 23:48:33 2021 +0200 first commit diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..f7f545c --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "themes/themes/resume-a4"] + path = themes/resume-a4 + url = https://gitlab.com/mertbakir/resume-a4.git diff --git a/assets/css/custom.scss b/assets/css/custom.scss new file mode 100644 index 0000000..6dc6c08 --- /dev/null +++ b/assets/css/custom.scss @@ -0,0 +1,8 @@ +main.paper header .title h1 { + text-transform: inherit; + letter-spacing: inherit; +} + +.item dl dt { + display: block; +} diff --git a/config.yaml b/config.yaml new file mode 100644 index 0000000..aa51bc9 --- /dev/null +++ b/config.yaml @@ -0,0 +1,99 @@ +baseURL: "/" +languageCode: "en-us" +title: "CV - Simon CONSTANS" +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 +# created using generic widgets and you can add easily new features, +# as long as an existing widget can render it as you like. +# +# Common keys: +# feature: name of the feature. For generic features, this is also the root key in the yaml file. +# title: string rendered as the header of the element. Can be disabled with an empty string. +# collection: the base name of the yaml file containing the data. Defaults to "features". +# widget: `layout/partials/section-.html` used to render this element. +# +# Common widgets: +# +# details-list: +# Used by default, if section-.html doesn't exists. +# +# Expects data in format (in yaml file): +# title: the title string +# subtitle: string rendered under title. E.g., company for projects, certificate authority etc. +# date: date string, e.g., when a certificate was given +# details: a text in markdown. +# link: url where the title will link to +# links: list of links rendered as a bullet list below details +# prefix: a string before the link +# title: a string inside the link +# url: the destination of the link +# icon: the icon string, e.g., "fas fa-cloud". rendered inside link and after title. +# +# word-list: +# Handy for skills and interests etc. +# +# Additional keys: +# style: Rendering style for word list. One of: list, compact, or title-list +# +# Expects data in format (in yaml file): +# A list of strings, if style is "list", or +# +# A list of: +# groupName: title of the group +# list: list of strings rendered under the group + +params: + useFontAwesome: true + css: + - custom.scss + header: + avatar: simon.png + contact: true + tagline: true + links: false + side: + - feature: languages + title: Langues + - feature: skills + title: Compétences + widget: word-list + style: compact # list, compact, title-list + - feature: education + title: Diplômes + - feature: interests + title: Intérêts + widget: word-list + style: list + pages: + - features: + # - feature: about + # title: À propos de moi + - feature: experience + title: Expériences + # - features: + # - feature: projects + # collection: projects + # - feature: publications + # style: IEEE # IEEE, APA, else + # - feature: awards + # - feature: interests + # widget: word-list + # style: list + + footer: + show: true + credits: false + footnote: >- + Vous pouvez imprimer le CV ou le sauvegarder en PDF | Dernière mise à jour le 31 mai 2021. + # 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/data/education.yaml b/data/education.yaml new file mode 100644 index 0000000..2cf6c4c --- /dev/null +++ b/data/education.yaml @@ -0,0 +1,12 @@ + +- name: "Cycle supérieur d’ingénierie" + university: "Spécialité génie logiciel" + date: "2006 - 2009" + +- name: "BTS Informatique de Gestion" + university: "Spécialité développement" + date: "2004 - 2006" + +- name: "Baccalauréat scientifique" + university: "Spécialité mathématique" + date: "2003 - 2004" diff --git a/data/experience.yaml b/data/experience.yaml new file mode 100644 index 0000000..e625f31 --- /dev/null +++ b/data/experience.yaml @@ -0,0 +1,36 @@ +- company: Weko, pour un numérique responsable de proximité + website: https://weko.io + roles: + - role: Entrepreneur dans l'Économie Social et Solidaire + details: Création de l'entreprise Weko pour développer le numérique responsable dans la Loire. Je suis aidé par l'incubateur [Ronalpia](https://www.ronalpia.fr/) et je fais parti de la coopérative d'activité et d'emploi [Talents Croisés](https://talentscroises.fr). + date: "Depuis décembre 2020" + +- company: Les Toits du Val, Centrale Électrique Citoyenne + website: https://lestoitsduval.fr + roles: + - role: Président de la SAS + date: Depuis le 19 mai 2021 + - role: Bénévole + date: Depuis 2019 + details: "Nous montons avec une dizaine de bénévole une Centrale Électrique Citoyenne à Saint Germain Laval (42). Nous avons trouvé des financements, des toitures publiques pour l'installation de 200m2 de panneaux photovoltaïques." + +- company: Cozy, Le domicile numérique pour réunir toutes vos données + website: https://cozy.io + details: Cozy a comme but de créer un Cloud Open Source Français pour reprendre le contrôle sur nos données tout en bénéficiant de services personnalisés dans le respect de notre vie privée. + roles: + - role: Développeur Web/mobile sur Cozy Drive puis Cozy Banks + details: Scrum master de l’équipe Banks + date: 2015 - 2019 + +- company: Theodo + website: https://www.theodo.fr/ + roles: + - role: Développeur / Architecte / Manager + details: Participation au développement de la startup Theodo. Mise en place d’une organisation Agile, pour des projets au forfait. Manager de 6 personnes, architecte sur plusieurs projets. + date: "2012 - 2015" + +- company: Infotel + roles: + - role: Développeur Java/iOS + date: "2010 - 2012" + details: Mise en place d'un coffre numérique pour une banque (Création d'une équipe de 4 personnes) / Création des premières applications iPhone de l’entreprise / Intégration continue / Déploiement automatique diff --git a/data/features.yaml b/data/features.yaml new file mode 100644 index 0000000..b225b9d --- /dev/null +++ b/data/features.yaml @@ -0,0 +1,76 @@ +about: + name: Simon CONSTANS + tagline: Entrepreneur / Ingénieur en informatique + phone: 06 80 26 86 61 + email: simon@weko.io + website: simon.tech + # links: + # - title: /in/mertbakir + # url: https://tr.linkedin.com/in/mertbakir + # icon: fab fa-linkedin + # - title: mertbakir + # url: https://gitlab.com/mertbakir/ + # icon: fab fa-gitlab + # - title: mertbakir + # url: https://github.com/mertbakir + # icon: fab fa-github + # details: | + # L'informatique est une + # + # fez + + +skills: + - groupName: Language de programmation + list: + - HTML5 - CSS3 - Javascript + - NodeJS - React - Electron + - Cordova - PHP - Symfony + - Python + + - groupName: Administration système + list: + - Linux - Docker + - Prometheus - Grafana - Alertmanager + - Traefik - Nginx - Drone + +interests: + - Permaculture - Zéro Déchet + - Low-Tech - Open Source + - Alpinisme - Kitesurf - Escalade + +languages: + - name: Français + level: Langue maternelle + + - name: Anglais + level: Technique + +# This will use the default widget: "details-list" +awards: + - title: "Tübitak - Graduation Project" + date: "2017" + subtitle: "A Decision Support System for 3D Cutting Problem" + #details: | + # - add more here if you like to. + # - or just comment out/delete the field. + links: + - title: example + url: https://mertbakir.gitlab.io + icon: fas fa-bolt + prefix: "This is an " # use quotation marks if you want to pass the tailing space. + - title: second link. + url: https://esdfdsfdsf + icon: "-" # you can get rid of the icon by entering dummy text + prefix: "omg" + +certificates: + - title: "Supervised Learning: Regression" + subtitle: Coursera + date: "2020" + link: https://xkcd.com/605/ # This link will be on title level. + + - title: "Supervised Learning: Classification" + subtitle: Coursera + date: "2020" + link: https://xkcd.com/388/ diff --git a/data/projects.yaml b/data/projects.yaml new file mode 100644 index 0000000..e02d49d --- /dev/null +++ b/data/projects.yaml @@ -0,0 +1,17 @@ +projects: +- title: "Simulated Annealing for Traveling Salesman Problem" + subtitle: "Some University" + date: "2016" + details: | + Lorem ipsum dolor sit amet + +- title: "Resume - A4" + subtitle: "mertbakir.gitlab.io/resume" + link: "https://gitlab.com/mertbakir/resume-a4" + date: "2020" + details: | + Bring CI/CD to your resume using YAML and Git." + links: + - title: Available in GitLab + url: https://gitlab.com/mertbakir/resume-a4 + icon: fab fa-gitlab diff --git a/data/publications.yaml b/data/publications.yaml new file mode 100644 index 0000000..bba012e --- /dev/null +++ b/data/publications.yaml @@ -0,0 +1,12 @@ +- authors: + - last_name: Dantzing + first_name: George + - last_name: Sunstrider + middle_name: "Felo'melorn" + first_name: Kael'thas + date: "2006" + title: "Additive Outlier Detection Via Extreme-Value Theory" + journal: Journal of Time Series Analysis + vol: 27 + issue: 5 + page: "29-34" \ No newline at end of file diff --git a/layouts/partials/section-experience.html b/layouts/partials/section-experience.html new file mode 100644 index 0000000..9621127 --- /dev/null +++ b/layouts/partials/section-experience.html @@ -0,0 +1,22 @@ +{{ range .Data.experience }} +
+

{{ .company }}

+ {{ if .details }} +

{{ .details | markdownify }}

+ {{ end }} + {{ range .roles }} +
+
+ {{ .role }} + {{ .date }} +
+ {{ if .details }} +

{{ .details | markdownify }}

+ {{ end }} +
+ {{ end }} + {{ if .website }} +

Site internet

+ {{ end }} +
+{{ end }} diff --git a/resources/_gen/assets/scss/css/custom.scss_48b060fe05b0a273d182ef83c0605941.content b/resources/_gen/assets/scss/css/custom.scss_48b060fe05b0a273d182ef83c0605941.content new file mode 100644 index 0000000..c7869dc --- /dev/null +++ b/resources/_gen/assets/scss/css/custom.scss_48b060fe05b0a273d182ef83c0605941.content @@ -0,0 +1 @@ +main.paper header .title h1{text-transform:inherit;letter-spacing:inherit}.item dl dt{display:block} \ No newline at end of file diff --git a/resources/_gen/assets/scss/css/custom.scss_48b060fe05b0a273d182ef83c0605941.json b/resources/_gen/assets/scss/css/custom.scss_48b060fe05b0a273d182ef83c0605941.json new file mode 100644 index 0000000..5eb4736 --- /dev/null +++ b/resources/_gen/assets/scss/css/custom.scss_48b060fe05b0a273d182ef83c0605941.json @@ -0,0 +1 @@ +{"Target":"css/custom.min.b2ab9ea397b25820a99ddc8ce0b79350f86b72e3042b0ca80000d9ae594a8092.css","MediaType":"text/css","Data":{"Integrity":"sha256-squeo5eyWCCpndyM4LeTUPhrcuMEKwyoAADZrllKgJI="}} \ No newline at end of file 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 diff --git a/static/simon.png b/static/simon.png new file mode 100644 index 0000000..8f0dbd9 Binary files /dev/null and b/static/simon.png differ diff --git a/themes/resume-a4/.editorconfig b/themes/resume-a4/.editorconfig new file mode 100644 index 0000000..b74fccd --- /dev/null +++ b/themes/resume-a4/.editorconfig @@ -0,0 +1,14 @@ +# EditorConfig is awesome: https://EditorConfig.org +root = true + +[*] +end_of_line = lf +insert_final_newline = true +charset = utf-8 + +indent_style = space +indent_size = 2 + +[*.html] +indent_style = tab +indent_size = 4 diff --git a/themes/resume-a4/.gitignore b/themes/resume-a4/.gitignore new file mode 100644 index 0000000..07ebd1e --- /dev/null +++ b/themes/resume-a4/.gitignore @@ -0,0 +1,39 @@ +# Test files +node_modules +npm-debug.log + +# Temporary files +tmp + +# Visual Studio +.vs + +# Adobe files +*.ai +*.psd +*.indd +*.indb + +# Compressed files +*.zip +*.gz +*.tar +*.7z + +# Folder view configuration files +.DS_Store +Desktop.ini + +# Thumbnail cache files +._* +Thumbs.db + +# Sass +.sass-cache + +# Files that might appear on external disks +.Spotlight-V100 +.Trashes + +# Local +/_local diff --git a/themes/resume-a4/LICENSE b/themes/resume-a4/LICENSE new file mode 100644 index 0000000..a22ef4d --- /dev/null +++ b/themes/resume-a4/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2020 MERT BAKIR + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/themes/resume-a4/README.md b/themes/resume-a4/README.md new file mode 100644 index 0000000..e3b3f8c --- /dev/null +++ b/themes/resume-a4/README.md @@ -0,0 +1,71 @@ +# !! 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. +* 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 + +## Download + +1. Create a hugo project. +2. Go to themes folder. +3. Clone this theme. + +``` +cd themes +git clone https://gitlab.com/mertbakir/resume-a4.git +``` + +or add as a submodule + +``` +git submodule add https://gitlab.com/mertbakir/resume-a4.git themes/resume-a4 +``` + +## Start + +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. + +## Config File + +* 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 + +This project is open-sourced and licensed under the terms of the MIT license. I would be happy though, if you give attribution. <3 + +> _I'm open to suggestions and contributions._ + +# My Work Flow + +1. Make changes. +2. Delete `resources` folder in main project. +2. Build your hugo site using the theme. `hugo server` +3. Copy `resources` folder from main project to theme folder `themes\resume-A4\resources` +4. `git commit` and `git push`. diff --git a/themes/resume-a4/archetypes/default.md b/themes/resume-a4/archetypes/default.md new file mode 100644 index 0000000..ac36e06 --- /dev/null +++ b/themes/resume-a4/archetypes/default.md @@ -0,0 +1,2 @@ ++++ ++++ diff --git a/themes/resume-a4/assets/css/_base.scss b/themes/resume-a4/assets/css/_base.scss new file mode 100644 index 0000000..93d415e --- /dev/null +++ b/themes/resume-a4/assets/css/_base.scss @@ -0,0 +1,37 @@ +* { + margin: 0; + padding: 0; +} + +body { + background: #fff; + color: $text-color; + font-family: $font-1; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +a { + text-decoration: none; + color: $text-color; + + i { + padding: 0 0.2rem 0 0.25rem; + } + + &:hover { + text-decoration: underline; + } + + &:not(.no-external-icon)::after { + content: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAQElEQVR42qXKwQkAIAxDUUdxtO6/RBQkQZvSi8I/pL4BoGw/XPkh4XigPmsUgh0626AjRsgxHTkUThsG2T/sIlzdTsp52kSS1wAAAABJRU5ErkJggg==); + margin: 0 0.2rem 0 0.25rem; + } +} + +li { + list-style-type: square; + padding-left: 0px; + list-style-position: inside; + margin: 0.5rem 0; +} diff --git a/themes/resume-a4/assets/css/_footer.scss b/themes/resume-a4/assets/css/_footer.scss new file mode 100644 index 0000000..b37cb14 --- /dev/null +++ b/themes/resume-a4/assets/css/_footer.scss @@ -0,0 +1,35 @@ +footer { + width: 8.25in; + margin: 36px auto; + text-align: center; + display: flex; + flex-flow: column; + + .footer-item { + margin-bottom: 0.5rem; + + a { + span { + font-weight: 700; + } + + color: $turk; + padding: 0 4px; + + &:hover { + color: white; + background-color: $turk; + text-decoration: none; + transition: all 0.35s ease-out; + transition-property: all 0.35s ease-out; + -webkit-transition-property: all 0.35s ease-out; + -moz-transition-property: all 0.35s ease-out; + -o-transition-property: all 0.35s ease-out; + } + } + + .footer-link:not(:last-child)::after { + content: "\00B7"; + } + } +} diff --git a/themes/resume-a4/assets/css/_layout.scss b/themes/resume-a4/assets/css/_layout.scss new file mode 100644 index 0000000..b1bd8ee --- /dev/null +++ b/themes/resume-a4/assets/css/_layout.scss @@ -0,0 +1,158 @@ +.paper { + position: relative; + margin: 0.5rem auto; + padding: 0.45in 0.5in; + width: 210mm; + height: 297mm; + background-color: #fff; + -webkit-box-shadow: 0.2rem 0.2rem 0.6rem #aaa; + -moz-box-shadow: 0.2rem 0.2rem 0.6rem #aaa; + box-shadow: 0.2rem 0.2rem 0.6rem #aaa; + box-sizing: border-box; + + font-size: 0.88rem; + + h1, h2, h3 { + line-height: 1.2; + } + + h1 { + margin-bottom: 0.8rem; + font-size: 1.5rem; + } + + h2 { + margin-bottom: 0.4rem; + font-size: 1.1rem; + } + + h3 { + margin-bottom: 0.2rem; + font-size: 1rem; + } + + p { + margin: 0.5rem 0; + font-size: 0.88rem; + line-height: 1.5; + text-align: justify; + } + + > *:first-child { + margin-top: 0; + } +} + +main.paper { + margin-top: 2.5rem; + padding-top: 0; + + .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; + + .flex-row { + display: flex; + flex-direction: row; + justify-content: space-between; + } + } + + header { + grid-area: 1 / 1 / 2 / 8; + border-bottom: $border-color 0.05rem solid; + + .title { + display: flex; + flex-direction: column; + justify-content: center; + font-family: $font-1; + + h1 { + margin-bottom: 0.4rem; + font-size: 4rem; + color: $text-color; + letter-spacing: 0.15rem; + text-transform: uppercase; + } + + h2 { + margin-bottom: 0.3rem; + font-size: 1rem; + } + } + + .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%; + } + + a i { + padding: 0; + } + } + + .left-column, .right-column { + margin-top: 0.75rem; + + > *:first-child, + > *:first-child > *:first-child { + margin-top: 0; + } + } + + .left-column { + grid-area: 2 / 1 / 7 / 6; + display: flex; + flex-direction: column; + justify-content: flex-start; + border-right: $border-color 0.05rem solid; + padding-right: 1rem; + } + + .right-column { + grid-area: 2 / 6 / 7 / 8; + display: flex; + flex-direction: column; + justify-content: flex-start; + margin-left: 0.5rem; + + li { + list-style-type: none; + padding: 0; + } + + h1 { + margin-bottom: 0.5rem; + font-size: 1.2rem; + } + + h2 { + margin-bottom: 0.2rem; + font-size: 1rem; + } + + h3 { + margin-bottom: 0.1rem; + font-size: 0.8rem; + } + + p { + font-size: 0.8rem; + line-height: 1.3; + } + } +} diff --git a/themes/resume-a4/assets/css/_print.scss b/themes/resume-a4/assets/css/_print.scss new file mode 100644 index 0000000..ed9e608 --- /dev/null +++ b/themes/resume-a4/assets/css/_print.scss @@ -0,0 +1,57 @@ +/* Print */ + +@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; + + &:not(.non-existing)::after { + content: " (" attr(href) ")"; + margin: 0; + font-weight: 400; + font-size: 0.75rem; + color: scale-color($text-color, $lightness: 30%); + } + + .item-title & { + &::after { + content: attr(href); + display: block; + margin: 0; + } + } + + .section-publications & { + &::after { + content: attr(href); + display: block; + margin: 0 0.75rem; + } + } + } + + footer { + display: none; + } +} diff --git a/themes/resume-a4/assets/css/_redundant.scss b/themes/resume-a4/assets/css/_redundant.scss new file mode 100644 index 0000000..6d0b86d --- /dev/null +++ b/themes/resume-a4/assets/css/_redundant.scss @@ -0,0 +1,23 @@ +*::-webkit-scrollbar { + width: 12px; + height: 8px; +} + +*::-webkit-scrollbar-thumb { + background-color: $toprak; + outline: 1px solid $toprak; +} + +*::-webkit-scrollbar-track { + background-color: lighten($toprak, 50%); +} + +::selection { + background: $toprak; + color: white; +} + +::-moz-selection { + background: $toprak; + color: white; +} diff --git a/themes/resume-a4/assets/css/_section.scss b/themes/resume-a4/assets/css/_section.scss new file mode 100644 index 0000000..1affef6 --- /dev/null +++ b/themes/resume-a4/assets/css/_section.scss @@ -0,0 +1,104 @@ +.section { + margin-bottom: 1.5rem; + + > *:last-child { + margin-bottom: 0; + } + + .right-column & { + margin-bottom: 1rem; + } +} + +.section-title { + border-left: solid 0.4rem $text-color; + padding-left: 0.5rem; + font-family: $font-1; + + .right-column & { + border-left: solid 0.3rem $text-color; + } +} + +.item { + margin-bottom: 0.6rem; + + dl { + dt { + display: inline; + font-weight: 600; + + &::after { + content: ': ' + } + } + + dd { + display: inline; + + &:not(:last-child)::after { + content: ""; + display: block; + margin-bottom: 0.4em; + } + + *:not(:last-child)::after { + content: "; "; + margin-right: 0.25rem; + } + + } + } + + &.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: scale-color($text-color, $lightness: 30%); +} + +main.paper .right-column, +main.paper .left-column, +.paper { + .section-education { + h2 { + margin-bottom: 0; + font-size: 1rem; + } + } + + .section-languages { + .item { + margin-bottom: 0.4rem; + } + + h2 { + margin-bottom: 0.1rem; + font-size: 0.9rem; + line-height: 1.1; + + span { + font-weight: 400; + font-size: 0.8rem; + } + } + } +} diff --git a/themes/resume-a4/assets/css/main.scss b/themes/resume-a4/assets/css/main.scss new file mode 100644 index 0000000..cddfc21 --- /dev/null +++ b/themes/resume-a4/assets/css/main.scss @@ -0,0 +1,12 @@ +$font-1: 'PT Sans', 'IBM Plex Sans', 'Arial', sans-serif; +$border-color: #bfbfbf; +$text-color: #202020; +$toprak: #b56b00; +$turk: #E30A17; + +@import "base"; +@import "redundant"; +@import "layout"; +@import "section"; +@import "footer"; +@import "print"; diff --git a/themes/resume-a4/config.yaml b/themes/resume-a4/config.yaml new file mode 100644 index 0000000..01f832b --- /dev/null +++ b/themes/resume-a4/config.yaml @@ -0,0 +1,96 @@ +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 +# created using generic widgets and you can add easily new features, +# as long as an existing widget can render it as you like. +# +# Common keys: +# feature: name of the feature. For generic features, this is also the root key in the yaml file. +# title: string rendered as the header of the element. Can be disabled with an empty string. +# collection: the base name of the yaml file containing the data. Defaults to "features". +# widget: `layout/partials/section-.html` used to render this element. +# +# Common widgets: +# +# details-list: +# Used by default, if section-.html doesn't exists. +# +# Expects data in format (in yaml file): +# title: the title string +# subtitle: string rendered under title. E.g., company for projects, certificate authority etc. +# date: date string, e.g., when a certificate was given +# details: a text in markdown. +# link: url where the title will link to +# links: list of links rendered as a bullet list below details +# prefix: a string before the link +# title: a string inside the link +# url: the destination of the link +# icon: the icon string, e.g., "fas fa-cloud". rendered inside link and after title. +# +# word-list: +# Handy for skills and interests etc. +# +# Additional keys: +# style: Rendering style for word list. One of: list, compact, or title-list +# +# Expects data in format (in yaml file): +# A list of strings, if style is "list", or +# +# A list of: +# groupName: title of the group +# list: list of strings rendered under the group + +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/themes/resume-a4/exampleSite/.gitignore b/themes/resume-a4/exampleSite/.gitignore new file mode 100644 index 0000000..fb3d50a --- /dev/null +++ b/themes/resume-a4/exampleSite/.gitignore @@ -0,0 +1,21 @@ +# Compressed files +*.zip +*.gz +*.tar +*.7z + +# Folder view configuration files +.DS_Store +Desktop.ini + +# Thumbnail cache files +._* +Thumbs.db + +# Sass +.sass-cache + +# Local +/_local +/public/ +/resources/ diff --git a/themes/resume-a4/exampleSite/assets/css/custom.scss b/themes/resume-a4/exampleSite/assets/css/custom.scss new file mode 100644 index 0000000..ef7d192 --- /dev/null +++ b/themes/resume-a4/exampleSite/assets/css/custom.scss @@ -0,0 +1,19 @@ +main.paper { + header .title h1 { + // You might want to change the font size if you have a long or a short name + //font-size: 4rem; + + // You may disable all capitals name with this. + //text-transform: none; + } + + .section-experience p { + // If you have a lot of experiences, you can lower the line height + // to fit more text on a single page. + //line-height: 1.5; + } +} + +.job_title { + // font-style: italic; +} \ No newline at end of file diff --git a/themes/resume-a4/exampleSite/data/education.yaml b/themes/resume-a4/exampleSite/data/education.yaml new file mode 100644 index 0000000..abbc9cf --- /dev/null +++ b/themes/resume-a4/exampleSite/data/education.yaml @@ -0,0 +1,9 @@ +- name: "Msc. Industrial Engineering" + university: "Yildiz Technical University" + date: "2019- 2021" + gpa: "3.71 / 4.00" + +- name: "Bsc. Industrial Engineering" + university: "Gazi University" + date: "2013 - 2017" + gpa : "3.35 / 4.00" \ No newline at end of file diff --git a/themes/resume-a4/exampleSite/data/experience.yaml b/themes/resume-a4/exampleSite/data/experience.yaml new file mode 100644 index 0000000..add91f3 --- /dev/null +++ b/themes/resume-a4/exampleSite/data/experience.yaml @@ -0,0 +1,27 @@ +- company: Uber + roles: + - role: Data Scientist + details: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus ornare sollicitudin fringilla. + Aenean nec volutpat arcu. Maecenas quis tempus risus. Curabitur condimentum ligula in erat pharetra porta. + Nam suscipit nisi a bibendum lacinia. Donec aliquet, nibh dignissim placerat efficit" + date: "10.2020 - Present" + +- company: Google + roles: + - role: Senior Software Developer + details: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus ornare sollicitudin fringilla. + Aenean nec volutpat arcu. Maecenas quis tempus risus. " + date: "06.2019 - 10.2020" + + - role: Junior Software Developer + date: "10.2018 - 06.2019" + details: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus ornare sollicitudin fringilla. + Aenean nec volutpat arcu. Maecenas quis tempus risus. " + +- company: Uber + roles: + - role: Driver + details: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus ornare sollicitudin fringilla. + Aenean nec volutpat arcu. Maecenas quis tempus risus. Curabitur condimentum ligula in erat pharetra porta. + Nam suscipit nisi a bibendum lacinia. Donec aliquet, nibh dignissim placerat efficit" + date: "2017 - 2018" \ No newline at end of file diff --git a/themes/resume-a4/exampleSite/data/features.yaml b/themes/resume-a4/exampleSite/data/features.yaml new file mode 100644 index 0000000..9fbc6b5 --- /dev/null +++ b/themes/resume-a4/exampleSite/data/features.yaml @@ -0,0 +1,82 @@ +about: + name: Mert Bakir + tagline: Data Scientist + phone: "5070*4****" + email: yourmail@yourdomain + links: + - title: /in/mertbakir + url: https://tr.linkedin.com/in/mertbakir + icon: fab fa-linkedin + - title: mertbakir + url: https://gitlab.com/mertbakir/ + icon: fab fa-gitlab + - title: mertbakir + url: https://github.com/mertbakir + icon: fab fa-github + details: | + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus ornare sollicitudin fringilla. + Aenean nec volutpat arcu. Maecenas quis tempus risus. Curabitur condimentum ligula in erat pharetra porta. + + Nam suscipit nisi a bibendum lacinia. + + +skills: + - groupName: Databases & Visualization + list: + - Grafana - Kibana - PowerBI + - InfluxDB - TICK Stack + + - groupName: Data Analysis & Analytics + list: + - Python - R - SQL + - Excel - Minitab - SPSS + - GAMS - PuLP - OR Tools + + - groupName: Programming & Systems + list: + - C# - Git - Docker - NGINX + - Linux - CentOS RHEL + +interests: + - Data Science + - AI Applications + - Optimization Problems + +languages: + - name: Turkish + level: Native + + - name: English + level: Professional + certificates: + - "YDS: 86.25 - 2018" + - "TOEFL: 109 - 2021" + +# This will use the default widget: "details-list" +awards: + - title: "Tübitak - Graduation Project" + date: "2017" + subtitle: "A Decision Support System for 3D Cutting Problem" + #details: | + # - add more here if you like to. + # - or just comment out/delete the field. + links: + - title: example + url: https://mertbakir.gitlab.io + icon: fas fa-bolt + prefix: "This is an " # use quotation marks if you want to pass the tailing space. + - title: second link. + url: https://esdfdsfdsf + icon: "-" # you can get rid of the icon by entering dummy text + prefix: "omg" + +certificates: + - title: "Supervised Learning: Regression" + subtitle: Coursera + date: "2020" + link: https://xkcd.com/605/ # This link will be on title level. + + - title: "Supervised Learning: Classification" + subtitle: Coursera + date: "2020" + link: https://xkcd.com/388/ diff --git a/themes/resume-a4/exampleSite/data/projects.yaml b/themes/resume-a4/exampleSite/data/projects.yaml new file mode 100644 index 0000000..e02d49d --- /dev/null +++ b/themes/resume-a4/exampleSite/data/projects.yaml @@ -0,0 +1,17 @@ +projects: +- title: "Simulated Annealing for Traveling Salesman Problem" + subtitle: "Some University" + date: "2016" + details: | + Lorem ipsum dolor sit amet + +- title: "Resume - A4" + subtitle: "mertbakir.gitlab.io/resume" + link: "https://gitlab.com/mertbakir/resume-a4" + date: "2020" + details: | + Bring CI/CD to your resume using YAML and Git." + links: + - title: Available in GitLab + url: https://gitlab.com/mertbakir/resume-a4 + icon: fab fa-gitlab diff --git a/themes/resume-a4/exampleSite/data/publications.yaml b/themes/resume-a4/exampleSite/data/publications.yaml new file mode 100644 index 0000000..bba012e --- /dev/null +++ b/themes/resume-a4/exampleSite/data/publications.yaml @@ -0,0 +1,12 @@ +- authors: + - last_name: Dantzing + first_name: George + - last_name: Sunstrider + middle_name: "Felo'melorn" + first_name: Kael'thas + date: "2006" + title: "Additive Outlier Detection Via Extreme-Value Theory" + journal: Journal of Time Series Analysis + vol: 27 + issue: 5 + page: "29-34" \ No newline at end of file diff --git a/themes/resume-a4/images/one_page_resume.png b/themes/resume-a4/images/one_page_resume.png new file mode 100644 index 0000000..8475337 Binary files /dev/null and b/themes/resume-a4/images/one_page_resume.png differ diff --git a/themes/resume-a4/images/screenshot.png b/themes/resume-a4/images/screenshot.png new file mode 100644 index 0000000..704bbc8 Binary files /dev/null and b/themes/resume-a4/images/screenshot.png differ diff --git a/themes/resume-a4/images/tn.png b/themes/resume-a4/images/tn.png new file mode 100644 index 0000000..f4bc4dd Binary files /dev/null and b/themes/resume-a4/images/tn.png differ diff --git a/themes/resume-a4/layouts/home.html b/themes/resume-a4/layouts/home.html new file mode 100644 index 0000000..10c4558 --- /dev/null +++ b/themes/resume-a4/layouts/home.html @@ -0,0 +1,59 @@ + + + + + + + {{ $style := resources.Get "css/main.scss" | toCSS | minify | fingerprint }} + + + {{ if .Site.Params.useFontAwesome }} + + {{ end }} + {{ range .Site.Params.css }} + {{ $style := resources.Get (printf "css/%s" .) }} + {{ if $style }} + + {{ end }} + {{ end }} + {{ .Site.Title }} + + + +
+
+
+ {{ partial "header" (dict "Header" .Site.Params.header "Data" .Site.Data "useFontAwesome" .Site.Params.useFontAwesome) }} +
+ + {{ range first 1 .Site.Params.pages }} +
+ {{ range .features }} + {{ partial "section" (dict "Feature" . "Data" $.Site.Data "useFontAwesome" $.Site.Params.useFontAwesome) }} + {{ end }} +
+ {{ end }} + +
+ {{ range .Site.Params.side }} + {{ partial "section" (dict "Feature" . "Data" $.Site.Data "useFontAwesome" $.Site.Params.useFontAwesome) }} + {{ end }} +
+
+
+ + {{ range after 1 .Site.Params.pages }} +
+ {{ range .features }} + {{ partial "section" (dict "Feature" . "Data" $.Site.Data "useFontAwesome" $.Site.Params.useFontAwesome) }} + {{ end }} +
+ {{ end }} + + {{ if .Site.Params.footer.show }} +
+ {{ partial "footer" (dict "Footer" .Site.Params.footer "useFontAwesome" .Site.Params.useFontAwesome) }} +
+ {{ end }} + + diff --git a/themes/resume-a4/layouts/partials/footer.html b/themes/resume-a4/layouts/partials/footer.html new file mode 100644 index 0000000..8a05b1c --- /dev/null +++ b/themes/resume-a4/layouts/partials/footer.html @@ -0,0 +1,27 @@ +{{ if .Footer.links }} + + {{ range .Footer.links }} + + {{ .prefix }} + + {{ .title }} + {{ if and $.useFontAwesome .icon }}{{ end }} + + + {{ end }} + +{{ end }} + + + {{ .Footer.footnote }} + + +{{ if .Footer.credits }} + + The open-source theme Resume-A4 is designed by + Mert Bakır  +
+ and template code by + Jaakko Kantojärvi  +
+{{ end }} diff --git a/themes/resume-a4/layouts/partials/header.html b/themes/resume-a4/layouts/partials/header.html new file mode 100644 index 0000000..3ddbd6b --- /dev/null +++ b/themes/resume-a4/layouts/partials/header.html @@ -0,0 +1,34 @@ +
+ {{ with .Data.features.about }} +

{{ .name }}

+ {{ if $.Header.tagline }}

{{ .tagline }}

{{end}} + {{ if $.Header.contact -}} + + {{- with .phone -}} + {{- if $.useFontAwesome }} {{ end -}} + {{- . -}} + {{- end -}} + {{- if and .phone .email }} | {{ end -}} + {{- with .email -}} + {{- if $.useFontAwesome }} {{ end -}} + {{- . -}} + {{- end -}} + + {{- end }} + {{ if $.Header.links -}} + + {{- $last := sub (len .links) 1 -}} + {{- range $i, $e := .links -}} + + {{- if and $e.icon $.useFontAwesome }} {{ end -}} + {{- $e.title -}} + + {{- if ne $i $last }} | {{ end -}} + {{- end -}} + + {{ end }} + {{ end }} +
+{{ if .Header.avatar }} +
+{{ end }} diff --git a/themes/resume-a4/layouts/partials/markdown.html b/themes/resume-a4/layouts/partials/markdown.html new file mode 100644 index 0000000..e8e0513 --- /dev/null +++ b/themes/resume-a4/layouts/partials/markdown.html @@ -0,0 +1,6 @@ +{{ $markdown := . | markdownify }} +{{ if strings.Contains $markdown "

" }} + {{ $markdown }} +{{ else }} +

{{ $markdown }}

+{{ end }} diff --git a/themes/resume-a4/layouts/partials/section-about.html b/themes/resume-a4/layouts/partials/section-about.html new file mode 100644 index 0000000..debedaf --- /dev/null +++ b/themes/resume-a4/layouts/partials/section-about.html @@ -0,0 +1 @@ +{{ partial "markdown" .Data.features.about.details }} diff --git a/themes/resume-a4/layouts/partials/section-details-list.html b/themes/resume-a4/layouts/partials/section-details-list.html new file mode 100644 index 0000000..c36e5ca --- /dev/null +++ b/themes/resume-a4/layouts/partials/section-details-list.html @@ -0,0 +1,32 @@ +{{- $collection := index .Data (.Feature.collection | default "features" ) -}} +{{ range (index $collection .Feature.feature) }} +
+

+ {{- if .link -}} + {{ .title }} + {{- else -}} + {{ .title }} + {{- end -}} +

+ {{ if and .subtitle .date }} + {{- .subtitle | markdownify }} - {{ .date }} + {{- else if .subtitle }} + {{- .subtitle | markdownify }} + {{- else if .date }} + {{- .date }} + {{- end }} + {{ if .details }} + {{- partial "markdown" .details }} + {{- end }} + {{ if .links }} + + {{ end }} +
+{{ end }} diff --git a/themes/resume-a4/layouts/partials/section-education.html b/themes/resume-a4/layouts/partials/section-education.html new file mode 100644 index 0000000..80e71eb --- /dev/null +++ b/themes/resume-a4/layouts/partials/section-education.html @@ -0,0 +1,7 @@ +{{ range .Data.education }} +
+

{{ .name }}

+ {{ .university }}
+ {{ .date }}{{ if .gpa }} | GPA: {{ .gpa }}{{ end }} +
+{{ end }} diff --git a/themes/resume-a4/layouts/partials/section-experience.html b/themes/resume-a4/layouts/partials/section-experience.html new file mode 100644 index 0000000..1747465 --- /dev/null +++ b/themes/resume-a4/layouts/partials/section-experience.html @@ -0,0 +1,19 @@ +{{ range .Data.experience }} +
+

{{ .company }}

+ {{ if .details }} +

{{ .details | markdownify }}

+ {{ end }} + {{ range .roles }} +
+
+ {{ .role }} + {{ .date }} +
+ {{ if .details }} +

{{ .details | markdownify }}

+ {{ end }} +
+ {{ end }} +
+{{ end }} diff --git a/themes/resume-a4/layouts/partials/section-json.html b/themes/resume-a4/layouts/partials/section-json.html new file mode 100644 index 0000000..13da1ae --- /dev/null +++ b/themes/resume-a4/layouts/partials/section-json.html @@ -0,0 +1 @@ +
{{ . | jsonify (dict "indent" "  ") }}
diff --git a/themes/resume-a4/layouts/partials/section-languages.html b/themes/resume-a4/layouts/partials/section-languages.html new file mode 100644 index 0000000..a363381 --- /dev/null +++ b/themes/resume-a4/layouts/partials/section-languages.html @@ -0,0 +1,11 @@ +{{ range .Data.features.languages }} +
+

+ {{- .name -}} + - {{ .level }} +

+ {{ range .certificates }} +
  • {{.}}
  • + {{ end }} +
    +{{ end }} diff --git a/themes/resume-a4/layouts/partials/section-publications.html b/themes/resume-a4/layouts/partials/section-publications.html new file mode 100644 index 0000000..d7c5bdb --- /dev/null +++ b/themes/resume-a4/layouts/partials/section-publications.html @@ -0,0 +1,63 @@ +{{ range .Data.publications }} + +{{ end }} diff --git a/themes/resume-a4/layouts/partials/section-word-list.html b/themes/resume-a4/layouts/partials/section-word-list.html new file mode 100644 index 0000000..273c22b --- /dev/null +++ b/themes/resume-a4/layouts/partials/section-word-list.html @@ -0,0 +1,37 @@ +{{- $collection := index .Data (.Feature.collection | default "features" ) -}} +{{- $data := index $collection .Feature.feature }} +{{- if eq .Feature.style "list" -}} +
    + {{ range $data }} + {{- if reflect.IsMap . -}} + {{- range .list -}} +
  • {{.}}
  • + {{- end -}} + {{- else -}} +
  • {{.}}
  • + {{- end -}} + {{ end }} +
    +{{- else if eq .Feature.style "compact" -}} +
    +
    + {{ range $data }} +
    {{ .groupName }}
    +
    + {{- range .list -}} + {{.}} + {{- end -}} +
    + {{ end }} +
    +
    +{{- else -}} + {{ range $data }} +
    +

    {{ .groupName }}

    + {{ range .list }} +
  • {{.}}
  • + {{ end }} +
    + {{ end }} +{{- end -}} diff --git a/themes/resume-a4/layouts/partials/section.html b/themes/resume-a4/layouts/partials/section.html new file mode 100644 index 0000000..e8eba85 --- /dev/null +++ b/themes/resume-a4/layouts/partials/section.html @@ -0,0 +1,12 @@ +
    + {{- if or (not (isset .Feature "title")) .Feature.title -}} +

    {{ .Feature.title | default (title .Feature.feature) }}

    + {{- end -}} + {{- $partial := (printf "section-%s.html" (default .Feature.feature .Feature.widget)) -}} + {{- $collection := index .Data (default "features" .Feature.collection) -}} + {{- if and (not (templates.Exists (printf "partials/%s" $partial))) (isset $collection .Feature.feature) -}} + {{ partial "section-details-list.html" . }} + {{- else -}} + {{ partial $partial . }} + {{- end -}} +
    diff --git a/themes/resume-a4/resources/_gen/assets/scss/css/main.scss_48b060fe05b0a273d182ef83c0605941.content b/themes/resume-a4/resources/_gen/assets/scss/css/main.scss_48b060fe05b0a273d182ef83c0605941.content new file mode 100644 index 0000000..a66b75d --- /dev/null +++ b/themes/resume-a4/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/themes/resume-a4/resources/_gen/assets/scss/css/main.scss_48b060fe05b0a273d182ef83c0605941.json b/themes/resume-a4/resources/_gen/assets/scss/css/main.scss_48b060fe05b0a273d182ef83c0605941.json new file mode 100644 index 0000000..06d7b1d --- /dev/null +++ b/themes/resume-a4/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 diff --git a/themes/resume-a4/static/avatar.jpg b/themes/resume-a4/static/avatar.jpg new file mode 100644 index 0000000..00f6159 Binary files /dev/null and b/themes/resume-a4/static/avatar.jpg differ diff --git a/themes/resume-a4/theme.toml b/themes/resume-a4/theme.toml new file mode 100644 index 0000000..5bfa7cd --- /dev/null +++ b/themes/resume-a4/theme.toml @@ -0,0 +1,15 @@ +# theme.toml template for a Hugo theme +# See https://github.com/gohugoio/hugoThemes#themetoml for an example + +name = "Resume A4" +license = "MIT" +licenselink = "https://gitlab.com/mertbakir/resume-A4/LICENSE" +description = " Write your resume in yaml. Simple, easy to use, single page, A4-sized Resume generator." +homepage = "https://gitlab.com/mertbakir/resume-A4" +tags = ["resume", "single page", "simple"] +features = [] +min_version = "0.41.0" + +[author] + name = "MERT BAKIR" + homepage = "https://mertbakir.gitlab.io" \ No newline at end of file