bilingual-jekyll-resume-theme 0.2.0 → 0.3.1

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.
@@ -0,0 +1,321 @@
1
+ # Configuration Guide (_config.yml)
2
+
3
+ Make your site render correctly with this theme. This guide matches the shipped `_config.yml` template exactly, removes ambiguity, and adds clear examples.
4
+
5
+ ---
6
+
7
+ ## Table of contents
8
+
9
+ - [Quick start](#quick-start)
10
+ - [Required settings](#required-settings)
11
+ - [Recommended basics](#recommended-basics)
12
+ - [Data source (active_resume_path_en/_ar)](#data-source-active_resume_path_en_ar)
13
+ - [Header and contact](#header-and-contact)
14
+ - [Sections](#sections)
15
+ - [Language and RTL](#language-and-rtl)
16
+ - [Social links](#social-links)
17
+ - [Analytics](#analytics)
18
+ - [Design and authors](#design-and-authors)
19
+ - [Jekyll build settings](#jekyll-build-settings)
20
+ - [Full example config](#full-example-config)
21
+ - [FAQs](#faqs)
22
+
23
+ ---
24
+
25
+ ## Quick start
26
+
27
+ Copy, paste, and customize the ALL-CAPS values:
28
+
29
+ ```yaml
30
+ # Required basics
31
+ theme: bilingual-jekyll-resume-theme
32
+ url: https://YOUR-DOMAIN.com
33
+ baseurl: "" # leave empty unless deploying to a subpath
34
+
35
+ title: YOUR NAME
36
+ name:
37
+ first: YOUR
38
+ middle: M
39
+ last: NAME
40
+ resume_title: YOUR JOB TITLE
41
+
42
+ description: Your short tagline (optional)
43
+
44
+ timezone: UTC
45
+
46
+ contact_info:
47
+ email: you@example.com
48
+
49
+ # Resume sections to show and their order
50
+ resume_section:
51
+ experience: true
52
+ education: true
53
+ projects: true
54
+ skills: true
55
+ resume_section_order:
56
+ - experience
57
+ - education
58
+ - projects
59
+ - skills
60
+ ```
61
+
62
+ That’s enough to render a working resume using data from `_data/`.
63
+
64
+ ---
65
+
66
+ ## Required settings
67
+
68
+ - theme: Must be `bilingual-jekyll-resume-theme`.
69
+ - url: Full site URL (protocol + host). Used for SEO and absolute links.
70
+ - title: Site title (footer and SEO).
71
+ - name.first, name.last: Appears in the header (`middle` is optional).
72
+ - use `name_ar.` for arabic version of name
73
+ - resume_title: English job title shown in header.
74
+ - contact_info.email: Needed if `resume_looking_for_work: true` (for the contact button).
75
+
76
+ ---
77
+
78
+ ## Recommended basics
79
+
80
+ - description: Short site description/tagline (used by SEO tags).
81
+ - baseurl: Keep empty unless deploying under a subdirectory (e.g., `/resume`).
82
+ - timezone: Set to your region (e.g., `UTC`, `Etc/GMT`, `America/New_York`).
83
+ - resume_avatar: true/false to show/hide the profile image.
84
+ - display_header_contact_info: true/false to show/hide contact row in header.
85
+
86
+ ---
87
+
88
+ ## Data source (active_resume_path_en/_ar)
89
+
90
+ The layouts read resume data from a subtree of `_data/` using dot-separated paths.
91
+
92
+ - active_resume_path_en: Path for English pages.
93
+ - active_resume_path_ar: Path for Arabic pages.
94
+ - If the value is an empty string (`""`) or not set, the root of `_data/` is used.
95
+
96
+ Examples:
97
+
98
+ ```yaml
99
+ active_resume_path_en: "en" # -> uses _data/en/*
100
+ active_resume_path_ar: "ar" # -> uses _data/ar/*
101
+ # Nested example:
102
+ active_resume_path_en: "2025-06.PM" # -> uses _data/2025-06/PM/*
103
+ # Root example (use files directly under _data/ not suggested unless using one language only):
104
+ active_resume_path_en: ""
105
+ active_resume_path_ar: ""
106
+ ```
107
+
108
+ Note: This theme uses the two keys above (there is no single `active_resume_path`).
109
+
110
+ ---
111
+
112
+ ## Header and contact
113
+
114
+ - resume_avatar (bool): Show/hide avatar in the header.
115
+ - resume_header_intro (HTML string): Short paragraph under your header; basic HTML supported.
116
+ - resume_looking_for_work (bool | omitted):
117
+ - true → Shows “Contact me” button using `contact_info.email`.
118
+ - false → Shows a neutral “I’m not looking for work” pill.
119
+ - omitted → Shows nothing.
120
+ - display_header_contact_info (bool): Show/hide contact row (phone, email, address, DoB, compact languages).
121
+ - enable_live (bool): When true, uses `contact_info.email_live`/`phone_live` instead of `email`/`phone`.
122
+
123
+ contact_info fields:
124
+ - email (required for contact button), phone (optional), address (optional), address_ar (optional on Arabic page), dob (optional), email_live/phone_live (used when `enable_live: true`).
125
+
126
+ Language-specific titles:
127
+ - resume_title (EN), resume_title_ar (AR).
128
+
129
+ ---
130
+
131
+ ## Sections
132
+
133
+ Available sections: experience, education, certifications, courses, volunteering, projects, skills, recognition, associations, interests, languages, links
134
+
135
+ - resume_section.<name> (bool): Master toggle per section.
136
+ - resume_section.lang_header (bool): When true and `languages` data exists, shows a compact languages summary in the header instead of rendering the full Languages section.
137
+ - resume_section_order (array): Rendering order; disabled sections are skipped.
138
+
139
+ Helpful toggles:
140
+ - enable_summary (bool): If true, renders `summary` fields for roles/courses when present.
141
+ - resume_print_social_links (bool): If true, adds a text-only “Social Links” section on print/PDF.
142
+
143
+ ---
144
+
145
+ ## Language and RTL
146
+
147
+ - resume_title_ar: Arabic job title for the Arabic layout.
148
+ - 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 (define in `_data/ar.yml` or `_data/ar/months.yml`).
150
+ - Present text: English shows “Present”; Arabic shows “حتى الآن”.
151
+
152
+ ---
153
+
154
+ ## Social links
155
+
156
+ Only keys with values render. Add the ones you want; leave others out.
157
+
158
+ Supported keys (icons on page; text list for print when enabled):
159
+ - github, linkedin, telegram, twitter, medium, dribbble, facebook, instagram, website, whatsapp, devto, flickr, pinterest, youtube
160
+
161
+ Tip: For printing, set `resume_print_social_links: true`.
162
+
163
+ ---
164
+
165
+ ## Analytics
166
+
167
+ Choose one (do not enable both):
168
+
169
+ - Google Tag Manager (recommended):
170
+ - analytics.gtm: GTM-XXXXXXX (adds head script + `<noscript>` body iframe)
171
+ - Google Analytics 4 (gtag.js):
172
+ - analytics.ga: true
173
+ - analytics.gtag: G-XXXXXXXXXX
174
+
175
+ ---
176
+
177
+ ## Design and authors
178
+
179
+ - resume_theme: Theme variant (currently `default`).
180
+ - authors: Optional list; not required by the theme but supported in config.
181
+
182
+ ---
183
+
184
+ ## Jekyll build settings
185
+
186
+ - plugins (required): jekyll-feed, jekyll-seo-tag, jekyll-sitemap, jekyll-redirect-from
187
+ - include: Files/dirs to include (e.g., `_redirects`, `.well-known/`, `_pages/`, `_posts/`).
188
+ - exclude: Files/dirs to ignore (e.g., README.md, Gemfile*, vendor/, node_modules/, scripts/).
189
+ - defaults: Optional front matter defaults.
190
+
191
+ ---
192
+
193
+ ## Full example config
194
+
195
+ ```yaml
196
+ # Identity
197
+ theme: bilingual-jekyll-resume-theme
198
+ url: https://your-domain.com
199
+ baseurl: ""
200
+ title: Jane Doe
201
+ description: Product leader focused on outcomes
202
+
203
+ timezone: UTC
204
+
205
+ # Name & titles
206
+ name:
207
+ first: Jane
208
+ middle: Q.
209
+ last: Doe
210
+ name_ar:
211
+ first:
212
+ middle:
213
+ last:
214
+ resume_title: Senior Product Manager
215
+ resume_title_ar: مديرة منتج أولى
216
+
217
+ # Contact
218
+ contact_info:
219
+ email: jane.doe@example.com
220
+ phone: "+1 555 555 5555"
221
+ address: "San Francisco, CA"
222
+ address_ar: "سان فرانسيسكو، كاليفورنيا"
223
+ # Live-mode alternates
224
+ # enable_live: false
225
+ # contact_info:
226
+ # email_live: live@example.com
227
+ # phone_live: "+1 555 000 0000"
228
+
229
+ display_header_contact_info: true
230
+ resume_avatar: true
231
+ resume_header_intro: "<p>Building products customers love through clear strategy and measurable outcomes.</p>"
232
+ resume_looking_for_work: true
233
+
234
+ # Data paths
235
+ active_resume_path_en: "en"
236
+ active_resume_path_ar: "ar"
237
+
238
+ # Sections
239
+ resume_section:
240
+ experience: true
241
+ education: true
242
+ certifications: true
243
+ courses: true
244
+ volunteering: true
245
+ projects: true
246
+ associations: true
247
+ skills: false
248
+ recognition: false
249
+ languages: false
250
+ lang_header: true
251
+ interests: false
252
+ links: false
253
+ resume_section_order:
254
+ - experience
255
+ - education
256
+ - certifications
257
+ - courses
258
+ - volunteering
259
+ - projects
260
+ - associations
261
+ - skills
262
+ - recognition
263
+ - languages
264
+ - interests
265
+ - links
266
+
267
+ # Behavior
268
+ enable_summary: false
269
+ resume_print_social_links: true
270
+
271
+ # Social
272
+ social_links:
273
+ github: https://github.com/janedoe
274
+ linkedin: https://www.linkedin.com/in/janedoe/
275
+ website: https://janedoe.com
276
+ twitter: https://twitter.com/janedoe
277
+
278
+ # Theme & analytics
279
+ authors: []
280
+ resume_theme: default
281
+ analytics:
282
+ # gtm: GTM-XXXXXXX
283
+ # ga: true
284
+ # gtag: G-XXXXXXXXXX
285
+
286
+ # Jekyll
287
+ plugins:
288
+ - jekyll-feed
289
+ - jekyll-seo-tag
290
+ - jekyll-sitemap
291
+ - jekyll-redirect-from
292
+ include:
293
+ - _redirects
294
+ - .well-known/
295
+ - _pages/
296
+ - _posts/
297
+ exclude:
298
+ - scratch.md
299
+ - README.md
300
+ - Gemfile*
301
+ - vendor/
302
+ - node_modules/
303
+ - "*.gemspec"
304
+ - netlify.toml
305
+ - vercel.json
306
+ - WARP.md
307
+ - scripts/
308
+ ```
309
+
310
+ ---
311
+
312
+ ## FAQs
313
+
314
+ - A section isn’t showing up.
315
+ - Ensure `resume_section.<name>: true`, it appears in `resume_section_order`, and your data items have `active: true`.
316
+ - Contact button shows but nothing happens.
317
+ - Set `contact_info.email` or set `resume_looking_for_work: false`.
318
+ - Arabic months appear as numbers.
319
+ - Define Arabic month names under `site.data.ar.months` (e.g., `_data/ar/months.yml`).
320
+ - Data for EN/AR lives in different folders.
321
+ - Point `active_resume_path_en` and `active_resume_path_ar` at the right subtrees (e.g., `en` and `ar`).