-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdefaults.py
More file actions
230 lines (221 loc) · 11.3 KB
/
defaults.py
File metadata and controls
230 lines (221 loc) · 11.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
# defaults.py
# CV PDF Project
# This file contains default static data for the application, such as color profiles and initial content.
# Copyright 2025 pyrus-code
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import json
COLOR_PROFILES = [
{
"name": "Light Blue", "description": "Default - Light blue sidebar, black text",
"sidebar_color": (157, 195, 230), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (0, 0, 0), "font_color": (0, 0, 0), "line_color": (47, 84, 150)
},
{
"name": "All Black", "description": "Black background with grey text",
"sidebar_color": (0, 0, 0), "main_bg_color": (0, 0, 0),
"sidebar_font_color": (128, 128, 128), "font_color": (128, 128, 128), "line_color": (128, 128, 128)
},
{
"name": "Charcoal & Orange", "description": "Dark grey sidebar with light text, orange lines",
"sidebar_color": (45, 45, 45), "main_bg_color": (60, 60, 60),
"sidebar_font_color": (220, 220, 220), "font_color": (220, 220, 220), "line_color": (255, 140, 0)
},
{
"name": "Navy & Gold", "description": "Navy sidebar with white text, gold lines",
"sidebar_color": (0, 30, 60), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (255, 255, 255), "font_color": (0, 0, 0), "line_color": (212, 175, 55)
},
{
"name": "Professional Blue", "description": "A modern, professional blue with grey lines",
"sidebar_color": (70, 130, 180), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (255, 255, 255), "font_color": (0, 0, 0), "line_color": (47, 79, 79)
},
{
"name": "Slate & Teal", "description": "Dark slate sidebar with white text, teal lines",
"sidebar_color": (47, 54, 64), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (255, 255, 255), "font_color": (0, 0, 0), "line_color": (0, 128, 128)
},
{
"name": "Modern Grey", "description": "Light grey sidebar with dark text",
"sidebar_color": (220, 220, 220), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (0, 0, 0), "font_color": (0, 0, 0), "line_color": (100, 100, 100)
},
{
"name": "Graphite & Silver", "description": "Dark graphite with silver accents",
"sidebar_color": (50, 50, 50), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (255, 255, 255), "font_color": (0, 0, 0), "line_color": (192, 192, 192)
},
{
"name": "Minimalist White", "description": "Light grey sidebar with black text",
"sidebar_color": (240, 240, 240), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (0, 0, 0), "font_color": (0, 0, 0), "line_color": (200, 200, 200)
},
{
"name": "Hunter Green & Tan", "description": "Dark green sidebar, tan main page, dark green lines",
"sidebar_color": (53, 94, 59), "main_bg_color": (245, 245, 220),
"sidebar_font_color": (255, 255, 255), "font_color": (0, 0, 0), "line_color": (40, 70, 45)
},
{
"name": "Maroon & Light Grey", "description": "Deep red sidebar, light grey main page, dark red lines",
"sidebar_color": (128, 0, 0), "main_bg_color": (248, 248, 248),
"sidebar_font_color": (255, 255, 255), "font_color": (0, 0, 0), "line_color": (100, 0, 0)
},
{
"name": "Stone Grey", "description": "Warm grey sidebar, white text, dark grey lines",
"sidebar_color": (128, 128, 118), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (255, 255, 255), "font_color": (0, 0, 0), "line_color": (80, 80, 70)
},
{
"name": "Oceanic Blue", "description": "Deep blue sidebar, white text, darker blue lines",
"sidebar_color": (0, 105, 148), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (255, 255, 255), "font_color": (0, 0, 0), "line_color": (0, 60, 90)
},
{
"name": "Midnight & Crimson", "description": "Black background, white text, red accents",
"sidebar_color": (10, 10, 10), "main_bg_color": (25, 25, 25),
"sidebar_font_color": (220, 220, 220), "font_color": (220, 220, 220), "line_color": (150, 0, 24)
},
{
"name": "Royal Blue & Silver", "description": "Strong blue sidebar, white text, silver lines",
"sidebar_color": (65, 105, 225), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (255, 255, 255), "font_color": (0, 0, 0), "line_color": (192, 192, 192)
},
{
"name": "Sky Blue & White", "description": "Light, airy blue sidebar with dark text",
"sidebar_color": (224, 238, 238), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (0, 0, 0), "font_color": (0, 0, 0), "line_color": (72, 118, 162)
},
{
"name": "Lavender & Charcoal", "description": "Muted purple sidebar with dark grey lines",
"sidebar_color": (230, 230, 250), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (0, 0, 0), "font_color": (0, 0, 0), "line_color": (47, 54, 64)
},
{
"name": "Sage & Forest", "description": "Light sage sidebar with dark green lines",
"sidebar_color": (202, 219, 203), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (0, 0, 0), "font_color": (0, 0, 0), "line_color": (34, 87, 51)
},
{
"name": "Mocha & Cream", "description": "Warm brown sidebar with an off-white background",
"sidebar_color": (150, 111, 80), "main_bg_color": (255, 253, 240),
"sidebar_font_color": (255, 255, 255), "font_color": (0, 0, 0), "line_color": (150, 111, 80)
},
{
"name": "Crimson & Grey", "description": "Bold crimson sidebar with grey lines",
"sidebar_color": (153, 0, 0), "main_bg_color": (255, 255, 255),
"sidebar_font_color": (255, 255, 255), "font_color": (0, 0, 0), "line_color": (105, 105, 105)
}
]
def get_default_layout_margins():
"""Returns the default layout margins for CV and Cover Letter as a dictionary."""
return {
# CV Main Content
"cv_main_content_top": 13.0,
"cv_main_title_underline_gap": 6.0,
"cv_job_block_gap": 4.0,
"cv_job_dates_to_tasks": 2.0,
"cv_task_line_spacing": 4.5,
# CV Sidebar
"cv_photo_top": 8.0,
"cv_photo_border_thickness": 0.4,
"cv_name_block_y_start": 59.5,
"cv_name_to_info": 2.0,
"cv_sidebar_info_line_spacing": 4.4,
"cv_info_block_spacing": 3.0,
"cv_sidebar_info_to_section_gap": 4.0,
"cv_sidebar_section_gap": 2.5,
"cv_sidebar_title_underline_gap": 2.5,
"cv_sidebar_edu_item_gap": 1.0,
"cv_sidebar_lang_item_gap": 1.0,
"cv_sidebar_skill_item_gap": 2.0,
"cv_sidebar_soft_skill_item_gap": 1.5,
"cv_sidebar_soft_skill_comment_gap": 1.0,
"cv_sidebar_divider_thickness": 0.05,
# Cover Letter
"cl_header_top": 10.0,
"cl_header_line_spacing": 4.5,
"cl_header_to_body_y_start": 40.0,
"cl_body_top_margin": 5.0,
"cl_recipient_to_date": 6.0,
"cl_date_to_subject": 6.0,
"cl_subject_to_body": 6.0,
"cl_paragraph_spacing": 4.0,
"cl_body_to_signature": 2.0,
"cl_signature_to_name": 2.0,
}
def get_default_data():
"""Returns the default data structure for a new database."""
return {
"personal_info": {
"full_name": "JOHN DOE",
"email": "john.doe@example.com",
"phone": "+1 123 456 7890",
"birth_date": "01 January 1990",
"address": "123 Main Street, Anytown, USA",
"permit": "Work Permit",
"marital_status": "Single",
"driving_license": "Full Driving License",
"location_info": "",
"linkedin": "www.linkedin.com/in/example",
"github": "www.github.com/example",
"website": "www.johndoeexample.com"
},
"photos": [
{"label": "Add Photo", "path": "", "size_adjustment": 0},
],
"education": [
{"type": "Certification", "certification_name": "Certified Project Manager",
"certification_description": "Project Management Institute"},
{"type": "Education", "description": "Master's in Business Administration",
"school": "State University", "dates": "09.2012-06.2014"},
{"type": "Education", "description": "Bachelor's Degree in Economics", "school": "City College",
"dates": "09.2008-06.2012"}
],
"languages": [{"language": "English", "proficiency": "Full Professional Proficiency",
"details": "Level C1"},
{"language": "Spanish", "proficiency": "Intermediate", "details": "Level B1"},
{"language": "German", "proficiency": "Beginner", "details": "Level A1"}],
"skills": [
"Analytical Skills",
"Critical Thinking",
"Complex Problem-Solving"
"Attention to Detail"
"Team Coordination"
],
"software_skills": [
{"skill": "Microsoft Excel", "level": "Advanced", "comments": "Power Query, XLookup, Macros, Pivot Tables"},
{"skill": "Python", "level": "Intermediate", "comments": "Pandas, Matplotlib"},
{"skill": "SQL", "level": "Advanced", "comments": "Complex Joins, Window Functions"},
{"skill": "Power BI", "level": "Advanced", "comments": "Data Modeling, DAX"},
{"skill": "Tableau", "level": "Intermediate", "comments": "Including data connection, cleaning"}
],
"settings": {
"font_name": "Calibri", "font_size": "Default",
"calibri_path": "fonts/calibri.ttf", "calibri_bold_path": "fonts/calibrib.ttf",
"times_path": "fonts/times.ttf", "times_bold_path": "fonts/timesbd.ttf",
"bold_job_title": "1", "bold_company": "0", "bold_dates": "0",
"pdf_filename": "", "default_photo_label": "Professional", "default_signature_label": "Default",
"name_config": '{"capitalize": false, "size_increase": "Default", "apply_cv": true, "apply_cl": true}',
"color_profile": "Light Blue",
"layout_margins": json.dumps({})
},
"jobs": [
{"title": "Senior Analyst", "company": "Global Corp – Anytown, USA",
"dates": "01.2020 – Present"},
{"title": "Junior Analyst", "company": "Global Corp – Anytown, USA", "dates": "06.2017 – 12.2019"},
{"title": "Data Entry Clerk", "company": "Local Firm – Anytown, USA",
"dates": "01.2015 – 05.2017"},
{"title": "Intern", "company": "Business Inc. – Anytown, USA", "dates": "06.2014 – 12.2014"}
]
}