bilingual-jekyll-resume-theme 0.4.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +28 -0
- data/README.md +131 -20
- data/_data/ar/months.yml +12 -0
- data/_includes/ar-date.html +32 -0
- data/_layouts/default.html +2 -0
- data/_layouts/resume-ar.html +1 -1
- data/docs/CONFIG_GUIDE.md +28 -13
- data/docs/DATA_GUIDE.md +106 -27
- data/docs/INCLUDES_GUIDE.md +17 -8
- data/docs/LAYOUTS_GUIDE.md +40 -25
- data/docs/PROJECT_OVERVIEW.md +69 -0
- data/docs/SASS_GUIDE.md +3 -1
- data/docs/_data/ar/associations.yml +27 -0
- data/docs/_data/ar/certifications.yml +73 -0
- data/docs/_data/ar/courses.yml +39 -0
- data/docs/_data/ar/education.yml +49 -0
- data/docs/_data/ar/experience.yml +50 -0
- data/docs/_data/ar/header.yml +6 -0
- data/docs/_data/ar/interests.yml +13 -0
- data/docs/_data/ar/languages.yml +29 -0
- data/docs/_data/ar/links.yml +17 -0
- data/docs/_data/ar/projects.yml +28 -0
- data/docs/_data/ar/recognitions.yml +23 -0
- data/docs/_data/ar/skills.yml +17 -0
- data/docs/_data/ar/volunteering.yml +39 -0
- data/docs/_data/en/associations.yml +27 -0
- data/docs/_data/en/certifications.yml +73 -0
- data/docs/_data/en/courses.yml +39 -0
- data/docs/_data/en/education.yml +49 -0
- data/docs/_data/en/experience.yml +50 -0
- data/docs/_data/en/header.yml +6 -0
- data/docs/_data/en/interests.yml +13 -0
- data/docs/_data/en/languages.yml +29 -0
- data/docs/_data/en/links.yml +17 -0
- data/docs/_data/en/projects.yml +28 -0
- data/docs/_data/en/recognitions.yml +23 -0
- data/docs/_data/en/skills.yml +17 -0
- data/docs/_data/en/volunteering.yml +39 -0
- metadata +59 -23
- /data/{CODE_OF_CONDUCT.MD → CODE_OF_CONDUCT.md} +0 -0
- /data/docs/{_config.sample.yml → _data/_config.sample.yml} +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6a564ca7ea40cba9ce7787387ec40f652ba6d372c20efc4e1ea7d4ca96c7fc07
|
|
4
|
+
data.tar.gz: f1bda2da34e9b4655a74a4e08657cb56ae52b8d735bb42e705c59c369fd1bd29
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: da02b5f0d81a45531f55151bc1eec5eb9bf0acb74229d40cac47a41a452bfac4c6da21f0ee970930e5b4b40128b56189978c01809301f0673c1ba94e88c0b9fd
|
|
7
|
+
data.tar.gz: ae3a25641c914cfd40894c7484453aa6535cc61f906f9c4c0ffb6653736534fe424ff7d27ccaa859bd1defb0315407950b8c60ed43b9b5dcf48fc246144ebfe5
|
data/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,33 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
## [0.5.0] - 2025-11-06
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
* Add sample configuration file for bilingual Jekyll resume theme ([`ce25360`](https://github.com/kmutahar/bilingual-jekyll-resume-theme/commit/ce25360b10bcc8bd1a26e4d3b3abb20a9f0d4e04))
|
|
11
|
+
|
|
12
|
+
* Add conditional Mastodon link for social verification ([`5bb7f62`](https://github.com/kmutahar/bilingual-jekyll-resume-theme/commit/5bb7f62586871c904df10003fe17f5f9fce9fce4))
|
|
13
|
+
|
|
14
|
+
* Add default Arabic months i18n files ([`1c3cac6`](https://github.com/kmutahar/bilingual-jekyll-resume-theme/commit/1c3cac6c4f0179f0447c746d6d950c3addc33907))
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
* Add project overview for bilingual Jekyll resume theme ([`6708f50`](https://github.com/kmutahar/bilingual-jekyll-resume-theme/commit/6708f50bc84a6dd62fb7f77e5ed7797d7a97bd08))
|
|
19
|
+
|
|
20
|
+
* Revise README for bilingual Jekyll resume theme ([`7efff88`](https://github.com/kmutahar/bilingual-jekyll-resume-theme/commit/7efff88b81d48aa9fac5d70cd4501e05f888e1db))
|
|
21
|
+
|
|
22
|
+
* Update configuration and data guides for bilingual resume theme ([`9c0f9e9`](https://github.com/kmutahar/bilingual-jekyll-resume-theme/commit/9c0f9e9c20633970ffeb795cc6bd581caf7a4e62))
|
|
23
|
+
|
|
24
|
+
* Add Arabic and English resume data samples ([`a86a668`](https://github.com/kmutahar/bilingual-jekyll-resume-theme/commit/a86a6680bb1384bc58053b502157aa0ae568a039))
|
|
25
|
+
|
|
26
|
+
* Enhance ar-date include with detailed comments and usage instructions ([`5f297d1`](https://github.com/kmutahar/bilingual-jekyll-resume-theme/commit/5f297d1f2184b24e7feef8257a8bd9d73295d321))
|
|
27
|
+
|
|
28
|
+
* Update bilingual-jekyll-resume-theme.gemspec ([`ca84a88`](https://github.com/kmutahar/bilingual-jekyll-resume-theme/commit/ca84a886bcdb7d8a41c1ed60dffd477207db9739))
|
|
29
|
+
|
|
30
|
+
* Rename CODE_OF_CONDUCT.MD to CODE_OF_CONDUCT.md ([`127813b`](https://github.com/kmutahar/bilingual-jekyll-resume-theme/commit/127813b4f6acb867dff576977b899d1b46d20241))
|
|
31
|
+
|
|
32
|
+
* Use ar-date include for Date of Birth ([`0b2ec85`](https://github.com/kmutahar/bilingual-jekyll-resume-theme/commit/0b2ec854638e9ceaefddc5b87f6a855cdeb0b596))
|
|
33
|
+
|
|
7
34
|
## [0.4.0] - 2025-11-05
|
|
8
35
|
|
|
9
36
|
### Added
|
|
@@ -98,6 +125,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
98
125
|
|
|
99
126
|
* Initial commit (New Theme Template) ([`00af662`](https://github.com/kmutahar/bilingual-jekyll-resume-theme/commit/00af6628dfec7aefe0ef7d7083bf98c9713a5ffd))
|
|
100
127
|
|
|
128
|
+
[0.5.0]: https://github.com/kmutahar/bilingual-jekyll-resume-theme/compare/v0.4.0...v0.5.0
|
|
101
129
|
[0.4.0]: https://github.com/kmutahar/bilingual-jekyll-resume-theme/compare/v0.3.1...v0.4.0
|
|
102
130
|
[0.3.1]: https://github.com/kmutahar/bilingual-jekyll-resume-theme/compare/v0.3.0...v0.3.1
|
|
103
131
|
[0.3.0]: https://github.com/kmutahar/bilingual-jekyll-resume-theme/compare/v0.2.0...v0.3.0
|
data/README.md
CHANGED
|
@@ -1,50 +1,161 @@
|
|
|
1
1
|
# bilingual-jekyll-resume-theme
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[](https://github.com/kmutahar/bilingual-jekyll-resume-theme/releases) [](https://badge.fury.io/rb/bilingual-jekyll-resume-theme)
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
A flexible Jekyll theme for creating clean, data-driven, bilingual (English & Arabic) resume/CV websites. Created and maintained by Khaldoon Mutahar. See the latest version on the [Releases page](https://github.com/kmutahar/bilingual-jekyll-resume-theme/releases).
|
|
6
|
+
Inspired by and originally forked from [Joel Glovier’s resume template](https://github.com/jglovier/resume-template/). Joel’s version was a basic English-only theme with limited customization (e.g., no section reordering); this project has since evolved into a fully separate theme authored by Khaldoon.
|
|
6
7
|
|
|
7
|
-
|
|
8
|
+
## Features
|
|
8
9
|
|
|
9
|
-
|
|
10
|
+
- **Bilingual support**: Separate layouts for English (`resume-en.html`) and Arabic (`resume-ar.html`) with full RTL support
|
|
11
|
+
- **Data-driven architecture**: All resume content stored in YAML files, supporting multiple data paths and versioning
|
|
12
|
+
- **12 resume sections**: Experience, Education, Certifications, Courses, Volunteering, Projects, Skills, Recognition, Associations, Languages, Links, Interests
|
|
13
|
+
- **Print-friendly**: Optimized for PDF generation and printing
|
|
14
|
+
- **SEO ready**: Built-in support for multilingual SEO, sitemap, and feed generation
|
|
15
|
+
- **Arabic month support**: Arabic date formatting included out of the box (`_data/ar/months.yml`)
|
|
10
16
|
|
|
11
|
-
|
|
17
|
+
## Quick Start
|
|
12
18
|
|
|
19
|
+
### Installation
|
|
20
|
+
|
|
21
|
+
1. Add to your Jekyll site's `Gemfile`:
|
|
13
22
|
```ruby
|
|
14
23
|
gem "bilingual-jekyll-resume-theme"
|
|
15
24
|
```
|
|
16
25
|
|
|
17
|
-
|
|
18
|
-
|
|
26
|
+
2. Add to your `_config.yml`:
|
|
19
27
|
```yaml
|
|
20
28
|
theme: bilingual-jekyll-resume-theme
|
|
21
29
|
```
|
|
22
30
|
|
|
23
|
-
|
|
31
|
+
3. Install dependencies:
|
|
32
|
+
```bash
|
|
33
|
+
bundle install
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Basic Setup
|
|
37
|
+
|
|
38
|
+
1. **Copy sample configuration**: Use `docs/_data/_config.sample.yml` as a starting point for your `_config.yml`
|
|
24
39
|
|
|
25
|
-
|
|
40
|
+
2. **Copy sample data files**:
|
|
41
|
+
- English data: Copy files from `docs/_data/en/` to your `_data/en/` directory (includes `header.yml` for the intro paragraph)
|
|
42
|
+
- Arabic data: Copy files from `docs/_data/ar/` to your `_data/ar/` directory (includes `header.yml` for the Arabic intro paragraph)
|
|
26
43
|
|
|
27
|
-
|
|
44
|
+
3. **Create resume pages**: Create pages using the `resume-en` and `resume-ar` layouts:
|
|
45
|
+
```yaml
|
|
46
|
+
---
|
|
47
|
+
layout: resume-en
|
|
48
|
+
permalink: /resume/en/
|
|
49
|
+
lang: en
|
|
50
|
+
t_id: resume
|
|
51
|
+
---
|
|
52
|
+
```
|
|
28
53
|
|
|
29
|
-
|
|
54
|
+
4. **Run the development server**:
|
|
55
|
+
```bash
|
|
56
|
+
bundle exec jekyll serve
|
|
57
|
+
```
|
|
30
58
|
|
|
31
|
-
|
|
59
|
+
Visit `http://localhost:4000` to see your resume!
|
|
32
60
|
|
|
33
|
-
|
|
61
|
+
## Documentation
|
|
34
62
|
|
|
35
|
-
|
|
63
|
+
This theme is fully documented. Choose the guide that fits your needs:
|
|
64
|
+
|
|
65
|
+
### 📘 [Configuration Guide](docs/CONFIG_GUIDE.md)
|
|
66
|
+
Complete guide to `_config.yml` settings. Learn how to configure sections, contact info, social links, analytics, and more. **Start here for beginners.**
|
|
67
|
+
|
|
68
|
+
### 📊 [Data Structure Guide](docs/DATA_GUIDE.md)
|
|
69
|
+
Detailed documentation of all 12 data file types (experience, education, skills, etc.) with examples. Learn how to structure your YAML files and what fields are required vs optional.
|
|
70
|
+
|
|
71
|
+
### 🎨 [Layouts Guide](docs/LAYOUTS_GUIDE.md)
|
|
72
|
+
Deep dive into how layouts work, how data flows through them, and how to create custom layouts. Useful for advanced customization.
|
|
73
|
+
|
|
74
|
+
### 🧩 [Includes Guide](docs/INCLUDES_GUIDE.md)
|
|
75
|
+
Understanding the theme's include system, how sections render, and how to add new sections or customize existing ones.
|
|
76
|
+
|
|
77
|
+
### 🎨 [SASS/SCSS Guide](docs/SASS_GUIDE.md)
|
|
78
|
+
Complete guide to the theme's styling system, how to customize colors/fonts, and how to override styles without forking the theme.
|
|
79
|
+
|
|
80
|
+
## Project Structure
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
bilingual-jekyll-resume-theme/
|
|
84
|
+
├── _layouts/ # HTML templates (default, resume-en, resume-ar, profile)
|
|
85
|
+
├── _includes/ # Reusable components (sections, headers, analytics)
|
|
86
|
+
├── _sass/ # SCSS stylesheets (RTL support, print styles)
|
|
87
|
+
├── _data/ # Theme data (includes ar/months.yml)
|
|
88
|
+
├── assets/ # CSS, images, favicons
|
|
89
|
+
└── docs/ # Documentation and sample files
|
|
90
|
+
├── _data/ # Sample data files (copy to your site's _data/)
|
|
91
|
+
└── *.md # Documentation guides
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Key Concepts
|
|
95
|
+
|
|
96
|
+
### Data Paths
|
|
36
97
|
|
|
37
|
-
|
|
98
|
+
**Recommended approach (for beginners):** Use language-specific folders. The theme supports separate data paths for English and Arabic:
|
|
99
|
+
```yaml
|
|
100
|
+
active_resume_path_en: "en" # Uses _data/en/* (recommended)
|
|
101
|
+
active_resume_path_ar: "ar" # Uses _data/ar/* (recommended)
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
This is the recommended approach even if you're only using one language, as it keeps your data organized and makes it easy to add more languages later. **Advanced users:** You can place files directly in `_data/` (root) by setting these to empty strings, but this is not recommended for beginners.
|
|
105
|
+
|
|
106
|
+
See the [Configuration Guide](docs/CONFIG_GUIDE.md#data-source-active_resume_path_en_ar) for details.
|
|
107
|
+
|
|
108
|
+
### Sample Files
|
|
109
|
+
|
|
110
|
+
The theme includes sample data files in `docs/_data/en/` and `docs/_data/ar/` that you can copy to your site. These files contain:
|
|
111
|
+
- Commented examples for all 12 section types
|
|
112
|
+
- Required vs optional field explanations
|
|
113
|
+
- Multiple examples per section
|
|
114
|
+
|
|
115
|
+
### Arabic Month Support
|
|
116
|
+
|
|
117
|
+
The theme includes `_data/ar/months.yml` with Arabic month names already configured. You don't need to create this file manually—it's included in the theme.
|
|
38
118
|
|
|
39
119
|
## Development
|
|
40
120
|
|
|
41
|
-
To
|
|
121
|
+
To develop this theme locally:
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
# Install dependencies
|
|
125
|
+
bundle install
|
|
126
|
+
|
|
127
|
+
# Run development server
|
|
128
|
+
bundle exec jekyll serve
|
|
42
129
|
|
|
43
|
-
|
|
130
|
+
# Build the gem
|
|
131
|
+
gem build bilingual-jekyll-resume-theme.gemspec
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
For more details, see [WARP.md](WARP.md) or the [Development section](#development) below.
|
|
135
|
+
|
|
136
|
+
## Requirements
|
|
137
|
+
|
|
138
|
+
- Jekyll 4.4+ (specified in `bilingual-jekyll-resume-theme.gemspec`)
|
|
139
|
+
- Required plugins (automatically included):
|
|
140
|
+
- `jekyll-feed`
|
|
141
|
+
- `jekyll-seo-tag`
|
|
142
|
+
- `jekyll-sitemap`
|
|
143
|
+
- `jekyll-redirect-from`
|
|
144
|
+
|
|
145
|
+
## Contributing
|
|
44
146
|
|
|
45
|
-
|
|
46
|
-
To add a custom directory to your theme-gem, please edit the regexp in `bilingual-jekyll-resume-theme.gemspec` accordingly.
|
|
147
|
+
Bug reports and pull requests are welcome on GitHub. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](https://www.contributor-covenant.org/) code of conduct.
|
|
47
148
|
|
|
48
149
|
## License
|
|
49
150
|
|
|
50
|
-
The theme is available as open source under the terms of the [MIT License](
|
|
151
|
+
The theme is available as open source under the terms of the [MIT License](LICENSE.txt).
|
|
152
|
+
|
|
153
|
+
## Support
|
|
154
|
+
|
|
155
|
+
- 📖 Check the [documentation guides](docs/) for detailed information
|
|
156
|
+
- 🐛 Report issues on [GitHub Issues](https://github.com/kmutahar/bilingual-jekyll-resume-theme/issues)
|
|
157
|
+
- 💡 See [project_overview.md](project_overview.md) for a high-level architecture overview
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
**Created by Khaldoon Mutahar** | Version 0.4.0 | MIT License
|
data/_data/ar/months.yml
ADDED
data/_includes/ar-date.html
CHANGED
|
@@ -1,7 +1,39 @@
|
|
|
1
|
+
{% comment %}
|
|
2
|
+
Arabic Date Formatter Include
|
|
3
|
+
This include file formats a date in Arabic format by looking up the Arabic month name
|
|
4
|
+
from the site data and formatting it according to the specified style.
|
|
5
|
+
|
|
6
|
+
Usage:
|
|
7
|
+
{% include ar-date.html date=page.date style="MDY" %}
|
|
8
|
+
{% include ar-date.html date=page.date %}
|
|
9
|
+
|
|
10
|
+
Parameters:
|
|
11
|
+
- date: The date to format (required)
|
|
12
|
+
- style: "MDY" for "Month Day, Year" format, or any other value for "Month Year" format (optional)
|
|
13
|
+
{% endcomment %}
|
|
14
|
+
|
|
15
|
+
{% comment %}
|
|
16
|
+
Extract date components from the provided date using Jekyll date filters:
|
|
17
|
+
- "%-m": Month as a number (1-12) without leading zeros
|
|
18
|
+
- "%-d": Day as a number (1-31) without leading zeros
|
|
19
|
+
- "%Y": Year as a 4-digit number
|
|
20
|
+
{% endcomment %}
|
|
1
21
|
{% assign m = include.date | date: "%-m" %}
|
|
2
22
|
{% assign d = include.date | date: "%-d" %}
|
|
3
23
|
{% assign y = include.date | date: "%Y" %}
|
|
24
|
+
|
|
25
|
+
{% comment %}
|
|
26
|
+
Look up the Arabic month name from the site data file:
|
|
27
|
+
- site.data.ar.months is a YAML file containing month names in Arabic
|
|
28
|
+
- The month number (m) is used as the key to retrieve the corresponding Arabic month name
|
|
29
|
+
{% endcomment %}
|
|
4
30
|
{% assign month_name = site.data.ar.months[m] %}
|
|
31
|
+
|
|
32
|
+
{% comment %}
|
|
33
|
+
Format the date output based on the style parameter:
|
|
34
|
+
- If style is "MDY": Output "Month Day, Year" (e.g., "يناير 15, 2024")
|
|
35
|
+
- Otherwise: Output "Month Year" (e.g., "يناير 2024")
|
|
36
|
+
{% endcomment %}
|
|
5
37
|
{% if include.style == "MDY" %}
|
|
6
38
|
{{ month_name }} {{ d }}, {{ y }}
|
|
7
39
|
{% else %}
|
data/_layouts/default.html
CHANGED
|
@@ -21,8 +21,10 @@
|
|
|
21
21
|
<!-- Analytics head snippet (GTM or gtag). Configured in _config.yml -->
|
|
22
22
|
{% include analytics-head.html %}
|
|
23
23
|
|
|
24
|
+
{% if site.social_links.mastodon %}
|
|
24
25
|
<!-- rel="me" for Mastodon verification / IndieAuth -->
|
|
25
26
|
<link rel="me" href="{{ site.social_links.mastodon }}">
|
|
27
|
+
{% endif %}
|
|
26
28
|
</head>
|
|
27
29
|
|
|
28
30
|
<body>
|
data/_layouts/resume-ar.html
CHANGED
|
@@ -205,7 +205,7 @@ resume_data.experience == site.data['2025-06']['20250621-PM'].experience
|
|
|
205
205
|
{% endif %}
|
|
206
206
|
|
|
207
207
|
{% if site.contact_info.dob %}
|
|
208
|
-
تاريخ الميلاد: {
|
|
208
|
+
تاريخ الميلاد: {% include ar-date.html date=site.contact_info.dob style="MDY" %}
|
|
209
209
|
{% endif %}
|
|
210
210
|
|
|
211
211
|
{% assign active_languages = resume_data.languages | where: "active", true %}
|
data/docs/CONFIG_GUIDE.md
CHANGED
|
@@ -24,6 +24,8 @@ Make your site render correctly with this theme. This guide matches the shipped
|
|
|
24
24
|
|
|
25
25
|
## Quick start
|
|
26
26
|
|
|
27
|
+
**For beginners:** This guide explains every setting in `_config.yml`. Start with the basics below, then add more sections as you need them. You can find sample configuration files in `docs/_data/_config.sample.yml` and sample data files in `docs/_data/en/` and `docs/_data/ar/`.
|
|
28
|
+
|
|
27
29
|
Copy, paste, and customize the ALL-CAPS values:
|
|
28
30
|
|
|
29
31
|
```yaml
|
|
@@ -89,30 +91,39 @@ That’s enough to render a working resume using data from `_data/`.
|
|
|
89
91
|
|
|
90
92
|
The layouts read resume data from a subtree of `_data/` using dot-separated paths.
|
|
91
93
|
|
|
92
|
-
- active_resume_path_en:
|
|
93
|
-
|
|
94
|
-
|
|
94
|
+
**Recommended approach (for beginners):** Use language-specific folders. Set `active_resume_path_en: "en"` and `active_resume_path_ar: "ar"` to use `_data/en/` and `_data/ar/` folders. This is the recommended approach even if you're only using one language, as it keeps your data organized and makes it easy to add more languages later.
|
|
95
|
+
|
|
96
|
+
**Advanced approach:** If you place files directly in `_data/` (root), set `active_resume_path_en: ""` and `active_resume_path_ar: ""`. This approach is not recommended for beginners.
|
|
97
|
+
|
|
98
|
+
- active_resume_path_en: Path for English pages (recommended: `"en"` for `_data/en/`).
|
|
99
|
+
- active_resume_path_ar: Path for Arabic pages (recommended: `"ar"` for `_data/ar/`).
|
|
100
|
+
- If the value is an empty string (`""`) or not set, the root of `_data/` is used (advanced users only).
|
|
95
101
|
|
|
96
102
|
Examples:
|
|
97
103
|
|
|
98
104
|
```yaml
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
#
|
|
105
|
+
# Recommended: Use language-specific folders
|
|
106
|
+
active_resume_path_en: "en" # -> uses _data/en/* (recommended for beginners)
|
|
107
|
+
active_resume_path_ar: "ar" # -> uses _data/ar/* (recommended for beginners)
|
|
108
|
+
|
|
109
|
+
# Advanced: Nested example for versioning
|
|
102
110
|
active_resume_path_en: "2025-06.PM" # -> uses _data/2025-06/PM/*
|
|
103
|
-
|
|
111
|
+
|
|
112
|
+
# Advanced: Root example (not recommended for beginners)
|
|
113
|
+
# Only use this if you place files directly under _data/ (not in language folders)
|
|
104
114
|
active_resume_path_en: ""
|
|
105
115
|
active_resume_path_ar: ""
|
|
106
116
|
```
|
|
107
117
|
|
|
108
|
-
Note
|
|
118
|
+
**Note:** This theme uses the two keys above (there is no single `active_resume_path`). For beginners, always use `"en"` and `"ar"` to keep your data organized in language folders.
|
|
109
119
|
|
|
110
120
|
---
|
|
111
121
|
|
|
112
122
|
## Header and contact
|
|
113
123
|
|
|
114
124
|
- resume_avatar (bool): Show/hide avatar in the header.
|
|
115
|
-
-
|
|
125
|
+
- resume_header_intro_en (bool): Enable/disable the English intro paragraph below name/title. When enabled, reads from `resume_data.header.intro` (create `_data/en/header.yml` with an `intro:` field). **Recommended:** Use `_data/en/header.yml` for English.
|
|
126
|
+
- resume_header_intro_ar (bool): Enable/disable the Arabic intro paragraph below name/title. When enabled, reads from `resume_data.header.intro` (create `_data/ar/header.yml` with an `intro:` field). **Recommended:** Use `_data/ar/header.yml` for Arabic.
|
|
116
127
|
- resume_looking_for_work (bool | omitted):
|
|
117
128
|
- true → Shows “Contact me” button using `contact_info.email`.
|
|
118
129
|
- false → Shows a neutral “I’m not looking for work” pill.
|
|
@@ -146,8 +157,9 @@ Helpful toggles:
|
|
|
146
157
|
|
|
147
158
|
- resume_title_ar: Arabic job title for the Arabic layout.
|
|
148
159
|
- address_ar: Arabic address line for the Arabic header contact row.
|
|
149
|
-
- Arabic dates: `_includes/ar-date.html` expects `site.data.ar.months` to map 1–12 to Arabic month names
|
|
150
|
-
- Present text: English shows
|
|
160
|
+
- Arabic dates: `_includes/ar-date.html` expects `site.data.ar.months` to map 1–12 to Arabic month names. **The theme already includes `_data/ar/months.yml`, so you don't need to create this file manually.**
|
|
161
|
+
- Present text: English shows "Present"; Arabic shows "حتى الآن".
|
|
162
|
+
- Header intro: To add an intro paragraph below your name/title, create `_data/en/header.yml` for English (or `_data/ar/header.yml` for Arabic) with an `intro:` field containing your text. Then enable `resume_header_intro_en: true` or `resume_header_intro_ar: true` in `_config.yml`. **Recommended:** Always use language-specific folders (`_data/en/` and `_data/ar/`). Sample files are available in `docs/_data/en/header.yml` and `docs/_data/ar/header.yml`.
|
|
151
163
|
|
|
152
164
|
---
|
|
153
165
|
|
|
@@ -228,7 +240,8 @@ contact_info:
|
|
|
228
240
|
|
|
229
241
|
display_header_contact_info: true
|
|
230
242
|
resume_avatar: true
|
|
231
|
-
|
|
243
|
+
resume_header_intro_en: true # Enable English intro (reads from resume_data.header.intro)
|
|
244
|
+
resume_header_intro_ar: true # Enable Arabic intro (reads from resume_data.header.intro)
|
|
232
245
|
resume_looking_for_work: true
|
|
233
246
|
|
|
234
247
|
# Data paths
|
|
@@ -316,6 +329,8 @@ exclude:
|
|
|
316
329
|
- Contact button shows but nothing happens.
|
|
317
330
|
- Set `contact_info.email` or set `resume_looking_for_work: false`.
|
|
318
331
|
- Arabic months appear as numbers.
|
|
319
|
-
-
|
|
332
|
+
- The theme includes `_data/ar/months.yml` by default. If you're using a custom data path, ensure `site.data.ar.months` is accessible.
|
|
333
|
+
- Header intro not showing.
|
|
334
|
+
- Enable `resume_header_intro_en: true` or `resume_header_intro_ar: true` in `_config.yml`, and create `_data/en/header.yml` (or `_data/ar/header.yml` for Arabic) in your active data path with an `intro:` field. You can copy sample files from `docs/_data/en/header.yml` and `docs/_data/ar/header.yml`.
|
|
320
335
|
- Data for EN/AR lives in different folders.
|
|
321
336
|
- Point `active_resume_path_en` and `active_resume_path_ar` at the right subtrees (e.g., `en` and `ar`).
|
data/docs/DATA_GUIDE.md
CHANGED
|
@@ -2,6 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
This document explains all data file structures used by the bilingual Jekyll resume theme. Each section of your resume is stored in a separate YAML file in the `_data/` directory.
|
|
4
4
|
|
|
5
|
+
**For beginners:** All your resume content (experience, education, skills, etc.) goes in YAML files in the `_data/` folder.
|
|
6
|
+
|
|
7
|
+
**Recommended approach:** Use language-specific folders (`_data/en/` for English and `_data/ar/` for Arabic). This is the recommended approach even if you're only using one language, as it makes it easier to add more languages in the future and keeps your data organized.
|
|
8
|
+
|
|
9
|
+
**Advanced users:** If you prefer, you can place files directly in `_data/` (root), but you'll need to set `active_resume_path_en: ""` and `active_resume_path_ar: ""` in your `_config.yml`.
|
|
10
|
+
|
|
11
|
+
You can copy sample files from `docs/_data/en/` and `docs/_data/ar/` to get started. The theme reads these files and displays them on your resume pages.
|
|
12
|
+
|
|
5
13
|
Key Features:
|
|
6
14
|
|
|
7
15
|
1. Complete coverage of all 12 data types with commented YAML examples
|
|
@@ -40,13 +48,16 @@ Highlights:
|
|
|
40
48
|
10. [Languages](#languages)
|
|
41
49
|
11. [Links](#links)
|
|
42
50
|
12. [Interests](#interests)
|
|
43
|
-
13. [
|
|
51
|
+
13. [Header Intro](#header-intro)
|
|
52
|
+
14. [General Guidlines](#general-guidelines)
|
|
44
53
|
|
|
45
54
|
---
|
|
46
55
|
|
|
47
56
|
## Experience
|
|
48
57
|
|
|
49
|
-
**File:** `_data/experience.yml`
|
|
58
|
+
**File:** `_data/en/experience.yml` (English) or `_data/ar/experience.yml` (Arabic)
|
|
59
|
+
|
|
60
|
+
**Recommended:** Use `_data/en/experience.yml` for English and `_data/ar/experience.yml` for Arabic. This keeps your data organized and makes it easy to add more languages later.
|
|
50
61
|
|
|
51
62
|
Jobs are grouped by company name. Multiple roles at the same company will be displayed together. Roles are sorted by `startdate` (most recent first).
|
|
52
63
|
|
|
@@ -93,7 +104,9 @@ Jobs are grouped by company name. Multiple roles at the same company will be dis
|
|
|
93
104
|
|
|
94
105
|
## Education
|
|
95
106
|
|
|
96
|
-
**File:** `_data/education.yml`
|
|
107
|
+
**File:** `_data/en/education.yml` (English) or `_data/ar/education.yml` (Arabic)
|
|
108
|
+
|
|
109
|
+
**Recommended:** Use `_data/en/education.yml` for English and `_data/ar/education.yml` for Arabic.
|
|
97
110
|
|
|
98
111
|
```yaml
|
|
99
112
|
- degree: "Bachelor of Business" # Required: Degree name and details
|
|
@@ -125,7 +138,9 @@ Jobs are grouped by company name. Multiple roles at the same company will be dis
|
|
|
125
138
|
|
|
126
139
|
## Certifications
|
|
127
140
|
|
|
128
|
-
**File:** `_data/certifications.yml`
|
|
141
|
+
**File:** `_data/en/certifications.yml` (English) or `_data/ar/certifications.yml` (Arabic)
|
|
142
|
+
|
|
143
|
+
**Recommended:** Use `_data/en/certifications.yml` for English and `_data/ar/certifications.yml` for Arabic.
|
|
129
144
|
|
|
130
145
|
```yaml
|
|
131
146
|
- name: "Business Certificate" # Required: Certification name
|
|
@@ -165,7 +180,9 @@ Jobs are grouped by company name. Multiple roles at the same company will be dis
|
|
|
165
180
|
|
|
166
181
|
## Courses
|
|
167
182
|
|
|
168
|
-
**File:** `_data/courses.yml`
|
|
183
|
+
**File:** `_data/en/courses.yml` (English) or `_data/ar/courses.yml` (Arabic)
|
|
184
|
+
|
|
185
|
+
**Recommended:** Use `_data/en/courses.yml` for English and `_data/ar/courses.yml` for Arabic.
|
|
169
186
|
|
|
170
187
|
```yaml
|
|
171
188
|
- name: "Certificate of Course Completion" # Required: Course name
|
|
@@ -200,7 +217,9 @@ Jobs are grouped by company name. Multiple roles at the same company will be dis
|
|
|
200
217
|
|
|
201
218
|
## Volunteering
|
|
202
219
|
|
|
203
|
-
**File:** `_data/volunteering.yml`
|
|
220
|
+
**File:** `_data/en/volunteering.yml` (English) or `_data/ar/volunteering.yml` (Arabic)
|
|
221
|
+
|
|
222
|
+
**Recommended:** Use `_data/en/volunteering.yml` for English and `_data/ar/volunteering.yml` for Arabic.
|
|
204
223
|
|
|
205
224
|
Structure is identical to Experience section. Volunteer positions are grouped by organization.
|
|
206
225
|
|
|
@@ -232,7 +251,9 @@ Same as Experience section - grouped by organization, sorted by date.
|
|
|
232
251
|
|
|
233
252
|
## Projects
|
|
234
253
|
|
|
235
|
-
**File:** `_data/projects.yml`
|
|
254
|
+
**File:** `_data/en/projects.yml` (English) or `_data/ar/projects.yml` (Arabic)
|
|
255
|
+
|
|
256
|
+
**Recommended:** Use `_data/en/projects.yml` for English and `_data/ar/projects.yml` for Arabic.
|
|
236
257
|
|
|
237
258
|
```yaml
|
|
238
259
|
- project: "Closed Source Project" # Required: Project name
|
|
@@ -269,7 +290,9 @@ Same as Experience section - grouped by organization, sorted by date.
|
|
|
269
290
|
|
|
270
291
|
## Skills
|
|
271
292
|
|
|
272
|
-
**File:** `_data/skills.yml`
|
|
293
|
+
**File:** `_data/en/skills.yml` (English) or `_data/ar/skills.yml` (Arabic)
|
|
294
|
+
|
|
295
|
+
**Recommended:** Use `_data/en/skills.yml` for English and `_data/ar/skills.yml` for Arabic.
|
|
273
296
|
|
|
274
297
|
```yaml
|
|
275
298
|
- skill: "Organizational leadership" # Required: Skill name/title
|
|
@@ -298,7 +321,9 @@ Same as Experience section - grouped by organization, sorted by date.
|
|
|
298
321
|
|
|
299
322
|
## Recognition
|
|
300
323
|
|
|
301
|
-
**File:** `_data/recognitions.yml`
|
|
324
|
+
**File:** `_data/en/recognitions.yml` (English) or `_data/ar/recognitions.yml` (Arabic)
|
|
325
|
+
|
|
326
|
+
**Recommended:** Use `_data/en/recognitions.yml` for English and `_data/ar/recognitions.yml` for Arabic.
|
|
302
327
|
|
|
303
328
|
```yaml
|
|
304
329
|
- award: "Outstanding Achievement" # Required: Award name
|
|
@@ -331,7 +356,9 @@ Same as Experience section - grouped by organization, sorted by date.
|
|
|
331
356
|
|
|
332
357
|
## Associations
|
|
333
358
|
|
|
334
|
-
**File:** `_data/associations.yml`
|
|
359
|
+
**File:** `_data/en/associations.yml` (English) or `_data/ar/associations.yml` (Arabic)
|
|
360
|
+
|
|
361
|
+
**Recommended:** Use `_data/en/associations.yml` for English and `_data/ar/associations.yml` for Arabic.
|
|
335
362
|
|
|
336
363
|
```yaml
|
|
337
364
|
- organization: "Internet Sociaity" # Required: Organization name
|
|
@@ -368,7 +395,9 @@ Same as Experience section - grouped by organization, sorted by date.
|
|
|
368
395
|
|
|
369
396
|
## Languages
|
|
370
397
|
|
|
371
|
-
**File:** `_data/languages.yml`
|
|
398
|
+
**File:** `_data/en/languages.yml` (English) or `_data/ar/languages.yml` (Arabic)
|
|
399
|
+
|
|
400
|
+
**Recommended:** Use `_data/en/languages.yml` for English and `_data/ar/languages.yml` for Arabic.
|
|
372
401
|
|
|
373
402
|
```yaml
|
|
374
403
|
- language: English # Required: Language name
|
|
@@ -408,7 +437,9 @@ Same as Experience section - grouped by organization, sorted by date.
|
|
|
408
437
|
|
|
409
438
|
## Links
|
|
410
439
|
|
|
411
|
-
**File:** `_data/links.yml`
|
|
440
|
+
**File:** `_data/en/links.yml` (English) or `_data/ar/links.yml` (Arabic)
|
|
441
|
+
|
|
442
|
+
**Recommended:** Use `_data/en/links.yml` for English and `_data/ar/links.yml` for Arabic.
|
|
412
443
|
|
|
413
444
|
```yaml
|
|
414
445
|
- description: "Resume" # Required: Link description/title
|
|
@@ -441,7 +472,9 @@ Same as Experience section - grouped by organization, sorted by date.
|
|
|
441
472
|
|
|
442
473
|
## Interests
|
|
443
474
|
|
|
444
|
-
**File:** `_data/interests.yml`
|
|
475
|
+
**File:** `_data/en/interests.yml` (English) or `_data/ar/interests.yml` (Arabic)
|
|
476
|
+
|
|
477
|
+
**Recommended:** Use `_data/en/interests.yml` for English and `_data/ar/interests.yml` for Arabic.
|
|
445
478
|
|
|
446
479
|
Simple list of interests/hobbies.
|
|
447
480
|
|
|
@@ -463,6 +496,33 @@ Simple list of interests/hobbies.
|
|
|
463
496
|
|
|
464
497
|
---
|
|
465
498
|
|
|
499
|
+
## Header Intro
|
|
500
|
+
|
|
501
|
+
**File:** `_data/en/header.yml` (English) or `_data/ar/header.yml` (Arabic)
|
|
502
|
+
|
|
503
|
+
**Recommended:** Use `_data/en/header.yml` for English and `_data/ar/header.yml` for Arabic.
|
|
504
|
+
|
|
505
|
+
Contains the executive summary/intro paragraph that appears below your name and title in the resume header.
|
|
506
|
+
|
|
507
|
+
```yaml
|
|
508
|
+
# Header intro paragraph
|
|
509
|
+
# Enable this in _config.yml with: resume_header_intro_en: true (for English)
|
|
510
|
+
# or resume_header_intro_ar: true (for Arabic)
|
|
511
|
+
|
|
512
|
+
intro: "Your professional summary or elevator pitch goes here. This is the English version."
|
|
513
|
+
```
|
|
514
|
+
|
|
515
|
+
**Display Format:**
|
|
516
|
+
- Appears as a paragraph below your name, title, and social links
|
|
517
|
+
- Only shows if `resume_header_intro_en: true` (English) or `resume_header_intro_ar: true` (Arabic) is set in `_config.yml`
|
|
518
|
+
- Supports basic HTML formatting
|
|
519
|
+
|
|
520
|
+
**Important:**
|
|
521
|
+
- Create separate files for each language: `_data/en/header.yml` for English and `_data/ar/header.yml` for Arabic
|
|
522
|
+
- Sample files are available in `docs/_data/en/header.yml` and `docs/_data/ar/header.yml`
|
|
523
|
+
|
|
524
|
+
---
|
|
525
|
+
|
|
466
526
|
## General Guidelines
|
|
467
527
|
|
|
468
528
|
### Date Formats
|
|
@@ -470,7 +530,8 @@ Simple list of interests/hobbies.
|
|
|
470
530
|
**For startdate/enddate fields:**
|
|
471
531
|
- Always use ISO format: `YYYY-MM-DD` (e.g., `2024-03-15`)
|
|
472
532
|
- These auto-format to "Mon YYYY" in English (e.g., "Mar 2024")
|
|
473
|
-
- Arabic layout uses custom date formatting
|
|
533
|
+
- Arabic layout uses custom date formatting via `ar-date.html` which reads from `site.data.ar.months`
|
|
534
|
+
- **Note:** The theme already includes `_data/ar/months.yml` with Arabic month names, so you don't need to create this file manually.
|
|
474
535
|
|
|
475
536
|
**For display text fields (year, duration):**
|
|
476
537
|
- Use any text format you want
|
|
@@ -506,23 +567,41 @@ url: https://example.com
|
|
|
506
567
|
|
|
507
568
|
### File Location
|
|
508
569
|
|
|
509
|
-
|
|
570
|
+
**Recommended approach (for beginners):** Place all data files in language-specific folders (`_data/en/` and `_data/ar/`). This is the recommended approach even if you're only using one language, as it:
|
|
571
|
+
- Keeps your data organized
|
|
572
|
+
- Makes it easy to add more languages in the future
|
|
573
|
+
- Follows the same structure as the sample files
|
|
574
|
+
|
|
575
|
+
**Advanced approach:** You can place files directly in `_data/` (root), but you'll need to set `active_resume_path_en: ""` and `active_resume_path_ar: ""` in your `_config.yml`. This approach is not recommended for beginners.
|
|
576
|
+
|
|
577
|
+
**Recommended structure (use language folders):**
|
|
510
578
|
```
|
|
511
579
|
_data/
|
|
512
|
-
├──
|
|
513
|
-
├──
|
|
514
|
-
├──
|
|
515
|
-
├──
|
|
516
|
-
├──
|
|
517
|
-
├──
|
|
518
|
-
├──
|
|
519
|
-
├──
|
|
520
|
-
├──
|
|
521
|
-
├──
|
|
522
|
-
├──
|
|
523
|
-
|
|
580
|
+
├── en/
|
|
581
|
+
│ ├── header.yml # Executive summary/intro paragraph
|
|
582
|
+
│ ├── experience.yml
|
|
583
|
+
│ ├── education.yml
|
|
584
|
+
│ ├── certifications.yml
|
|
585
|
+
│ ├── courses.yml
|
|
586
|
+
│ ├── volunteering.yml
|
|
587
|
+
│ ├── projects.yml
|
|
588
|
+
│ ├── skills.yml
|
|
589
|
+
│ ├── recognitions.yml
|
|
590
|
+
│ ├── associations.yml
|
|
591
|
+
│ ├── languages.yml
|
|
592
|
+
│ ├── links.yml
|
|
593
|
+
│ └── interests.yml
|
|
594
|
+
└── ar/
|
|
595
|
+
├── header.yml # Executive summary/intro paragraph (Arabic)
|
|
596
|
+
├── experience.yml
|
|
597
|
+
├── education.yml
|
|
598
|
+
└── ... (same files as en/)
|
|
524
599
|
```
|
|
525
600
|
|
|
601
|
+
**Note:** The theme includes `_data/ar/months.yml` in the theme itself (not in your site), so Arabic month names are available automatically. You don't need to create this file in your site's `_data/` folder.
|
|
602
|
+
|
|
603
|
+
**Sample files:** You can copy sample data files from `docs/_data/en/` and `docs/_data/ar/` to get started. These contain commented examples showing the structure for each section type.
|
|
604
|
+
|
|
526
605
|
### Enabling Sections in _config.yml
|
|
527
606
|
|
|
528
607
|
To control which sections appear on your resume, edit `_config.yml`:
|