kamisaku 0.3.2 → 0.3.4

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,275 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <title>Creative Resume</title>
7
+ <style>
8
+ @page {
9
+ margin: 0 auto;
10
+ padding: 0.5in;
11
+ size: A4;
12
+ }
13
+ @media screen {
14
+ body {
15
+ background: #e0e0e0;
16
+ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
17
+ }
18
+ .paper {
19
+ padding: 0.5in;
20
+ }
21
+ }
22
+ @media screen, print {
23
+ .paper {
24
+ background: white;
25
+ margin: 0 auto;
26
+ width: 210mm;
27
+ height: 100%;
28
+ color: #333;
29
+ }
30
+ }
31
+
32
+ .header {
33
+ display: flex;
34
+ flex-direction: column;
35
+ align-items: center;
36
+ text-align: center;
37
+ border-bottom: 3px solid #00bcd4;
38
+ padding-bottom: 1rem;
39
+ }
40
+ .header h1 {
41
+ font-size: 2.5em;
42
+ margin: 0;
43
+ }
44
+ .header h2 {
45
+ font-weight: 400;
46
+ color: #666;
47
+ margin-top: 0.2em;
48
+ }
49
+ .contact {
50
+ margin-top: 1rem;
51
+ font-size: 0.9em;
52
+ color: #555;
53
+ }
54
+ .section {
55
+ margin-top: 2rem;
56
+ }
57
+ .section h3 {
58
+ border-left: 5px solid #00bcd4;
59
+ padding-left: 0.5rem;
60
+ color: #00bcd4;
61
+ text-transform: uppercase;
62
+ letter-spacing: 1px;
63
+ }
64
+ .skills ul,
65
+ .languages ul,
66
+ .interests ul {
67
+ list-style: none;
68
+ padding-left: 0;
69
+ display: flex;
70
+ flex-wrap: wrap;
71
+ gap: 10px;
72
+ }
73
+ .skills li,
74
+ .languages li,
75
+ .interests li {
76
+ background: #e0f7fa;
77
+ color: #00796b;
78
+ padding: 5px 10px;
79
+ border-radius: 5px;
80
+ font-size: 0.85em;
81
+ }
82
+ .experience, .education, .project, .certification, .award, .publication, .conference, .volunteering {
83
+ margin-bottom: 1.5rem;
84
+ }
85
+ .title-line {
86
+ display: flex;
87
+ justify-content: space-between;
88
+ font-weight: bold;
89
+ }
90
+ .sub-info {
91
+ color: #777;
92
+ font-size: 0.9em;
93
+ }
94
+ .achievements {
95
+ margin-top: 0.5rem;
96
+ padding-left: 1rem;
97
+ }
98
+ .achievements li {
99
+ list-style: disc;
100
+ }
101
+ .experience .title-line div:first-child {
102
+ flex-grow: 1;
103
+ margin-right: 1rem;
104
+ }
105
+ .experience .title-line div:last-child {
106
+ white-space: nowrap;
107
+ }
108
+ </style>
109
+ </head>
110
+ <body>
111
+ <div class="paper">
112
+ <div class="header">
113
+ <h1><%= data.dig(:profile, :name) %></h1>
114
+ <h2><%= data.dig(:profile, :title) %></h2>
115
+ <div class="contact">
116
+ <div><%= data.dig(:contact, :email) %> | <%= data.dig(:contact, :mobile) %></div>
117
+ <div>
118
+ <%= data.dig(:contact, :github) %> |
119
+ <%= data.dig(:contact, :linkedin) %> |
120
+ <%= data.dig(:contact, :location, :city) %>, <%= data.dig(:contact, :location, :country) %>
121
+ </div>
122
+ </div>
123
+ </div>
124
+
125
+ <div class="section about">
126
+ <h3>About</h3>
127
+ <p><%= data.dig(:profile, :about) %></p>
128
+ </div>
129
+
130
+ <div class="section skills">
131
+ <h3>Skills</h3>
132
+ <% (data.dig(:skills) || []).each do |skill| %>
133
+ <strong><%= skill.dig(:name) %>:</strong>
134
+ <ul>
135
+ <% (skill.dig(:items) || []).each do |item| %>
136
+ <li><%= item %></li>
137
+ <% end %>
138
+ </ul>
139
+ <% end %>
140
+ </div>
141
+
142
+ <div class="section experiences">
143
+ <h3>Experience</h3>
144
+ <% (data.dig(:experiences) || []).each do |exp| %>
145
+ <div class="experience">
146
+ <div class="title-line">
147
+ <div><%= exp.dig(:title) %> at <%= exp.dig(:organisation) %></div>
148
+ <div><%= exp.dig(:from, :month) %> <%= exp.dig(:from, :year) %>
149
+ - <%= exp.dig(:to, :month) %> <%= exp.dig(:to, :year) %></div>
150
+ </div>
151
+ <div class="sub-info">
152
+ <%= exp.dig(:location, :city) %>, <%= exp.dig(:location, :country) %>
153
+ </div>
154
+ <ul class="achievements">
155
+ <% (exp.dig(:achievements) || []).each do |ach| %>
156
+ <li><%= ach %></li>
157
+ <% end %>
158
+ </ul>
159
+ </div>
160
+ <% end %>
161
+ </div>
162
+
163
+ <div class="section education">
164
+ <h3>Education</h3>
165
+ <% (data.dig(:education) || []).each do |edu| %>
166
+ <div class="education">
167
+ <div class="title-line">
168
+ <div><%= edu.dig(:qualification) %> in <%= edu.dig(:field) %> - <%= edu.dig(:institute) %></div>
169
+ <div><%= edu.dig(:from, :year) %> - <%= edu.dig(:to, :year) %></div>
170
+ </div>
171
+ <div class="sub-info">
172
+ <%= edu.dig(:location, :city) %>, <%= edu.dig(:location, :country) %>
173
+ </div>
174
+ <% if edu.dig(:achievements) %>
175
+ <ul class="achievements">
176
+ <% (edu.dig(:achievements) || []).each do |ach| %>
177
+ <li><%= ach %></li>
178
+ <% end %>
179
+ </ul>
180
+ <% end %>
181
+ </div>
182
+ <% end %>
183
+ </div>
184
+
185
+ <div class="section projects">
186
+ <h3>Projects</h3>
187
+ <% (data.dig(:projects) || []).each do |proj| %>
188
+ <div class="project">
189
+ <strong><%= proj.dig(:name) %></strong> - <%= proj.dig(:description) %>
190
+ <div class="sub-info">
191
+ <%= (proj.dig(:technologies) || []).compact.join(", ") %>
192
+ </div>
193
+ <div><%= proj.dig(:link) %></div>
194
+ </div>
195
+ <% end %>
196
+ </div>
197
+
198
+ <div class="section certifications">
199
+ <h3>Certifications</h3>
200
+ <% (data.dig(:certifications) || []).each do |cert| %>
201
+ <div class="certification">
202
+ <strong><%= cert.dig(:name) %></strong> - <%= cert.dig(:issuer) %> (<%= cert.dig(:date, :month) %> <%= cert.dig(:date, :year) %>
203
+ )
204
+ <% if cert.dig(:credential_url) %>
205
+ <div><a href="<%= cert.dig(:credential_url) %>"><%= cert.dig(:credential_url) %></a></div>
206
+ <% end %>
207
+ </div>
208
+ <% end %>
209
+ </div>
210
+
211
+ <div class="section awards">
212
+ <h3>Awards</h3>
213
+ <% (data.dig(:awards) || []).each do |award| %>
214
+ <div class="award">
215
+ <strong><%= award.dig(:title) %></strong> - <%= award.dig(:issuer) %>
216
+ (<%= award.dig(:date, :month) %> <%= award.dig(:date, :year) %>)
217
+ <p><%= award.dig(:description) %></p>
218
+ </div>
219
+ <% end %>
220
+ </div>
221
+
222
+ <div class="section publications">
223
+ <h3>Publications</h3>
224
+ <% (data.dig(:publications) || []).each do |pub| %>
225
+ <div class="publication">
226
+ <strong><%= pub.dig(:title) %></strong> - <%= pub.dig(:publisher) %> (<%= pub.dig(:date, :month) %> <%= pub.dig(:date, :year) %>
227
+ )
228
+ <% if pub.dig(:link) %>
229
+ <div><a href="<%= pub.dig(:link) %>"><%= pub.dig(:link) %></a></div>
230
+ <% end %>
231
+ </div>
232
+ <% end %>
233
+ </div>
234
+
235
+ <div class="section conferences">
236
+ <h3>Conferences</h3>
237
+ <% (data.dig(:conferences) || []).each do |conf| %>
238
+ <div class="conference">
239
+ <strong><%= conf.dig(:name) %></strong> - <%= conf.dig(:role) %> (<%= conf.dig(:date, :month) %> <%= conf.dig(:date, :year) %>)
240
+ <p><%= conf.dig(:description) %></p>
241
+ </div>
242
+ <% end %>
243
+ </div>
244
+
245
+ <div class="section volunteering">
246
+ <h3>Volunteering</h3>
247
+ <% (data.dig(:volunteering) || []).each do |vol| %>
248
+ <div class="volunteering">
249
+ <strong><%= vol.dig(:organization) %></strong> - <%= vol.dig(:role) %>
250
+ (<%= vol.dig(:date, :month) %> <%= vol.dig(:date, :year) %>)
251
+ <p><%= vol.dig(:description) %></p>
252
+ </div>
253
+ <% end %>
254
+ </div>
255
+
256
+ <div class="section languages">
257
+ <h3>Languages</h3>
258
+ <ul>
259
+ <% (data.dig(:languages) || []).each do |lang| %>
260
+ <li><%= lang.dig(:name) %></li>
261
+ <% end %>
262
+ </ul>
263
+ </div>
264
+
265
+ <div class="section interests">
266
+ <h3>Interests</h3>
267
+ <ul>
268
+ <% (data.dig(:interests) || []).each do |interest| %>
269
+ <li><%= interest.dig(:name) %></li>
270
+ <% end %>
271
+ </ul>
272
+ </div>
273
+ </div>
274
+ </body>
275
+ </html>