commit 0e5638da3eefb77a0ae9929fac20a2797ab9b561 Author: Gregan Date: Mon May 3 09:15:49 2021 +0200 Initial commit diff --git a/README.md b/README.md new file mode 100644 index 0000000..65346fb --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +# petit_bou +vous pouvez accerder a mon cv sur http/petit_bougitlab.io diff --git a/config-nginx.toml b/config-nginx.toml new file mode 100644 index 0000000..5ba88a7 --- /dev/null +++ b/config-nginx.toml @@ -0,0 +1,14 @@ +baseURL = "https://cv.pavilion.gn" +languageCode = "fr" +theme = "almeida-cv" +title = "CV de Aboubakar- CV" + +[params] +colorDark = "#666" +colorLight = "#fff" +colorPageBackground = "#ddd" +colorPrimary = "#e3bfb8" +colorPrimaryText = "#fff" +colorRightColumnBackground = "#f5f5f5" +colorSecondary = "#A8806D" +pages = 1 diff --git a/config.toml b/config.toml new file mode 100644 index 0000000..1a31cd8 --- /dev/null +++ b/config.toml @@ -0,0 +1,14 @@ +baseURL = "https://greglebreton.gitlab.io/cv" +languageCode = "fr" +theme = "almeida-cv" +title = "greg CV" + +[params] +colorDark = "#666" +colorLight = "#fff" +colorPageBackground = "#ddd" +colorPrimary = "#e3bfb8" +colorPrimaryText = "#fff" +colorRightColumnBackground = "#f5f5f5" +colorSecondary = "#A8806D" +pages = 1 diff --git a/data/content.yaml b/data/content.yaml new file mode 100644 index 0000000..64c182d --- /dev/null +++ b/data/content.yaml @@ -0,0 +1,81 @@ +BasicInfo: + FirstName: Grégory + LastName: Lebreton + Photo: img/profile.jpg + + Contacts: + - Icon: fas fa-phone + Info: 06.34.33.21.99 + - Icon: fas fa-envelope + Info: greg.lebreton@hotmail.com + - Icon: fas fa-globe + Info: https://greglebreton.gitlab.io/hugo-site/ + - Icon: fas fa-map-marker-alt + Info: Paris + +Profile: Je suis en formateur technicien DevOps au Passe Numérique Pro en partenariat avec le Conservatoire National des Arts et Métiers de Paris. + +Experience: + - Employer: SAFRAN AE + Place: Montereau-sur-Jard + Positions: + - Title: Stagiaire développeur C-sharp + Date: Avr 2021 - mai 2021 + Details: + - Apprentissage C-sharp, Secteur BlockChain Crypto + - Participation au développement d'un jeu + - Développement outil Web + + - Employer: Disneyland Paris + Place: Chessy 77 + Positions: + - Title: Opérateur Animateur Attraction + Date: Février 2002 - Septembre 2007 + Details: + - Sécurité des personnes + - Respect des procédures + + +Education: + - Course: Diplôme Concepteur Développeur Informatique + Place: AFPA Paris XII + Date: Mars 2017 - Décembre 2017 + Details: Technologies de l'information + +Skills: + - Family: Devops + Items: + - Python + - GIT + - VS code (IDE) + - Linux + - Django + - Bash + - Hugo + - Docker + - Virtualbox + - Apache + - Nginx + - Kubernetes + - GCP + + +Languages: + - Name: Anglais + Level: B1 + - Name: ESpagnol + Level: B1 + - Name: Allemand + Level: B1 + +Diplomas: + - Concepteur Développeur Informatique + - Baccalauréat ES + - Brevet des colléges + +Interests: + - Réalité virtuelle + - Films / séries + - Musique + - Skateboard + diff --git a/layouts/404.html b/layouts/404.html new file mode 100644 index 0000000..b3daf48 --- /dev/null +++ b/layouts/404.html @@ -0,0 +1,16 @@ + + + {{ partial "head.html" . }} + +
+
+

