Skip to content

Commit

Permalink
Translations and i18n (hugo-toha#60)
Browse files Browse the repository at this point in the history
* Managing i18n

* Fix absolute path

* Config files

* Home link manage langage

* Fixing footer i18n

* Implemented i18n on newsletter

* Implemented two languages in example

* Removed old section directory

* Using yaml in data to organize home summary

* Fully working for old versions without i18n

* Integrating language menu CSS

* Fix language dropdown CSS

* Refactor translation codes

* Remove duplicate code

* Fix URL issues

* Move customMenus and other site related config into data section

* Fix error during language toggle

* Only show the available translation for the posts

* Handle navbar brand URL properly

* Fix responsiveness

Co-authored-by: Hugo MARTIN <[email protected]>
Co-authored-by: hossainemruz <[email protected]>
  • Loading branch information
3 people committed Oct 3, 2020
1 parent 6c2cca0 commit 46b21e0
Show file tree
Hide file tree
Showing 56 changed files with 1,116 additions and 190 deletions.
50 changes: 18 additions & 32 deletions exampleSite/config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,21 @@ languageCode: en-us
title: "Toha"
theme: "toha"

# Manage languages
# For any more details, you can check the official documentation: https://gohugo.io/content-management/multilingual/
languages:
en:
languageName: English
weight: 1
fr:
languageName: Français
weight: 2
bn:
languageName: বাংলা
weight: 3
# Force a locale to be use, really useful to develop the application ! Should be commented in production, the "weight" should rocks.
#DefaultContentLanguage: fr

# Allow raw html in markdown file
markup:
goldmark:
Expand All @@ -24,22 +39,16 @@ enableEmoji: true

# Custom parameters
params:
# Copyright Notice
copyright: © 2020 Copyright.

# Meta description for your site. This will help the search engines to find your site.
description: Portfolio and personal blog of Jane Doe.

# background image of the landing page
background: "images/background.jpg"

# Provide logos for your site. The inverted logo will be used in the initial
# transparent navbar and the main logo will be used in the non-transparent navbar.
# It will be default to the theme logos if not provided.
logo:
main: /assets/images/main-logo.png
inverted: /assets/images/inverted-logo.png
favicon: /assets/images/favicon.png
main: assets/images/main-logo.png
inverted: assets/images/inverted-logo.png
favicon: assets/images/favicon.png

# GitHub repo URL of your site
gitRepo: https://github.com/hossainemruz/toha-example-site
Expand All @@ -50,30 +59,7 @@ params:
# specify whether you want to show Table of Contents in reading page
enableTOC: true

# specify the list of custom menus that you want to show in the top navbar.
# they will be separated by a divider from the main menus.
customMenus:
- name: Notes
url: https://hossainnotes.netlify.app/docs/example/

# Provide newsletter configuration. This feature hasn't been implemented yet.
# Currently, you can just hide it from the footer.
newsletter:
enable: true

# some information about you
author:
name: "Jane Doe"
nickname: "Jane"
image: "images/avatar.png"
# greeting message before your name. it will default to "Hi! I am" if not provided
greeting: "Hi, I am"
# give your some contact information. they will be used in the footer
contactInfo:
email: "[email protected]"
phone: "+0123456789"
# a summary of what you do
summary:
- I am a Developer
- I work with Go
- I love to work with some fun projects
16 changes: 16 additions & 0 deletions exampleSite/data/bn/author.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# some information about you
name: "জেইন ডো"
nickname: "জেইন"
# greeting message before your name. it will default to "Hi! I am" if not provided
greeting: "হ্যালো, আমি হলাম"
image: "images/avatar.png"
# give your some contact information. they will be used in the footer
contactInfo:
email: "[email protected]"
phone: "+0123456789"

# some summary about what you do
summary:
- আমি একজন ডেভেলপার
- আমি ওপেন সোর্স প্রোজেক্ট এ কাজ করতে পছন্দ করি
- আমি মজার কিছু প্রোজেক্ট এ কাজ করতে ভালবাসি
77 changes: 77 additions & 0 deletions exampleSite/data/bn/sections/about.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# section information
section:
name: আমার-সম্পর্কে
enable: true
weight: 1
showOnNavbar: true
template: sections/about.html

# your designation
designation: Software Engineer
# your company information
company:
name: Example Co.
url: "https://www.example.com"

# your resume. this file path should be relative to you "static" directory
resume: "files/resume.pdf"

# a summary about you
summary: 'I am a passionate software engineer with x years of working experience. I built OSS tools for [Kubernetes](https://kubernetes.io/) using GO. My tools help people to deploy their workloads in Kubernetes. Sometimes, I work on some fun projects such as writing a theme, etc.'

# your social links
# give as many as you want. use font-awesome for the icons.
socialLinks:
- name: Email
icon: "fas fa-envelope"
url: "[email protected]"

- name: Github
icon: "fab fa-github"
url: "https://www.github.com/example"

- name: Stackoverflow
icon: "fab fa-stack-overflow"
url: "#"

- name: LinkedIn
icon: "fab fa-linkedin"
url: "#"

- name: Twitter
icon: "fab fa-twitter"
url: "#"

- name: Facebook
icon: "fab fa-facebook"
url: "#"

# your soft skills
# give the percentage between 50 to 100 with 5 intervals.
# currently supported colors: blue, yellow, pink, green, sky, orange
softSkills:
- name: Leadership
percentage: 85
color: blue
- name: Team Work
percentage: 90
color: yellow
- name: Communication
percentage: 85
color: pink
- name: Hard Working
percentage: 85
color: green
- name: Fast Learner
percentage: 85
color: sky
- name: Problem Solving
percentage: 85
color: orange
# you can also provide color code instead of pre-defined color name
# - name: Example 1
# percentage: 75
# color: "#00adb5"
# - name: Example 2
# percentage: 65
# color: "#8b8383"
24 changes: 24 additions & 0 deletions exampleSite/data/bn/sections/achievements.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# section information
section:
name: সাফল্য
enable: true
weight: 6
showOnNavbar: true
template: sections/achievements.html
# Can optionally hide the title in sections
# hideTitle: true

# Your achievements achievements
achievements:
- title: Best Presenter
image: images/achievements/presenter.jpg
summary: Best presenter in the 2020 XYZ conference.
- title: Champion
image: images/achievements/sport.jpg
summary: Champion in cycling inter-city cycling championship 2020.
- title: Graduation
image: images/achievements/graduation-cap.jpg
summary: Received Bachelor of Science (B.Sc.) in Computer Science and Engineer from XYZ University.
- title: Award Winner
image: images/achievements/woman-winner.jpg
summary: Lorem ipsum dolor sit amet consectetur adipisicing elit. Possimus architecto minus facere vero?
64 changes: 64 additions & 0 deletions exampleSite/data/bn/sections/experiences.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# section information
section:
name: অভিজ্ঞতা
enable: true
weight: 3
showOnNavbar: true
template: sections/experiences.html
# Can optionally hide the title in sections
# hideTitle: true

# Your experiences
experiences:
- company:
name: Example Co.
url: "https://www.example.com"
location: Dhaka Branch
# company overview
overview: Example Co. is a widely recognized company for cloud-native development. It builds tools for Kubernetes.
positions:
- designation: Senior Software Engineer
start: Nov 2019
# don't provide end date if you are currently working there. It will be replaced by "Present"
# end: Dec 2020
# give some points about what was your responsibilities at the company.
responsibilities:
- Design and develop XYZ tool for ABC task
- Design, develop and manage disaster recovery tool [Xtool](https://www.example.com) that backup Kubernetes volumes, databases, and cluster's resource definition.
- Lead backend team.

- designation: Junior Software Engineer
start: Nov 2017
end: Oct 2019
responsibilities:
- Implement and test xyz feature for abc tool.
- Support client for abc tool.
- Learn k,d,w technology for xyz.

- company:
name: PreExample Co.
url: "https://www.preexample.com"
location: Nowhere
overview: PreExample Co. is a gateway company to enter into Example co. So, nothing special here.
positions:
- designation: Software Engineer
start: March 2016
end: May 2017
responsibilities:
- Write lots of example codes.
- Read lots of examples.
- See lots of example videos.

- company:
name: Intern Counting Company (ICC).
url: "https://www.intern.com"
location: Intern Land
overview: Intern counting Company (ICC) is responsible for counting worldwide intern Engineers.
positions:
- designation: Intern
start: Jun 2015
end: Jan 2016
responsibilities:
- Count lost of interns.
- Count more interns.
- Count me as an intern.
64 changes: 64 additions & 0 deletions exampleSite/data/bn/sections/projects.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# section information
section:
name: প্রোজেক্ট
enable: true
weight: 4
showOnNavbar: true
template: sections/projects.html
# Can optionally hide the title in sections
# hideTitle: true

# filter buttons
buttons:
- name: All
filter: "all"
- name: Professional
filter: "professional"
- name: Academic
filter: "academic"
- name: Hobby
filter: "hobby"

# your projects
projects:
- name: Kubernetes
logo: images/projects/kubernetes.png
role: Contributor
timeline: "March 2018 - Present"
repo: https://github.com/kubernetes/kubernetes # If your project is a public repo on GitHub, then provide this link. it will show star count.
#url: "" # If your project is not a public repo but it has a website or any external details url then provide it here. don't provide "repo" and "url" simultaneously.
summary: Production-Grade Container Scheduling and Management.
tags: ["professional", "kubernetes", "cloud"]

- name: Tensorflow
logo: images/projects/tensorflow.png
role: Developer
timeline: "Jun 2018 - Present"
repo: https://github.com/tensorflow/tensorflow
#url: ""
summary: An Open Source Machine Learning Framework for Everyone.
tags: ["professional", "machine-learning","academic"]

- name: A sample academic paper
role: Team Lead
timeline: "Jan 2017 - Nov 2017"
url: "https://www.example.com"
summary: Lorem ipsum dolor sit amet consectetur adipisicing elit. Sapiente eius reprehenderit animi suscipit autem eligendi esse amet aliquid error eum. Accusantium distinctio soluta aliquid quas placeat modi suscipit eligendi nisi.
tags: ["academic","iot"]

- name: Nocode
logo: images/projects/no-code.png
role: Nothing
timeline: "Oct 2019 - Dec 2019"
repo: https://github.com/kelseyhightower/nocode
#url: ""
summary: The best way to write secure and reliable applications. Write nothing; deploy nowhere.
tags: ["hobby", "fun"]

- name: Toha
logo: images/projects/toha.png
role: Owner
timeline: "Jun 2019 - Present"
repo: https://github.com/hossainemruz/toha
summary: A Hugo theme for personal portfolio.
tags: ["hobby","hugo","theme","professional"]
11 changes: 11 additions & 0 deletions exampleSite/data/bn/sections/recent-posts.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# section information
section:
name: সাম্প্রতিক-পোস্ট
enable: true
weight: 5
showOnNavbar: true
template: sections/recent-posts.html
# Can optionally hide the title in sections
# hideTitle: true

# no additional configuration is required
49 changes: 49 additions & 0 deletions exampleSite/data/bn/sections/skills.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# section information
section:
name: দক্ষতা
enable: true
weight: 2
showOnNavbar: true
template: sections/skills.html
# Can optionally hide the title in sections
# hideTitle: true

# Your Skills.
# Give a summary of you each skill in the summary section.
skills:
- name: Kubernetes
icon: "images/skills/kubernetes.png"
summary: "Capable of deploying, managing application on Kubernetes. Experienced in writing Kubernetes controllers for CRDs."
url: "https://kubernetes.io/"

- name: Go Development
icon: "images/skills/go.png"
summary: "Using as the main language for professional development. Capable of writing scalable, testable, and maintainable program."
url: "https://golang.org/"

- name: Cloud Computing
icon: "images/skills/cloud.png"
summary: "Worked with most of the major clouds such as GCP, AWS, Azure etc."

- name: Docker
icon: "images/skills/docker.svg"
summary: "Write most of the programs as dockerized container. Experienced with multi-stage, multi-arch build process."
url: "https://www.docker.com/"

- name: Prometheus
icon: "images/skills/prometheus.png"
summary: "Capable of setup, configure Prometheus metrics. Experienced with PromQL, AlertManager. Also, experienced with writing metric exporters."
url: "https://prometheus.io/"

- name: Linux
icon: "images/skills/linux.png"
summary: "Using as the main operating system. Capable of writing bash/shell scripts."

- name: Git
icon: "images/skills/git.png"
summary: "Experienced with git-based development. Mostly, use Github. Also, have experience in working with GitLab."
url: "https://git-scm.com/"

- name: C++
icon: "images/skills/c++.png"
summary: "Know basic C/C++ programming. Used for contest programming and problem solving."
Loading

0 comments on commit 46b21e0

Please sign in to comment.