Page not found :(

+

+ You're an explorer, aren't ya?
+ But the page you are attempting to access cannot be found.
+ Go back to the main page +

+
+
+ + diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html new file mode 100644 index 0000000..5f8e2ec --- /dev/null +++ b/layouts/_default/baseof.html @@ -0,0 +1,11 @@ + + + {{- partial "head.html" . -}} + + {{- partial "header.html" . -}} +
+ {{- block "main" . }}{{- end }} +
+ {{- partial "footer.html" . -}} + + diff --git a/layouts/_default/list.html b/layouts/_default/list.html new file mode 100644 index 0000000..e69de29 diff --git a/layouts/_default/single.html b/layouts/_default/single.html new file mode 100644 index 0000000..e69de29 diff --git a/layouts/content/_redirects b/layouts/content/_redirects new file mode 100644 index 0000000..eb70c84 --- /dev/null +++ b/layouts/content/_redirects @@ -0,0 +1 @@ +/* /404.html 404 \ No newline at end of file diff --git a/layouts/index.html b/layouts/index.html new file mode 100644 index 0000000..5081ad6 --- /dev/null +++ b/layouts/index.html @@ -0,0 +1,25 @@ + + + {{ partial "head.html" . }} + +
+
+

{{.Site.Data.content.BasicInfo.FirstName}} {{.Site.Data.content.BasicInfo.LastName}}

+ + {{ partial "_profile.html" . }} + {{ partial "_experience.html" . }} + {{ partial "_education.html" . }} + +
+
+ + {{ partial "_avatar.html" . }} + {{ partial "_contacts.html" . }} + {{ partial "_skills.html" . }} + {{ partial "_languages.html" . }} + {{ partial "_diplomas.html" . }} + {{ partial "_interests.html" . }} +
+
+ + \ No newline at end of file diff --git a/layouts/partials/_avatar.html b/layouts/partials/_avatar.html new file mode 100644 index 0000000..b903168 --- /dev/null +++ b/layouts/partials/_avatar.html @@ -0,0 +1,7 @@ +{{ if .Site.Data.content.BasicInfo.Photo }} +
+
+ photo of me +
+
+{{ end }} \ No newline at end of file diff --git a/layouts/partials/_contacts.html b/layouts/partials/_contacts.html new file mode 100644 index 0000000..8089052 --- /dev/null +++ b/layouts/partials/_contacts.html @@ -0,0 +1,11 @@ +{{ if .Site.Data.content.BasicInfo.Contacts }} +
+ +
+{{ end }} diff --git a/layouts/partials/_diplomas.html b/layouts/partials/_diplomas.html new file mode 100644 index 0000000..7cb035c --- /dev/null +++ b/layouts/partials/_diplomas.html @@ -0,0 +1,14 @@ +{{ if .Site.Data.content.Diplomas }} +
+
+

Diplomes

+
+
+
    + {{ range .Site.Data.content.Diplomas }} +
  • {{ . | safeHTML }}
  • + {{ end }} +
+
+
+{{ end }} diff --git a/layouts/partials/_education.html b/layouts/partials/_education.html new file mode 100644 index 0000000..eb7f7d8 --- /dev/null +++ b/layouts/partials/_education.html @@ -0,0 +1,20 @@ +{{ if .Site.Data.content.Education }} +
+
+

+ Formations +

+
+
+ {{ range .Site.Data.content.Education }} +
+

{{ .Course | safeHTML }}

+

{{ .Place | safeHTML }}

+

{{ .Date | safeHTML }}

+
{{ .Details | safeHTML }}
+
+
+ {{ end }} +
+
+{{ end }} diff --git a/layouts/partials/_experience.html b/layouts/partials/_experience.html new file mode 100644 index 0000000..47e4bc4 --- /dev/null +++ b/layouts/partials/_experience.html @@ -0,0 +1,43 @@ +{{ if .Site.Data.content.Experience }} +
+
+

Experiences

+
+
+
+ {{ range .Site.Data.content.Experience }} +
+
+

+ {{ .Employer | safeHTML }} +

+

{{ .Place | safeHTML }}

+
+ {{ range .Positions }} +
+
+

+ {{ .Title | safeHTML}} +

+

{{ .Date | safeHTML }}

+
+
    + {{ range .Details }} +
  • {{ . }}
  • + {{ end }} +
+
+
    + {{ range .Badges }} +
  • {{ . }}
  • + {{ end }} +
+
+
+ {{ end }} +
+ {{ end }} +
+
+
+{{ end }} diff --git a/layouts/partials/_interests.html b/layouts/partials/_interests.html new file mode 100644 index 0000000..07ad06e --- /dev/null +++ b/layouts/partials/_interests.html @@ -0,0 +1,14 @@ +{{ if .Site.Data.content.Interests }} +
+
+

centre d'intérêt

+
+
+
    + {{ range .Site.Data.content.Interests }} +
  • {{ . | safeHTML }}
  • + {{ end }} +
+
+
+{{ end }} diff --git a/layouts/partials/_languages.html b/layouts/partials/_languages.html new file mode 100644 index 0000000..e918ac6 --- /dev/null +++ b/layouts/partials/_languages.html @@ -0,0 +1,17 @@ +{{ if .Site.Data.content.Languages }} +
+
+

Langues

+
+
+
    + {{ range .Site.Data.content.Languages }} +
  • +
    {{ .Name | safeHTML }}
    +
    {{ .Level | safeHTML }}
    +
  • + {{ end }} +
+
+
+{{ end }} diff --git a/layouts/partials/_profile.html b/layouts/partials/_profile.html new file mode 100644 index 0000000..0a280ee --- /dev/null +++ b/layouts/partials/_profile.html @@ -0,0 +1,10 @@ +{{ if .Site.Data.content.Profile }} +
+
+

Technicien DevOps

+
+
+

{{.Site.Data.content.Profile | safeHTML }}

+
+
+{{ end }} diff --git a/layouts/partials/_skills.html b/layouts/partials/_skills.html new file mode 100644 index 0000000..97cd366 --- /dev/null +++ b/layouts/partials/_skills.html @@ -0,0 +1,21 @@ +{{ if .Site.Data.content.Skills }} +
+
+

Compétences

+
+
+
    +
  • + {{ range .Site.Data.content.Skills }} +
      + {{ .Family | safeHTML }} + {{ range .Items }} +
    • {{ . | safeHTML }}
    • + {{ end }} +
    + {{ end }} +
  • +
+
+
+{{ end }} diff --git a/layouts/partials/head.html b/layouts/partials/head.html new file mode 100644 index 0000000..07f35a6 --- /dev/null +++ b/layouts/partials/head.html @@ -0,0 +1,13 @@ + + + + {{ .Site.Title }} + + + + + + + {{ $style := resources.Get "sass/main.scss" | resources.ExecuteAsTemplate "style.main.scss" . | toCSS | minify | fingerprint }} + + \ No newline at end of file diff --git a/public/404.html b/public/404.html new file mode 100644 index 0000000..c138234 --- /dev/null +++ b/public/404.html @@ -0,0 +1,28 @@ + + + + + + CV de Aboubakar- CV + + + + + + + + + + +
+
+

Page not found :(

+

+ You're an explorer, aren't ya?
+ But the page you are attempting to access cannot be found.
+ Go back to the main page +

+
+
+ + diff --git a/public/categories/index.xml b/public/categories/index.xml new file mode 100644 index 0000000..da04f79 --- /dev/null +++ b/public/categories/index.xml @@ -0,0 +1,10 @@ + + + + Categories on CV de Aboubakar- CV + https://petit_bou.gitlab.io/categories/ + Recent content in Categories on CV de Aboubakar- CV + Hugo -- gohugo.io + fr + + diff --git a/public/img/Aboubakar Hydara.png b/public/img/Aboubakar Hydara.png new file mode 100644 index 0000000..a8245fc Binary files /dev/null and b/public/img/Aboubakar Hydara.png differ diff --git a/public/img/avatar.jpg b/public/img/avatar.jpg new file mode 100644 index 0000000..b2677e0 Binary files /dev/null and b/public/img/avatar.jpg differ diff --git a/public/index.html b/public/index.html new file mode 100644 index 0000000..e800cfe --- /dev/null +++ b/public/index.html @@ -0,0 +1,341 @@ + + + + + + + CV de Aboubakar- CV + + + + + + + + + + +
+
+

Aboubakar Hydara

+ + +
+
+

Profile

+
+
+

Je suis en formation au Passe Numérique Pro dans la spécialité Technicien DevOps au Conservatoire National des Arts et Métiers de Paris. Je suis, depuis toujours, fasciné par le milieu de l’informatique.

+
+
+ + + +
+
+

Experience

+
+
+
+ +
+
+

+ SOS MASTER +

+

Paris 16

+
+ +
+
+

+ Technicien de maintenance +

+

juin 2020

+
+
    + +
  • Télécharger un systéme d'exploitation sur PC et MAC
  • + +
  • Changer pièce informatique
  • + +
+
+
    + +
+
+
+ +
+ +
+
+

+ Charonne Buro +

+

Paris 11

+
+ +
+
+

+ Technicien de maintenance informatique +

+

fév 2020

+
+
    + +
  • Changement un système d'exploitation
  • + +
  • Tester des manettes
  • + +
  • Changer des RAM et des disque dur
  • + +
+
+
    + +
+
+
+ +
+ +
+
+

+ Home Sweet Mômes +

+

Paris 18

+
+ +
+
+

+ Animateur bénévole +

+

Depuis Mai 2020

+
+
    + +
  • mise en palce et animation dacatvités ludique sur trottoirs
  • + +
  • Tenue du stande et vente de produits consommables en vue de soutenir l'association
  • + +
+
+
    + +
+
+
+ +
+ +
+
+

+ ASCEAF +

+

Paris 19

+
+ +
+
+

+ Animateur +

+

Depuis dec 2019

+
+
    + +
  • Accompagnement en sortie
  • + +
  • Accueil et animation d'atelier ludique et sportifs
  • + +
+
+
    + +
+
+
+ +
+ +
+
+
+ + + +
+
+

+ Education +

+
+
+ +
+

Diplôme du cnam IV +30 crédits ETC

+

Conservatoire National des Arts et Métiers de Paris 03

+

Nov 2020 - Mai 2021

+
Technicien DevOps
+
+ +
+

PEE (Parcours Entrée dans l’Emploi)

+

Laser Paris 20

+

Oct 2020 - Nov 2020

+
Elaboration de projet professionnelle (informatique)
+
+ +
+

PEE (Parcours Entrée dans l’Emploi)

+

SYNERGIE Paris 11

+

Jan 2020 - Sept 2020

+
Elaboration de projet professionnelle
+
+ +
+
+ + + +
+
+ + +
+
+ photo of me +
+
+ + +
+
    + +
  • + 06.05.81.54.20 +
  • + +
  • + aboubakarhydara51@gmail.com +
  • + +
  • + petit_bou.gitlab.io +
  • + +
  • + Paris +
  • + +
+
+ + + +
+
+

Compétences

+
+
+
    +
  • + +
      + Devops + +
    • Python
    • + +
    • GIT
    • + +
    • VS code (IDE)
    • + +
    • Linux
    • + +
    • Django
    • + +
    • Bash
    • + +
    • Hugo
    • + +
    + +
  • +
+
+
+ + + +
+
+

Langues

+
+
+
    + +
  • +
    English
    +
    B1
    +
  • + +
  • +
    Spanish
    +
    B1
    +
  • + +
+
+
+ + + +
+
+

Diplomes

+
+
+
    + +
  • Certificat PRAP(Préventiondes Risques liés à l’Activité Physique) (2020)
  • + +
  • Brevet des colléges (2017)
  • + +
+
+
+ + + +
+
+

Interests

+
+
+
    + +
  • Animes
  • + +
  • Séries
  • + +
  • Films
  • + +
  • Musique
  • + +
  • Basket
  • + +
+
+
+ + +
+
+ + \ No newline at end of file diff --git a/public/index.xml b/public/index.xml new file mode 100644 index 0000000..7453ff7 --- /dev/null +++ b/public/index.xml @@ -0,0 +1,10 @@ + + + + CV de Aboubakar- CV + https://petit_bou.gitlab.io/ + Recent content on CV de Aboubakar- CV + Hugo -- gohugo.io + fr + + diff --git a/public/sitemap.xml b/public/sitemap.xml new file mode 100644 index 0000000..d786f2c --- /dev/null +++ b/public/sitemap.xml @@ -0,0 +1,17 @@ + + + + + https://petit_bou.gitlab.io/categories/ + + + + https://petit_bou.gitlab.io/ + + + + https://petit_bou.gitlab.io/tags/ + + + diff --git a/public/style.main.min.f7f492e636dbf84b8580bef034700249df6efeef94d571791e312de0ba8f506d.css b/public/style.main.min.f7f492e636dbf84b8580bef034700249df6efeef94d571791e312de0ba8f506d.css new file mode 100644 index 0000000..e4767f8 --- /dev/null +++ b/public/style.main.min.f7f492e636dbf84b8580bef034700249df6efeef94d571791e312de0ba8f506d.css @@ -0,0 +1 @@ +@charset "UTF-8";.content{position:absolute;overflow:hidden}.content__left{float:left;width:56rem;height:100%;padding:3rem 4rem}@media screen{.content__left::after{content:'2020 © by Inês Almeida | ines-almeida.com';height:4rem;width:100%;position:absolute;bottom:.5rem;color:#e6e6e6}}.content__right{position:absolute;float:right;width:24rem;background-color:#f5f5f5;height:100%;padding:2rem 3rem;right:1rem;-webkit-box-shadow:.5rem 1rem 1.5rem rgba(102,102,102,.15);-moz-box-shadow:.5rem 1rem 1.5rem rgba(102,102,102,.15);box-shadow:.5rem 1rem 1.5rem rgba(102,102,102,.15)}*,*::after,*::before{margin:0;padding:0;box-sizing:inherit}html{font-size:62.5%;background-color:#ddd}@media print{html{background-color:#fff}}.content{width:80rem;min-height:113.16129036rem;background-color:#fff}@media screen and (min-width:60rem){.content{margin:6rem 0;-webkit-box-shadow:1rem 2rem 3rem rgba(102,102,102,.3);-moz-box-shadow:1rem 2rem 3rem rgba(102,102,102,.3);box-shadow:1rem 2rem 3rem rgba(102,102,102,.3);position:absolute;left:50%;transform:translateX(-50%)}}@media print{.content{margin:0;height:113.16129036rem}}body{box-sizing:border-box}@media print{@page{margin:0;size:A4}}::selection{color:#fff;background-color:rgba(213,158,147,.6)}body{font-family:roboto,sans-serif;font-weight:300;line-height:1.7;font-size:1.12rem;color:#666}.mainHeading{text-transform:uppercase;font-size:5rem;color:#a8806d}.mainHeading span{color:#e3bfb8}.section__title{font-size:2.1rem;color:#666}h1,h2{text-transform:uppercase;font-family:oswald,sans-serif}.section{display:block;margin-bottom:2rem}.section__heading{width:100%;overflow:hidden}.section__title{position:relative}.section__title::after{content:'';position:absolute;border-top:1px solid;border-bottom:1px solid;border-color:#a8806d;width:50rem;height:4px;margin-left:1.5rem;margin-top:1.5rem;transition:all .5s ease-in-out}.section__title:hover::after{border-color:#e3bfb8}.sideSection{display:block;margin-bottom:3rem}@media print{.sideSection{page-break-inside:avoid}}.sideSection__heading{width:100%;overflow:hidden;text-align:center;margin-bottom:1rem}.sideSection__title{position:relative}.sideSection__title::after,.sideSection__title::before{content:'';position:absolute;border-top:1px solid #a8806d;border-bottom:1px solid #a8806d;width:10rem;height:4px;margin-top:1.1rem}.sideSection__title::after{margin-left:1rem}.sideSection__title::before{margin-left:-11rem}.sideSection li{list-style:none}.experience__item{display:block}@media print{.experience__item{page-break-inside:avoid}}.experience__item:not(:first-child){padding-top:1.5rem}.experience__header,.experience__subheader{display:block;width:100%;height:2.4rem}.experience__job{position:relative;transition:transform .2s cubic-bezier(0.63,0.21,0.76,1.58)}.experience__job:hover{transform:translateX(0.5rem)}.experience__company,.experience__position{text-align:left;width:70%;float:left}.experience__company{color:#666}.experience__position{text-transform:uppercase;font-size:1.3rem;color:#666}.experience__date,.experience__place{float:right;text-align:right;width:30%;color:#a8806d}.experience__date{font-weight:400}.experience__place::before{font-family:material icons;color:#e3bfb8;font-size:1.4rem;content:'place';display:inline-block;padding-right:3px;vertical-align:middle;font-weight:900}.experience__bullet{list-style-position:inside}.experience__badges{display:block;text-align:right;margin-top:.5rem;margin-bottom:.5rem}.experience__badge{font-size:.9rem;font-weight:400;display:inline-block;background-color:#e3bfb8;color:#fff;border-radius:1rem;padding:.1rem .6rem}@media print{.education__item{page-break-inside:avoid}}.contact{line-height:2rem}.contact__item{position:relative;font-size:1rem}.contact__item>i{background-color:#e3bfb8;color:#fff;font-size:1rem;text-align:center;border-radius:50%;padding-top:.5rem;width:2rem;height:2rem;margin-right:.5rem;margin-bottom:.5rem}.contact__item>span{position:absolute;top:50%;transform:translateY(-50%)}.avatar{width:100%;height:18rem;position:relative;overflow:hidden}.avatar__container{position:absolute;left:50%;transform:translateX(-50%);width:100%;clip-path:circle(50% at 50% 56%);height:16rem;text-align:center;transition:all .3s cubic-bezier(0.63,0.21,0.76,1.58)}.avatar__container:hover{width:110%}.avatar__img{object-fit:cover;width:110%;transition:all .3s cubic-bezier(0.63,0.21,0.76,1.58);position:absolute;top:50%;left:50%;transform:translateX(-50%)translateY(-50%)}.avatar__img:hover{width:105%}.skills__group span{font-weight:700;display:inline-block}.skills__group span::after{content:":"}.skills__group span:hover~li{background-color:#e3bfb8;color:#fff}.skills__group li{display:inline-block;font-weight:400;transition:all .2s ease-in-out;padding:0 1px;border-radius:2px}.skills__group li:not(:last-child)::after{content:", "}.skills__group li:hover{background-color:#e3bfb8;color:#fff}.language__item{display:table;width:100%}.language__name,.language__level{display:table-cell;width:50%}.language__level{text-align:right}.interests{display:block;-moz-column-count:2;column-count:2;width:100%;text-align:right}@media print{.interests{page-break-inside:avoid}}.interests__item:nth-child(n+4){text-align:left}.pageNotFound{padding-top:8rem;position:absolute;left:50%;transform:translateX(-50%)}.pageNotFound__text{padding-top:3rem} \ No newline at end of file diff --git a/public/tags/index.xml b/public/tags/index.xml new file mode 100644 index 0000000..57e7b2e --- /dev/null +++ b/public/tags/index.xml @@ -0,0 +1,10 @@ + + + + Tags on CV de Aboubakar- CV + https://petit_bou.gitlab.io/tags/ + Recent content in Tags on CV de Aboubakar- CV + Hugo -- gohugo.io + fr + + diff --git a/resources/_gen/assets/scss/cv/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.content b/resources/_gen/assets/scss/cv/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.content new file mode 100644 index 0000000..e4767f8 --- /dev/null +++ b/resources/_gen/assets/scss/cv/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.content @@ -0,0 +1 @@ +@charset "UTF-8";.content{position:absolute;overflow:hidden}.content__left{float:left;width:56rem;height:100%;padding:3rem 4rem}@media screen{.content__left::after{content:'2020 © by Inês Almeida | ines-almeida.com';height:4rem;width:100%;position:absolute;bottom:.5rem;color:#e6e6e6}}.content__right{position:absolute;float:right;width:24rem;background-color:#f5f5f5;height:100%;padding:2rem 3rem;right:1rem;-webkit-box-shadow:.5rem 1rem 1.5rem rgba(102,102,102,.15);-moz-box-shadow:.5rem 1rem 1.5rem rgba(102,102,102,.15);box-shadow:.5rem 1rem 1.5rem rgba(102,102,102,.15)}*,*::after,*::before{margin:0;padding:0;box-sizing:inherit}html{font-size:62.5%;background-color:#ddd}@media print{html{background-color:#fff}}.content{width:80rem;min-height:113.16129036rem;background-color:#fff}@media screen and (min-width:60rem){.content{margin:6rem 0;-webkit-box-shadow:1rem 2rem 3rem rgba(102,102,102,.3);-moz-box-shadow:1rem 2rem 3rem rgba(102,102,102,.3);box-shadow:1rem 2rem 3rem rgba(102,102,102,.3);position:absolute;left:50%;transform:translateX(-50%)}}@media print{.content{margin:0;height:113.16129036rem}}body{box-sizing:border-box}@media print{@page{margin:0;size:A4}}::selection{color:#fff;background-color:rgba(213,158,147,.6)}body{font-family:roboto,sans-serif;font-weight:300;line-height:1.7;font-size:1.12rem;color:#666}.mainHeading{text-transform:uppercase;font-size:5rem;color:#a8806d}.mainHeading span{color:#e3bfb8}.section__title{font-size:2.1rem;color:#666}h1,h2{text-transform:uppercase;font-family:oswald,sans-serif}.section{display:block;margin-bottom:2rem}.section__heading{width:100%;overflow:hidden}.section__title{position:relative}.section__title::after{content:'';position:absolute;border-top:1px solid;border-bottom:1px solid;border-color:#a8806d;width:50rem;height:4px;margin-left:1.5rem;margin-top:1.5rem;transition:all .5s ease-in-out}.section__title:hover::after{border-color:#e3bfb8}.sideSection{display:block;margin-bottom:3rem}@media print{.sideSection{page-break-inside:avoid}}.sideSection__heading{width:100%;overflow:hidden;text-align:center;margin-bottom:1rem}.sideSection__title{position:relative}.sideSection__title::after,.sideSection__title::before{content:'';position:absolute;border-top:1px solid #a8806d;border-bottom:1px solid #a8806d;width:10rem;height:4px;margin-top:1.1rem}.sideSection__title::after{margin-left:1rem}.sideSection__title::before{margin-left:-11rem}.sideSection li{list-style:none}.experience__item{display:block}@media print{.experience__item{page-break-inside:avoid}}.experience__item:not(:first-child){padding-top:1.5rem}.experience__header,.experience__subheader{display:block;width:100%;height:2.4rem}.experience__job{position:relative;transition:transform .2s cubic-bezier(0.63,0.21,0.76,1.58)}.experience__job:hover{transform:translateX(0.5rem)}.experience__company,.experience__position{text-align:left;width:70%;float:left}.experience__company{color:#666}.experience__position{text-transform:uppercase;font-size:1.3rem;color:#666}.experience__date,.experience__place{float:right;text-align:right;width:30%;color:#a8806d}.experience__date{font-weight:400}.experience__place::before{font-family:material icons;color:#e3bfb8;font-size:1.4rem;content:'place';display:inline-block;padding-right:3px;vertical-align:middle;font-weight:900}.experience__bullet{list-style-position:inside}.experience__badges{display:block;text-align:right;margin-top:.5rem;margin-bottom:.5rem}.experience__badge{font-size:.9rem;font-weight:400;display:inline-block;background-color:#e3bfb8;color:#fff;border-radius:1rem;padding:.1rem .6rem}@media print{.education__item{page-break-inside:avoid}}.contact{line-height:2rem}.contact__item{position:relative;font-size:1rem}.contact__item>i{background-color:#e3bfb8;color:#fff;font-size:1rem;text-align:center;border-radius:50%;padding-top:.5rem;width:2rem;height:2rem;margin-right:.5rem;margin-bottom:.5rem}.contact__item>span{position:absolute;top:50%;transform:translateY(-50%)}.avatar{width:100%;height:18rem;position:relative;overflow:hidden}.avatar__container{position:absolute;left:50%;transform:translateX(-50%);width:100%;clip-path:circle(50% at 50% 56%);height:16rem;text-align:center;transition:all .3s cubic-bezier(0.63,0.21,0.76,1.58)}.avatar__container:hover{width:110%}.avatar__img{object-fit:cover;width:110%;transition:all .3s cubic-bezier(0.63,0.21,0.76,1.58);position:absolute;top:50%;left:50%;transform:translateX(-50%)translateY(-50%)}.avatar__img:hover{width:105%}.skills__group span{font-weight:700;display:inline-block}.skills__group span::after{content:":"}.skills__group span:hover~li{background-color:#e3bfb8;color:#fff}.skills__group li{display:inline-block;font-weight:400;transition:all .2s ease-in-out;padding:0 1px;border-radius:2px}.skills__group li:not(:last-child)::after{content:", "}.skills__group li:hover{background-color:#e3bfb8;color:#fff}.language__item{display:table;width:100%}.language__name,.language__level{display:table-cell;width:50%}.language__level{text-align:right}.interests{display:block;-moz-column-count:2;column-count:2;width:100%;text-align:right}@media print{.interests{page-break-inside:avoid}}.interests__item:nth-child(n+4){text-align:left}.pageNotFound{padding-top:8rem;position:absolute;left:50%;transform:translateX(-50%)}.pageNotFound__text{padding-top:3rem} \ No newline at end of file diff --git a/resources/_gen/assets/scss/cv/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.json b/resources/_gen/assets/scss/cv/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.json new file mode 100644 index 0000000..b22c5b1 --- /dev/null +++ b/resources/_gen/assets/scss/cv/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.json @@ -0,0 +1 @@ +{"Target":"style.main.min.f7f492e636dbf84b8580bef034700249df6efeef94d571791e312de0ba8f506d.css","MediaType":"text/css","Data":{"Integrity":"sha256-9/SS5jbb+EuFgL7wNHACSd9u/u+U1XF5HjEt4LqPUG0="}} \ No newline at end of file diff --git a/resources/_gen/assets/scss/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.content b/resources/_gen/assets/scss/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.content new file mode 100644 index 0000000..8504e20 --- /dev/null +++ b/resources/_gen/assets/scss/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.content @@ -0,0 +1 @@ +@charset "UTF-8";.content{position:absolute;overflow:hidden}.content__left{float:left;width:56rem;height:100%;padding:3rem 4rem}@media screen{.content__left::after{content:'2020 © by Inês Almeida | ines-almeida.com';height:4rem;width:100%;position:absolute;bottom:.5rem;color:#e6e5e5}}.content__right{position:absolute;float:right;width:24rem;background-color:#f5f5f5;height:100%;padding:2rem 3rem;right:1rem;-webkit-box-shadow:.5rem 1rem 1.5rem rgba(102,102,102,.15);-moz-box-shadow:.5rem 1rem 1.5rem rgba(102,102,102,.15);box-shadow:.5rem 1rem 1.5rem rgba(102,102,102,.15)}*,*::after,*::before{margin:0;padding:0;box-sizing:inherit}html{font-size:62.5%;background-color:#ddd}@media print{html{background-color:#fff}}.content{width:80rem;min-height:113.16129036rem;background-color:#fff}@media screen and (min-width:60rem){.content{margin:6rem 0;-webkit-box-shadow:1rem 2rem 3rem rgba(102,102,102,.3);-moz-box-shadow:1rem 2rem 3rem rgba(102,102,102,.3);box-shadow:1rem 2rem 3rem rgba(102,102,102,.3);position:absolute;left:50%;transform:translateX(-50%)}}@media print{.content{margin:0;height:113.16129036rem}}body{box-sizing:border-box}@media print{@page{margin:0;size:A4}}::selection{color:#fff;background-color:rgba(213,158,147,.6)}body{font-family:roboto,sans-serif;font-weight:300;line-height:1.7;font-size:1.12rem;color:#666}.mainHeading{text-transform:uppercase;font-size:5rem;color:#a8806d}.mainHeading span{color:#e3bfb8}.section__title{font-size:2.1rem;color:#666}h1,h2{text-transform:uppercase;font-family:oswald,sans-serif}.section{display:block;margin-bottom:2rem}.section__heading{width:100%;overflow:hidden}.section__title{position:relative}.section__title::after{content:'';position:absolute;border-top:1px solid;border-bottom:1px solid;border-color:#a8806d;width:50rem;height:4px;margin-left:1.5rem;margin-top:1.5rem;transition:all .5s ease-in-out}.section__title:hover::after{border-color:#e3bfb8}.sideSection{display:block;margin-bottom:3rem}@media print{.sideSection{page-break-inside:avoid}}.sideSection__heading{width:100%;overflow:hidden;text-align:center;margin-bottom:1rem}.sideSection__title{position:relative}.sideSection__title::after,.sideSection__title::before{content:'';position:absolute;border-top:1px solid #a8806d;border-bottom:1px solid #a8806d;width:10rem;height:4px;margin-top:1.1rem}.sideSection__title::after{margin-left:1rem}.sideSection__title::before{margin-left:-11rem}.sideSection li{list-style:none}.experience__item{display:block}@media print{.experience__item{page-break-inside:avoid}}.experience__item:not(:first-child){padding-top:1.5rem}.experience__header,.experience__subheader{display:block;width:100%;height:2.4rem}.experience__job{position:relative;transition:transform .2s cubic-bezier(0.63,0.21,0.76,1.58)}.experience__job:hover{transform:translateX(0.5rem)}.experience__company,.experience__position{text-align:left;width:70%;float:left}.experience__company{color:#666}.experience__position{text-transform:uppercase;font-size:1.3rem;color:#666}.experience__date,.experience__place{float:right;text-align:right;width:30%;color:#a8806d}.experience__date{font-weight:400}.experience__place::before{font-family:material icons;color:#e3bfb8;font-size:1.4rem;content:'place';display:inline-block;padding-right:3px;vertical-align:middle;font-weight:900}.experience__bullet{list-style-position:inside}.experience__badges{display:block;text-align:right;margin-top:.5rem;margin-bottom:.5rem}.experience__badge{font-size:.9rem;font-weight:400;display:inline-block;background-color:#e3bfb8;color:#fff;border-radius:1rem;padding:.1rem .6rem}@media print{.education__item{page-break-inside:avoid}}.contact{line-height:2rem}.contact__item{position:relative;font-size:1rem}.contact__item>i{background-color:#e3bfb8;color:#fff;font-size:1rem;text-align:center;border-radius:50%;padding-top:.5rem;width:2rem;height:2rem;margin-right:.5rem;margin-bottom:.5rem}.contact__item>span{position:absolute;top:50%;transform:translateY(-50%)}.avatar{width:100%;height:18rem;position:relative;overflow:hidden}.avatar__container{position:absolute;left:50%;transform:translateX(-50%);width:100%;clip-path:circle(50% at 50% 56%);height:16rem;text-align:center;transition:all .3s cubic-bezier(0.63,0.21,0.76,1.58)}.avatar__container:hover{width:110%}.avatar__img{object-fit:cover;width:110%;transition:all .3s cubic-bezier(0.63,0.21,0.76,1.58);position:absolute;top:50%;left:50%;transform:translateX(-50%) translateY(-50%)}.avatar__img:hover{width:105%}.skills__group span{font-weight:700;display:inline-block}.skills__group span::after{content:":"}.skills__group span:hover~li{background-color:#e3bfb8;color:#fff}.skills__group li{display:inline-block;font-weight:400;transition:all .2s ease-in-out;padding:0 1px;border-radius:2px}.skills__group li:not(:last-child)::after{content:", "}.skills__group li:hover{background-color:#e3bfb8;color:#fff}.language__item{display:table;width:100%}.language__name,.language__level{display:table-cell;width:50%}.language__level{text-align:right}.interests{display:block;-moz-column-count:2;column-count:2;width:100%;text-align:right}@media print{.interests{page-break-inside:avoid}}.interests__item:nth-child(n+4){text-align:left}.pageNotFound{padding-top:8rem;position:absolute;left:50%;transform:translateX(-50%)}.pageNotFound__text{padding-top:3rem} \ No newline at end of file diff --git a/resources/_gen/assets/scss/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.json b/resources/_gen/assets/scss/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.json new file mode 100644 index 0000000..b4939a8 --- /dev/null +++ b/resources/_gen/assets/scss/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.json @@ -0,0 +1 @@ +{"Target":"style.main.min.5b330efa68dc2cae8b2e72e4bdb3ea6809a2a85e4ff12133eb0caeb1bdab713b.css","MediaType":"text/css","Data":{"Integrity":"sha256-WzMO+mjcLK6LLnLkvbPqaAmiqF5P8SEz6wyusb2rcTs="}} \ No newline at end of file diff --git a/static/img/profile.jpg b/static/img/profile.jpg new file mode 100644 index 0000000..bfbe4b8 Binary files /dev/null and b/static/img/profile.jpg differ diff --git a/themes/almeida-cv/LICENSE b/themes/almeida-cv/LICENSE new file mode 100644 index 0000000..4cce931 --- /dev/null +++ b/themes/almeida-cv/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2020 Inês Almeida + +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/almeida-cv/README.md b/themes/almeida-cv/README.md new file mode 100644 index 0000000..538a18a --- /dev/null +++ b/themes/almeida-cv/README.md @@ -0,0 +1,53 @@ +# Almeida CV Theme +Theme to build a customizeable printable HTML/CSS CV. + +![Screenshot](images/screenshot-full.png) + +# Features + - Online CV with minor responsiveness + - Printable as A4 PDF + - HTML5 + CSS3 + - Customizeable colors + +## Print your PDF CV +When printing the page in the browser, you'll get a formatted A4 page that can be used as your PDF resume. +If your page holds more than 1 A4 page, the content will be divided into the given amount of pages. + +For better formatting, you can set the number of pages in the `config.toml` file. + +If badges and other elements with background don't render correctly, remember to toggle the "Background Graphics" option in the print dialog. + +# Download +Clone the repo: `git clone https://github.com/ineesalmeida/almeida-cv` + +# Installation +## Install Hugo (Extended) +To use almeida-cv theme you need to install Hugo Extended by following https://gohugo.io/getting-started/installing/. + +## Create your personal website and run +``` +hugo new site +cd /themes/ +``` +Clone the theme (`git clone https://github.com/ineesalmeida/almeida-cv`) into your themes folder. +Replace the files in your root's directory with the ones on `themes/almeida-cv/exampleSite`. +``` +hugo server -D +``` +The theme is alive on http://localhost:1313/. + +## Customization +You can change the theme colors and number of pages in the `config.toml` file. +Your professional data should be added in the `data/content.yaml`. + + +# Building +To generate your site in the public folder, execute the following: +``` +hugo +``` +within the root of your project. + + +# Contributing +Post bugs and contributions to the issue tracker. Or make a pull request. diff --git a/themes/almeida-cv/assets/sass/_abstract.scss b/themes/almeida-cv/assets/sass/_abstract.scss new file mode 100644 index 0000000..ffa098a --- /dev/null +++ b/themes/almeida-cv/assets/sass/_abstract.scss @@ -0,0 +1,7 @@ +// WIDTHS +$width-left-col: 56rem; // 70% +$page-width: 80rem; +$width-right-col: $page-width - $width-left-col; + +// ANIMATIONS +$cubic: 0.63, 0.21, 0.76, 1.58; diff --git a/themes/almeida-cv/assets/sass/_base.scss b/themes/almeida-cv/assets/sass/_base.scss new file mode 100644 index 0000000..127b986 --- /dev/null +++ b/themes/almeida-cv/assets/sass/_base.scss @@ -0,0 +1,49 @@ +*, +*::after, +*::before { + margin: 0; + padding: 0; + box-sizing: inherit; +} + +html { + font-size: 62.5%; + background-color: $color-background; + + @media print { + background-color: $color-white; + } +} + +.content { + // A4 paper + width: $page-width; + min-height: paper_height($page-width); + background-color: $color-white; + + @media screen and (min-width: 60rem) { + margin: 6rem 0; + @include shadow(1); + @include hz-center; + } + @media print { + margin: 0; + height: paper_height($page-width) * $pages; + } +} + +body { + box-sizing: border-box; +} + +@media print { + @page { + margin: 0; + size: A4; + } +} + +::selection { + color: $color-white; + background-color: darken(rgba($color-primary, 0.6), 10%); +} diff --git a/themes/almeida-cv/assets/sass/_functions.scss b/themes/almeida-cv/assets/sass/_functions.scss new file mode 100644 index 0000000..94fe1cb --- /dev/null +++ b/themes/almeida-cv/assets/sass/_functions.scss @@ -0,0 +1,3 @@ +@function paper_height($width) { + @return $width / 0.70695553; +} \ No newline at end of file diff --git a/themes/almeida-cv/assets/sass/_layout.scss b/themes/almeida-cv/assets/sass/_layout.scss new file mode 100644 index 0000000..6d95037 --- /dev/null +++ b/themes/almeida-cv/assets/sass/_layout.scss @@ -0,0 +1,34 @@ +.content { + position: absolute; + overflow: hidden; + + &__left { + float: left; + width: $width-left-col; + height: 100%; + padding: 3rem 4rem; + + @media screen { + &::after { + content: '2020 © by Inês Almeida | ines-almeida.com'; + height: 4rem; + width: 100%; + position: absolute; + bottom: 0.5rem; + color: darken($color-white, 10%); + } + } + } + + &__right { + position: absolute; + float: right; + width: $width-right-col; + background-color: $color-right-col; + height: 100%; + padding: 2rem 3rem; + right: 1rem; + + @include shadow(0.5); + } +} diff --git a/themes/almeida-cv/assets/sass/_mixins.scss b/themes/almeida-cv/assets/sass/_mixins.scss new file mode 100644 index 0000000..1756e90 --- /dev/null +++ b/themes/almeida-cv/assets/sass/_mixins.scss @@ -0,0 +1,30 @@ +@mixin shadow($distance) { + -webkit-box-shadow: $distance * 1rem $distance * 2rem $distance * 3rem rgba($color-grey-dark, $distance * 0.3); + -moz-box-shadow: $distance * 1rem $distance * 2rem $distance * 3rem rgba($color-grey-dark, $distance * 0.3); + box-shadow: $distance * 1rem $distance * 2rem $distance * 3rem rgba($color-grey-dark, $distance * 0.3); +} + +@mixin hz-center { + position: absolute; + left: 50%; + transform: translateX(-50%); +} + +@mixin vt-center { + position: absolute; + top: 50%; + transform: translateY(-50%); +} + +@mixin all-center { + position: absolute; + top: 50%; + left: 50%; + transform: translateX(-50%) translateY(-50%); +} + +@mixin avoid-break { + @media print { + page-break-inside: avoid; + } +} \ No newline at end of file diff --git a/themes/almeida-cv/assets/sass/_typography.scss b/themes/almeida-cv/assets/sass/_typography.scss new file mode 100644 index 0000000..20c6034 --- /dev/null +++ b/themes/almeida-cv/assets/sass/_typography.scss @@ -0,0 +1,28 @@ +body { + font-family: 'Roboto', sans-serif; + font-weight: 300; + line-height: 1.7; + font-size: 1.12rem; + color: $color-grey-dark; +} + +.mainHeading { + text-transform: uppercase; + font-size: 5rem; + color: $color-secondary; + + & span { + color: $color-primary; + } +} + +.section__title { + font-size: 2.1rem; + color: $color-grey-dark; +} + +h1, +h2 { + text-transform: uppercase; + font-family: 'Oswald', sans-serif; +} diff --git a/themes/almeida-cv/assets/sass/components/_404.scss b/themes/almeida-cv/assets/sass/components/_404.scss new file mode 100644 index 0000000..d8174e8 --- /dev/null +++ b/themes/almeida-cv/assets/sass/components/_404.scss @@ -0,0 +1,8 @@ +.pageNotFound { + padding-top: 8rem; + @include hz-center; + + &__text { + padding-top: 3rem; + } +} \ No newline at end of file diff --git a/themes/almeida-cv/assets/sass/components/_avatar.scss b/themes/almeida-cv/assets/sass/components/_avatar.scss new file mode 100644 index 0000000..3ec7f29 --- /dev/null +++ b/themes/almeida-cv/assets/sass/components/_avatar.scss @@ -0,0 +1,30 @@ +.avatar { + width: 100%; + height: $width-right-col - 6rem; + position: relative; + overflow: hidden; + + &__container { + @include hz-center; + width: 100%; + clip-path: circle(50% at 50% 56%); + height: $width-right-col - 8rem; + text-align: center; + transition: all 0.3s cubic-bezier($cubic); + + &:hover { + width: 110%; + } + } + + &__img { + object-fit: cover; + width: 110%; + transition: all 0.3s cubic-bezier($cubic); + @include all-center; + + &:hover { + width: 105%; + } + } +} \ No newline at end of file diff --git a/themes/almeida-cv/assets/sass/components/_contact.scss b/themes/almeida-cv/assets/sass/components/_contact.scss new file mode 100644 index 0000000..18d1111 --- /dev/null +++ b/themes/almeida-cv/assets/sass/components/_contact.scss @@ -0,0 +1,24 @@ +.contact { + line-height: 2rem; + + &__item { + position: relative; + font-size: 1rem; + + & > i { + background-color: $color-primary; + color: $color-primary-text; + font-size: 1rem; + text-align: center; + border-radius: 50%; + padding-top: 0.5rem; + width: 2rem; + height: 2rem; + margin-right: 0.5rem; + margin-bottom: 0.5rem; + } + & > span { + @include vt-center; + } + } +} \ No newline at end of file diff --git a/themes/almeida-cv/assets/sass/components/_education.scss b/themes/almeida-cv/assets/sass/components/_education.scss new file mode 100644 index 0000000..be1863f --- /dev/null +++ b/themes/almeida-cv/assets/sass/components/_education.scss @@ -0,0 +1,5 @@ +.education { + &__item { + @include avoid-break; + } +} \ No newline at end of file diff --git a/themes/almeida-cv/assets/sass/components/_experience.scss b/themes/almeida-cv/assets/sass/components/_experience.scss new file mode 100644 index 0000000..8071cec --- /dev/null +++ b/themes/almeida-cv/assets/sass/components/_experience.scss @@ -0,0 +1,88 @@ +.experience { + &__item { + display: block; + @include avoid-break; + &:not(:first-child) { + padding-top: 1.5rem; + } + } + + &__header, + &__subheader { + display: block; + width: 100%; + height: 2.4rem; + } + + &__job { + position: relative; + transition: transform 0.2s cubic-bezier($cubic); + + &:hover { + transform: translateX(0.5rem); + } + } + + &__company, + &__position { + text-align: left; + width: 70%; + float: left; + } + + &__company { + color: $color-grey-dark; + } + + &__position { + text-transform: uppercase; + font-size: 1.3rem; + color: $color-grey-dark; + } + + &__date, + &__place { + float: right; + text-align: right; + width: 30%; + color: $color-secondary; + } + + &__date { + font-weight: 400; + } + + &__place { + &::before { + font-family: 'Material Icons'; + color: $color-primary; + font-size: 1.4rem; + content: 'place'; + display: inline-block; + padding-right: 3px; + vertical-align: middle; + font-weight: 900; + } + } + + &__bullet { + list-style-position: inside; + } + + &__badges { + display: block; + text-align: right; + margin-top: 0.5rem; + margin-bottom: 0.5rem; + } + + &__badge { + font-size: 0.9rem; + font-weight: 400; + display: inline-block; + background-color: $color-primary; + color: $color-primary-text; + border-radius: 1rem; + padding: 0.1rem 0.6rem; + } +} diff --git a/themes/almeida-cv/assets/sass/components/_interests.scss b/themes/almeida-cv/assets/sass/components/_interests.scss new file mode 100644 index 0000000..9759e20 --- /dev/null +++ b/themes/almeida-cv/assets/sass/components/_interests.scss @@ -0,0 +1,12 @@ +.interests { + display: block; + -moz-column-count: 2; + column-count: 2; + width: 100%; + text-align: right; + @include avoid-break; + + &__item:nth-child(n+4) { + text-align: left; + } +} \ No newline at end of file diff --git a/themes/almeida-cv/assets/sass/components/_languages.scss b/themes/almeida-cv/assets/sass/components/_languages.scss new file mode 100644 index 0000000..fa5c94a --- /dev/null +++ b/themes/almeida-cv/assets/sass/components/_languages.scss @@ -0,0 +1,15 @@ +.language { + &__item { + display: table; + width: 100%; + } + + &__name, + &__level { + display: table-cell; + width: 50%; + } + &__level { + text-align: right; + } +} \ No newline at end of file diff --git a/themes/almeida-cv/assets/sass/components/_section.scss b/themes/almeida-cv/assets/sass/components/_section.scss new file mode 100644 index 0000000..e93846b --- /dev/null +++ b/themes/almeida-cv/assets/sass/components/_section.scss @@ -0,0 +1,30 @@ +.section { + display: block; + margin-bottom: 2rem; + + &__heading { + width: 100%; + overflow: hidden; + } + + &__title { + position: relative; + + &::after { + content: ''; + position: absolute; + border-top: 1px solid; + border-bottom: 1px solid; + border-color: $color-secondary; + width: 50rem; + height: 4px; + margin-left: 1.5rem; + margin-top: 1.5rem; + transition: all 0.5s ease-in-out; + } + + &:hover::after { + border-color: $color-primary; + } + } +} diff --git a/themes/almeida-cv/assets/sass/components/_side_section.scss b/themes/almeida-cv/assets/sass/components/_side_section.scss new file mode 100644 index 0000000..3eae328 --- /dev/null +++ b/themes/almeida-cv/assets/sass/components/_side_section.scss @@ -0,0 +1,39 @@ +.sideSection { + display: block; + margin-bottom: 3rem; + @include avoid-break; + + &__heading { + width: 100%; + overflow: hidden; + text-align: center; + margin-bottom: 1rem; + } + + &__title { + position: relative; + + &::after, + &::before { + content: ''; + position: absolute; + border-top: 1px solid $color-secondary; + border-bottom: 1px solid $color-secondary; + width: 10rem; + height: 4px; + margin-top: 1.1rem; + } + + &::after { + margin-left: 1rem; + } + + &::before { + margin-left: -11rem; + } + } + + & li { + list-style: none; + } +} diff --git a/themes/almeida-cv/assets/sass/components/_skills.scss b/themes/almeida-cv/assets/sass/components/_skills.scss new file mode 100644 index 0000000..54b2162 --- /dev/null +++ b/themes/almeida-cv/assets/sass/components/_skills.scss @@ -0,0 +1,35 @@ +.skills { + &__group { + & span { + font-weight: 700; + display: inline-block; + + &::after{ + content: ":" + } + + &:hover ~ li { + background-color: $color-primary; + color: $color-white; + } + + } + + & li{ + display: inline-block; + font-weight: 400; + transition: all 0.2s ease-in-out; + padding: 0 1px; + border-radius: 2px; + + &:not(:last-child)::after{ + content: ", " + } + + &:hover { + background-color: $color-primary; + color: $color-white; + } + } + } +} \ No newline at end of file diff --git a/themes/almeida-cv/assets/sass/main.scss b/themes/almeida-cv/assets/sass/main.scss new file mode 100644 index 0000000..37b6fed --- /dev/null +++ b/themes/almeida-cv/assets/sass/main.scss @@ -0,0 +1,29 @@ + +// HUGO variables +$color-primary: {{ .Site.Params.colorPrimary | default "#e3bfb8"}} !default; +$color-primary-text: {{ .Site.Params.colorPrimaryText | default "#fff"}} !default; +$color-background: {{ .Site.Params.colorPageBackground | default "#ddd" }} !default; +$color-right-col: {{ .Site.Params.colorRightColumnBackground | default "#f5f5f5" }} !default; +$color-white: {{ .Site.Params.colorLight | default "#fff"}} !default; +$color-secondary: {{ .Site.Params.colorSecondary | default "#aaa"}} !default; +$color-grey-dark: {{ .Site.Params.colorDark | default "#666"}} !default; +$pages: {{ .Site.Params.pages | default 1}} !default; + +@import "abstract"; +@import "functions"; +@import "mixins"; +@import "layout"; +@import "base"; +@import "typography"; + +@import "components/section"; +@import "components/side_section"; +@import "components/experience"; +@import "components/education"; +@import "components/contact"; +@import "components/avatar"; +@import "components/skills"; +@import "components/languages"; +@import "components/interests"; + +@import "components/404"; \ No newline at end of file diff --git a/themes/almeida-cv/exampleSite/config.toml b/themes/almeida-cv/exampleSite/config.toml new file mode 100644 index 0000000..c71d98e --- /dev/null +++ b/themes/almeida-cv/exampleSite/config.toml @@ -0,0 +1,15 @@ +baseURL = "https://example.com/" +languageCode = "en-us" +defaultContentLanguage = "en" +theme = "almeida-cv" +title = "Example - CV" + +[params] +colorDark = "#666" +colorLight = "#fff" +colorPageBackground = "#ddd" +colorPrimary = "#e3bfb8" +colorPrimaryText = "#fff" +colorRightColumnBackground = "#f5f5f5" +colorSecondary = "#aaa" +pages = 1 diff --git a/themes/almeida-cv/exampleSite/data/content.yaml b/themes/almeida-cv/exampleSite/data/content.yaml new file mode 100644 index 0000000..8779390 --- /dev/null +++ b/themes/almeida-cv/exampleSite/data/content.yaml @@ -0,0 +1,116 @@ +BasicInfo: + FirstName: Inês + LastName: Almeida + Photo: img/avatar.jpg + Contacts: + - Icon: fas fa-phone + Info: +44 123 456 789 + - Icon: fas fa-envelope + Info: contact@ines-almeida.com + - Icon: fas fa-globe + Info: ines-almeida.com + - Icon: fas fa-map-marker-alt + Info: Portugal + +Profile: Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. + +Experience: + - Employer: Super Cool Company + Place: Oxford, UK + Positions: + - Title: Software Engineer + Date: Jan 2020 - Present + Details: + - Arcu vitae elementum curabitur vitae nunc sed velit + - Viverra aliquet eget sit amet tellus cras adipiscing + - Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat + - Nisl tincidunt eget nullam non nisi est + - Sed viverra tellus in hac. + - Lorem ipsum dolor sit amet, consectetur adipiscing elit + Badges: ['Python', 'Django', 'OOP', 'Javascript', 'HTML', 'CSS', 'Agile'] + - Title: Software Tester + Date: Mar 2019 - Jan 2020 + Details: + - Nisl tincidunt eget nullam non nisi est + - Sed viverra tellus in hac. + - Lorem ipsum dolor sit amet, consectetur adipiscing elit + Badges: ['Python', 'BDD', 'Selenium', 'OOP', 'Agile'] + - Employer: Another super cool company + Place: Lisbon, PT + Positions: + - Title: Flow Cytometry Resource Specialist + Date: Jan 2018 - Mar 2019 + Details: + - Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat + - Nisl tincidunt eget nullam non nisi est + - Sed viverra tellus in hac. + - Lorem ipsum dolor sit amet, consectetur adipiscing elit + Badges: ['Python', 'HTML', 'CSS', 'C#/Unity'] + - Employer: Institute of Neural Engineering + Place: Graz, AT + Positions: + - Title: Master's Thesis Research Intern + Date: Oct 2016 - Jun 2017 + Details: + - Arcu vitae elementum curabitur vitae nunc sed velit + - Viverra aliquet eget sit amet tellus cras adipiscing + - Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat + - Nisl tincidunt eget nullam non nisi est + Badges: ['Python', 'MATLAB', 'Data Processing', 'Paradigm Design'] + +Education: + - Course: BSc & MSc in Biomedical Engineering and Biophysics + Place: University of Lisbon + Date: Sep 2012 - Nov 2017 + Details: Specialised in data analysis + +Skills: + - Family: Programming + Items: + - Python + - HTML (including Jinja) + - Javascript + - CSS + - SASS + - SQL + - C# + - Bash + - MATLAB + - Family: Frameworks + Items: + - Django + - Flask + - Hugo + - React + - Family: Developer Tools + Items: + - Git + - Docker + - Jenkins + - AWS + - Family: Misc + Items: + - Adobe Tools + - LaTeX + +Languages: + - Name: Portuguese + Level: Native + - Name: English + Level: C2 + - Name: Spanish + Level: B1 + - Name: German + Level: B1 + +Diplomas: + - ISTQB Tester Certification (2019) + - English Cambridge CAE (2009) + +Interests: + - Bouldering + - Cooking + - Windsurfing + - Bossa Nova + - Design + - Languages diff --git a/themes/almeida-cv/exampleSite/resources/_gen/assets/scss/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.content b/themes/almeida-cv/exampleSite/resources/_gen/assets/scss/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.content new file mode 100644 index 0000000..cd3c2fa --- /dev/null +++ b/themes/almeida-cv/exampleSite/resources/_gen/assets/scss/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.content @@ -0,0 +1 @@ +@charset "UTF-8";.content{position:absolute;overflow:hidden}.content__left{float:left;width:56rem;height:100%;padding:3rem 4rem}@media screen{.content__left::after{content:'2020 © by Inês Almeida | ines-almeida.com';height:4rem;width:100%;position:absolute;bottom:.5rem;color:#e6e6e6}}.content__right{position:absolute;float:right;width:24rem;background-color:#f5f5f5;height:100%;padding:2rem 3rem;right:1rem;-webkit-box-shadow:.5rem 1rem 1.5rem rgba(102,102,102,.15);-moz-box-shadow:.5rem 1rem 1.5rem rgba(102,102,102,.15);box-shadow:.5rem 1rem 1.5rem rgba(102,102,102,.15)}*,*::after,*::before{margin:0;padding:0;box-sizing:inherit}html{font-size:62.5%;background-color:#ddd}@media print{html{background-color:#fff}}.content{width:80rem;min-height:113.16129036rem;background-color:#fff}@media screen and (min-width:60rem){.content{margin:6rem 0;-webkit-box-shadow:1rem 2rem 3rem rgba(102,102,102,.3);-moz-box-shadow:1rem 2rem 3rem rgba(102,102,102,.3);box-shadow:1rem 2rem 3rem rgba(102,102,102,.3);position:absolute;left:50%;transform:translateX(-50%)}}@media print{.content{margin:0;height:113.16129036rem}}body{box-sizing:border-box}@media print{@page{margin:0;size:A4}}::selection{color:#fff;background-color:rgba(197,137,125,.6)}body{font-family:roboto,sans-serif;font-weight:300;line-height:1.7;font-size:1.12rem;color:#666}.mainHeading{text-transform:uppercase;font-size:5rem;color:#b4aeae}.mainHeading span{color:#d5a9a0}.section__title{font-size:2.1rem;color:#666}h1,h2{text-transform:uppercase;font-family:oswald,sans-serif}.section{display:block;margin-bottom:2rem}.section__heading{width:100%;overflow:hidden}.section__title{position:relative}.section__title::after{content:'';position:absolute;border-top:1px solid;border-bottom:1px solid;border-color:#b4aeae;width:50rem;height:4px;margin-left:1.5rem;margin-top:1.5rem;transition:all .5s ease-in-out}.section__title:hover::after{border-color:#d5a9a0}.sideSection{display:block;margin-bottom:3rem}@media print{.sideSection{page-break-inside:avoid}}.sideSection__heading{width:100%;overflow:hidden;text-align:center;margin-bottom:1rem}.sideSection__title{position:relative}.sideSection__title::after,.sideSection__title::before{content:'';position:absolute;border-top:1px solid #b4aeae;border-bottom:1px solid #b4aeae;width:10rem;height:4px;margin-top:1.1rem}.sideSection__title::after{margin-left:1rem}.sideSection__title::before{margin-left:-11rem}.sideSection li{list-style:none}.experience__item{display:block}@media print{.experience__item{page-break-inside:avoid}}.experience__item:not(:first-child){padding-top:1.5rem}.experience__header,.experience__subheader{display:block;width:100%;height:2.4rem}.experience__job{position:relative;transition:transform .2s cubic-bezier(0.63,0.21,0.76,1.58)}.experience__job:hover{transform:translateX(0.5rem)}.experience__company,.experience__position{text-align:left;width:70%;float:left}.experience__company{color:#666}.experience__position{text-transform:uppercase;font-size:1.3rem;color:#666}.experience__date,.experience__place{float:right;text-align:right;width:30%;color:#b4aeae}.experience__date{font-weight:400}.experience__place::before{font-family:material icons;color:#d5a9a0;font-size:1.4rem;content:'place';display:inline-block;padding-right:3px;vertical-align:middle;font-weight:900}.experience__bullet{list-style-position:inside}.experience__badges{display:block;text-align:right;margin-top:.5rem;margin-bottom:.5rem}.experience__badge{font-size:.9rem;font-weight:400;display:inline-block;background-color:#d5a9a0;color:#fff;border-radius:1rem;padding:.1rem .6rem}@media print{.education__item{page-break-inside:avoid}}.contact{line-height:2rem}.contact__item{position:relative;font-size:1rem}.contact__item>i{background-color:#d5a9a0;color:#fff;font-size:1rem;text-align:center;border-radius:50%;padding-top:.5rem;width:2rem;height:2rem;margin-right:.5rem;margin-bottom:.5rem}.contact__item>span{position:absolute;top:50%;transform:translateY(-50%)}.avatar{width:100%;height:18rem;position:relative;overflow:hidden}.avatar__container{position:absolute;left:50%;transform:translateX(-50%);width:100%;clip-path:circle(50% at 50% 56%);height:16rem;text-align:center;transition:all .3s cubic-bezier(0.63,0.21,0.76,1.58)}.avatar__container:hover{width:110%}.avatar__img{object-fit:cover;width:110%;transition:all .3s cubic-bezier(0.63,0.21,0.76,1.58);position:absolute;top:50%;left:50%;transform:translateX(-50%)translateY(-50%)}.avatar__img:hover{width:105%}.skills__group span{font-weight:700;display:inline-block}.skills__group span::after{content:":"}.skills__group span:hover~li{background-color:#d5a9a0;color:#fff}.skills__group li{display:inline-block;font-weight:400;transition:all .2s ease-in-out;padding:0 1px;border-radius:2px}.skills__group li:not(:last-child)::after{content:", "}.skills__group li:hover{background-color:#d5a9a0;color:#fff}.language__item{display:table;width:100%}.language__name,.language__level{display:table-cell;width:50%}.language__level{text-align:right}.interests{display:block;-moz-column-count:2;column-count:2;width:100%;text-align:right}@media print{.interests{page-break-inside:avoid}}.interests__item:nth-child(n+4){text-align:left}.pageNotFound{padding-top:8rem;position:absolute;left:50%;transform:translateX(-50%)}.pageNotFound__text{padding-top:3rem} \ No newline at end of file diff --git a/themes/almeida-cv/exampleSite/resources/_gen/assets/scss/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.json b/themes/almeida-cv/exampleSite/resources/_gen/assets/scss/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.json new file mode 100644 index 0000000..e49f825 --- /dev/null +++ b/themes/almeida-cv/exampleSite/resources/_gen/assets/scss/sass/main.scss_545d7c693f5b5f74d129019eb310e64e.json @@ -0,0 +1 @@ +{"Target":"style.main.min.33da6b12aa464369a4d67eff5abf33f911e1a5d1c1fb8b3959f6049be2321f60.css","MediaType":"text/css","Data":{"Integrity":"sha256-M9prEqpGQ2mk1n7/Wr8z+RHhpdHB+4s5WfYEm+IyH2A="}} \ No newline at end of file diff --git a/themes/almeida-cv/exampleSite/static/img/avatar.jpg b/themes/almeida-cv/exampleSite/static/img/avatar.jpg new file mode 100644 index 0000000..b2677e0 Binary files /dev/null and b/themes/almeida-cv/exampleSite/static/img/avatar.jpg differ diff --git a/themes/almeida-cv/i18n/de.toml b/themes/almeida-cv/i18n/de.toml new file mode 100644 index 0000000..9679b5f --- /dev/null +++ b/themes/almeida-cv/i18n/de.toml @@ -0,0 +1,20 @@ +[profile] +other = "Profil" + +[experience] +other = "Erfahrung" + +[education] +other = "Bildung" + +[skills] +other = "Skills" + +[languages] +other = "Sprachen" + +[diplomas] +other = "Zertifizierungen" + +[interests] +other = "Interessen" diff --git a/themes/almeida-cv/i18n/en.toml b/themes/almeida-cv/i18n/en.toml new file mode 100644 index 0000000..86833ae --- /dev/null +++ b/themes/almeida-cv/i18n/en.toml @@ -0,0 +1,20 @@ +[profile] +other = "Profile" + +[experience] +other = "Experience" + +[education] +other = "Education" + +[skills] +other = "Skills" + +[languages] +other = "Languages" + +[diplomas] +other = "Diplomas" + +[interests] +other = "Interests" diff --git a/themes/almeida-cv/images/screenshot-full.png b/themes/almeida-cv/images/screenshot-full.png new file mode 100644 index 0000000..40202f4 Binary files /dev/null and b/themes/almeida-cv/images/screenshot-full.png differ diff --git a/themes/almeida-cv/images/screenshot-funny-colors.png b/themes/almeida-cv/images/screenshot-funny-colors.png new file mode 100644 index 0000000..f14e9c2 Binary files /dev/null and b/themes/almeida-cv/images/screenshot-funny-colors.png differ diff --git a/themes/almeida-cv/images/screenshot.png b/themes/almeida-cv/images/screenshot.png new file mode 100644 index 0000000..0c65e7c Binary files /dev/null and b/themes/almeida-cv/images/screenshot.png differ diff --git a/themes/almeida-cv/images/tn.png b/themes/almeida-cv/images/tn.png new file mode 100644 index 0000000..ae5b46e Binary files /dev/null and b/themes/almeida-cv/images/tn.png differ diff --git a/themes/almeida-cv/layouts/404.html b/themes/almeida-cv/layouts/404.html new file mode 100644 index 0000000..b3daf48 --- /dev/null +++ b/themes/almeida-cv/layouts/404.html @@ -0,0 +1,16 @@ + + + {{ partial "head.html" . }} + +
+
+

Page not found :(

+

+ You're an explorer, aren't ya?
+ But the page you are attempting to access cannot be found.
+ Go back to the main page +

+
+
+ + diff --git a/themes/almeida-cv/layouts/_default/baseof.html b/themes/almeida-cv/layouts/_default/baseof.html new file mode 100644 index 0000000..5f8e2ec --- /dev/null +++ b/themes/almeida-cv/layouts/_default/baseof.html @@ -0,0 +1,11 @@ + + + {{- partial "head.html" . -}} + + {{- partial "header.html" . -}} +
+ {{- block "main" . }}{{- end }} +
+ {{- partial "footer.html" . -}} + + diff --git a/themes/almeida-cv/layouts/_default/list.html b/themes/almeida-cv/layouts/_default/list.html new file mode 100644 index 0000000..e69de29 diff --git a/themes/almeida-cv/layouts/_default/single.html b/themes/almeida-cv/layouts/_default/single.html new file mode 100644 index 0000000..e69de29 diff --git a/themes/almeida-cv/layouts/content/_redirects b/themes/almeida-cv/layouts/content/_redirects new file mode 100644 index 0000000..eb70c84 --- /dev/null +++ b/themes/almeida-cv/layouts/content/_redirects @@ -0,0 +1 @@ +/* /404.html 404 \ No newline at end of file diff --git a/themes/almeida-cv/layouts/index.html b/themes/almeida-cv/layouts/index.html new file mode 100644 index 0000000..5081ad6 --- /dev/null +++ b/themes/almeida-cv/layouts/index.html @@ -0,0 +1,25 @@ + + + {{ partial "head.html" . }} + +
+
+

{{.Site.Data.content.BasicInfo.FirstName}} {{.Site.Data.content.BasicInfo.LastName}}

+ + {{ partial "_profile.html" . }} + {{ partial "_experience.html" . }} + {{ partial "_education.html" . }} + +
+
+ + {{ partial "_avatar.html" . }} + {{ partial "_contacts.html" . }} + {{ partial "_skills.html" . }} + {{ partial "_languages.html" . }} + {{ partial "_diplomas.html" . }} + {{ partial "_interests.html" . }} +
+
+ + \ No newline at end of file diff --git a/themes/almeida-cv/layouts/partials/_avatar.html b/themes/almeida-cv/layouts/partials/_avatar.html new file mode 100644 index 0000000..b903168 --- /dev/null +++ b/themes/almeida-cv/layouts/partials/_avatar.html @@ -0,0 +1,7 @@ +{{ if .Site.Data.content.BasicInfo.Photo }} +
+
+ photo of me +
+
+{{ end }} \ No newline at end of file diff --git a/themes/almeida-cv/layouts/partials/_contacts.html b/themes/almeida-cv/layouts/partials/_contacts.html new file mode 100644 index 0000000..8089052 --- /dev/null +++ b/themes/almeida-cv/layouts/partials/_contacts.html @@ -0,0 +1,11 @@ +{{ if .Site.Data.content.BasicInfo.Contacts }} +
+
    + {{ range .Site.Data.content.BasicInfo.Contacts }} +
  • + {{ .Info | safeHTML }} +
  • + {{ end }} +
+
+{{ end }} diff --git a/themes/almeida-cv/layouts/partials/_diplomas.html b/themes/almeida-cv/layouts/partials/_diplomas.html new file mode 100644 index 0000000..15f2f89 --- /dev/null +++ b/themes/almeida-cv/layouts/partials/_diplomas.html @@ -0,0 +1,14 @@ +{{ if .Site.Data.content.Diplomas }} +
+
+

{{ i18n "diplomas" }}

+
+
+
    + {{ range .Site.Data.content.Diplomas }} +
  • {{ . | safeHTML }}
  • + {{ end }} +
+
+
+{{ end }} diff --git a/themes/almeida-cv/layouts/partials/_education.html b/themes/almeida-cv/layouts/partials/_education.html new file mode 100644 index 0000000..f5021dd --- /dev/null +++ b/themes/almeida-cv/layouts/partials/_education.html @@ -0,0 +1,19 @@ +{{ if .Site.Data.content.Education }} +
+
+

+ {{ i18n "education" }} +

+
+
+ {{ range .Site.Data.content.Education }} +
+

{{ .Course | safeHTML }}

+

{{ .Place | safeHTML }}

+

{{ .Date | safeHTML }}

+
{{ .Details | safeHTML }}
+
+ {{ end }} +
+
+{{ end }} diff --git a/themes/almeida-cv/layouts/partials/_experience.html b/themes/almeida-cv/layouts/partials/_experience.html new file mode 100644 index 0000000..e801a3b --- /dev/null +++ b/themes/almeida-cv/layouts/partials/_experience.html @@ -0,0 +1,43 @@ +{{ if .Site.Data.content.Experience }} +
+
+

{{ i18n "experience" }}

+
+
+
+ {{ range .Site.Data.content.Experience }} +
+
+

+ {{ .Employer | safeHTML }} +

+

{{ .Place | safeHTML }}

+
+ {{ range .Positions }} +
+
+

+ {{ .Title | safeHTML}} +

+

{{ .Date | safeHTML }}

+
+
    + {{ range .Details }} +
  • {{ . }}
  • + {{ end }} +
+
+
    + {{ range .Badges }} +
  • {{ . }}
  • + {{ end }} +
+
+
+ {{ end }} +
+ {{ end }} +
+
+
+{{ end }} diff --git a/themes/almeida-cv/layouts/partials/_interests.html b/themes/almeida-cv/layouts/partials/_interests.html new file mode 100644 index 0000000..cc09bb6 --- /dev/null +++ b/themes/almeida-cv/layouts/partials/_interests.html @@ -0,0 +1,14 @@ +{{ if .Site.Data.content.Interests }} +
+
+

{{ i18n "interests" }}

+
+
+
    + {{ range .Site.Data.content.Interests }} +
  • {{ . | safeHTML }}
  • + {{ end }} +
+
+
+{{ end }} diff --git a/themes/almeida-cv/layouts/partials/_languages.html b/themes/almeida-cv/layouts/partials/_languages.html new file mode 100644 index 0000000..1ef2c44 --- /dev/null +++ b/themes/almeida-cv/layouts/partials/_languages.html @@ -0,0 +1,17 @@ +{{ if .Site.Data.content.Languages }} +
+
+

{{ i18n "languages" }}

+
+
+
    + {{ range .Site.Data.content.Languages }} +
  • +
    {{ .Name | safeHTML }}
    +
    {{ .Level | safeHTML }}
    +
  • + {{ end }} +
+
+
+{{ end }} diff --git a/themes/almeida-cv/layouts/partials/_profile.html b/themes/almeida-cv/layouts/partials/_profile.html new file mode 100644 index 0000000..d394108 --- /dev/null +++ b/themes/almeida-cv/layouts/partials/_profile.html @@ -0,0 +1,10 @@ +{{ if .Site.Data.content.Profile }} +
+
+

{{ i18n "profile" }}

+
+
+

{{.Site.Data.content.Profile | safeHTML }}

+
+
+{{ end }} diff --git a/themes/almeida-cv/layouts/partials/_skills.html b/themes/almeida-cv/layouts/partials/_skills.html new file mode 100644 index 0000000..676aaf3 --- /dev/null +++ b/themes/almeida-cv/layouts/partials/_skills.html @@ -0,0 +1,21 @@ +{{ if .Site.Data.content.Skills }} +
+
+

{{ i18n "skills" }}

+
+
+
    +
  • + {{ range .Site.Data.content.Skills }} +
      + {{ .Family | safeHTML }} + {{ range .Items }} +
    • {{ . | safeHTML }}
    • + {{ end }} +
    + {{ end }} +
  • +
+
+
+{{ end }} diff --git a/themes/almeida-cv/layouts/partials/head.html b/themes/almeida-cv/layouts/partials/head.html new file mode 100644 index 0000000..07f35a6 --- /dev/null +++ b/themes/almeida-cv/layouts/partials/head.html @@ -0,0 +1,13 @@ + + + + {{ .Site.Title }} + + + + + + + {{ $style := resources.Get "sass/main.scss" | resources.ExecuteAsTemplate "style.main.scss" . | toCSS | minify | fingerprint }} + + \ No newline at end of file diff --git a/themes/almeida-cv/static/img/avatar.jpg b/themes/almeida-cv/static/img/avatar.jpg new file mode 100644 index 0000000..f39901f Binary files /dev/null and b/themes/almeida-cv/static/img/avatar.jpg differ diff --git a/themes/almeida-cv/theme.toml b/themes/almeida-cv/theme.toml new file mode 100644 index 0000000..0caa368 --- /dev/null +++ b/themes/almeida-cv/theme.toml @@ -0,0 +1,15 @@ +# theme.toml template for a Hugo theme +# See https://github.com/gohugoio/hugoThemes#themetoml for an example + +name = "Almeida CV" +license = "MIT" +licenselink = "https://github.com/ineesalmeida/almeida-cv/master/LICENSE" +description = "Theme to build a customizeable printable CV with minor web responsiveness." +homepage = "https://github.com/ineesalmeida/almeida-cv/master" +tags = ["cv", "resume", "minimal", "simple"] +features = ["simple", "cv", "printable"] +min_version = "0.41.0" + +[author] + name = "Inês Almeida" + homepage = "ines-almeida.com"