1
0
mirror of https://github.com/JuanCanham/fresh-themes.git synced 2025-07-06 10:11:05 +01:00

Compare commits

..

53 Commits

Author SHA1 Message Date
JD
022664f7a2 Merge pull request #9 from fluentdesk/rel/v0.5.1-beta
Rel/v0.5.1 beta
2015-11-24 10:44:42 -05:00
a003c1a1d3 Tweak "main" to point to /themes/ folder. 2015-11-24 10:49:13 -05:00
6e3e7f5394 Bump version to 0.5.1. 2015-11-24 10:47:23 -05:00
d7edce4838 Add "main" entry to package.json.
Give "main" a valid default value so methods like require.resolve() can
return a proper file location. Since fluent-themes doesn't have a single
"master" file, and since "main" can't refer to a folder here, point it
at a stub README file in the themes folder.
2015-11-24 10:47:11 -05:00
JD
0ad404dd48 Merge pull request #8 from fluentdesk/rel/v0.5.0-beta
rel/v0.5.0 beta
2015-11-21 10:34:51 -05:00
16b61c6155 Themes: Modern: Use filt.link convenience method. 2015-11-21 09:29:46 -05:00
36ad9e2b7e Themes: Modern: Update PDF format from HTML. 2015-11-21 09:29:17 -05:00
f2623bee9d Fix icon typo in "modern" theme. 2015-11-21 09:12:32 -05:00
c2498a1421 Enhance "compact" theme. 2015-11-21 09:12:18 -05:00
c64e6e450a Update with FRESH format changes. 2015-11-21 08:20:44 -05:00
63cce908ca Bump version to 0.5.0-beta. 2015-11-19 10:07:40 -05:00
8068409ba4 Update with recent FRESH changes. 2015-11-19 10:05:10 -05:00
bfb87c68d2 Continue prosecuting FRESH updates. 2015-11-19 01:44:03 -05:00
d69b11d7d7 Convert "minimist" theme to FRESH format. 2015-11-18 23:21:14 -05:00
887fd449a6 Convert "hello-world" theme to FRESH format. 2015-11-18 23:08:41 -05:00
303e0d0adf Convert "compact" theme to FRESH format. 2015-11-18 23:06:25 -05:00
e9de689a7d Convert "modern" theme to FRESH format. 2015-11-18 22:40:40 -05:00
JD
5439bd5385 Merge pull request #7 from fluentdesk/rel/v0.4.0-beta
rel/v0.4.0 beta
2015-11-18 04:47:36 -05:00
7be839bdbf Multiple: Fix skill keywords collection glitches. 2015-11-05 11:53:17 -05:00
2261537724 Modern: Update PDF template from HTML. 2015-11-05 11:36:24 -05:00
9552eda254 Modern: Exclude empty pubs / awards. 2015-11-05 11:36:11 -05:00
e23a1ed0a4 Theme: Compact: Update PDF format from HTML. 2015-11-05 11:21:17 -05:00
05a875b837 Theme: Compact: Exclude empty pubs / awards. 2015-11-05 11:21:00 -05:00
d99a99b3dc Update CSS filename for "compact" theme. 2015-11-05 01:13:31 -05:00
7435ea4aaa Bump version to 0.4.0. 2015-11-05 01:02:25 -05:00
JD
d224a6c267 Merge pull request #6 from fluentdesk/rel/v0.3.0-beta
rel/v0.3.0 beta
2015-11-02 19:26:17 -05:00
790ca0cc24 Update description. 2015-10-27 23:46:36 -04:00
928b9da331 Bump version. 2015-10-27 23:46:19 -04:00
ed0b286cf5 Bump version. 2015-10-27 20:43:38 -04:00
JD
29b00a6f22 Merge pull request #5 from fluentdesk/dev
Merge from dev.
2015-10-27 10:28:02 -04:00
ecb085ed10 Compact: Collapse jobs > 4 and use safe dates. 2015-10-27 10:30:59 -04:00
9c3d950af6 Compact: Use inline Markdown. 2015-10-27 09:06:36 -04:00
c9f116207e Introduce "Compact" theme. 2015-10-27 08:41:12 -04:00
6db7691c38 Unprivatize package.json. 2015-10-26 13:39:58 -04:00
JD
ae19fec60b Merge pull request #4 from fluentdesk/dev
Unprivatize package.json.
2015-10-26 13:38:37 -04:00
6a52ddb19c Rename to fluent-themes. 2015-10-26 13:36:18 -04:00
JD
30fd9222aa Merge pull request #3 from fluentdesk/dev
Rename to fluent-themes.
2015-10-26 13:32:54 -04:00
JD
2bdaaac9a4 Merge pull request #2 from fluentdesk/dev
v0.3.1 patch
2015-10-26 08:09:15 -04:00
b8863afd56 Remove YML template for now. 2015-10-26 08:03:54 -04:00
7c1f12198e Add explicit CSS files for PDFs. 2015-10-26 08:03:03 -04:00
485e4b6316 Bump version. 2015-10-26 04:57:15 -04:00
e7c820c9c3 Reorganize themes. 2015-10-26 04:57:06 -04:00
JD
a30395cf29 Merge pull request #1 from fluentdesk/dev
Interim release changes
2015-10-26 04:54:52 -04:00
71919429aa Fix HTML headers. 2015-10-26 00:40:23 -04:00
759a406d72 Fix comment title. 2015-10-18 02:01:08 -04:00
4e5e96733a Merge remote-tracking branch 'refs/remotes/origin/master' into dev 2015-10-18 02:00:45 -04:00
2f7a5b58dc Merge remote-tracking branch 'refs/remotes/origin/dev' 2015-10-10 21:50:45 -04:00
39b33642b8 Remove value judgment. 2015-10-10 21:49:56 -04:00
eac06fb7a9 Update file headers for "modern" theme. 2015-10-10 17:53:59 -04:00
54b0a7d3a9 Update README. 2015-10-10 17:45:29 -04:00
e45f9aece7 Introduce Markdown templates.
Add a baseline Markdown template to all themes.
2015-10-10 17:14:32 -04:00
e82a25dc9c Update package.json version. 2015-10-10 17:10:47 -04:00
0424c6d15b Rename "informatic" to "modern". 2015-10-09 15:37:16 -04:00
36 changed files with 1792 additions and 595 deletions

1
.gitignore vendored
View File

@ -1 +1,2 @@
# It is pitch black. You are likely to be eaten by a grue.
informatic-new/

View File

@ -1,11 +1,32 @@
watermark
=========
Dress up your resume for Halloween. Resume/CV themes for [FluentCV][1] and [FluentCMD][2] live here.
fluent-themes
=============
Resume themes for [FluentCV][1] and [FluentCV command line][2].
- `minimist`: A no-frills theme.
- `modern`: A middle of the road theme with a modern look 'n feel.
- `hello-world`: A simple-as-possible example theme.
- `compact`: A compact theme.
- New themes forthcoming.
## How It Works
Each theme lives in a folder, e.g., `themes/informatic` or `themes/modern`. The folder contains individual template files assembled by the theme author. Each template can be used to generate a single type of output file such as HTML, Word, or PDF. Template files are named according to this scheme...
[ OuputFormat ].[ InputFormat ]
...where `[OuputFormat]` and `[InputFormat]` are both one of `html`, `pdf`, `md`, `txt`, `doc`, or `xml`. For example:
- `html.html` = An HTML template used to generate an HTML document.
- `doc.xml` = An XML template used to generate an MS Word document.
- `pdf.html` = An HTML template used to generate a PDF document.
- `md.txt` = A text template used to generate a Markdown document.
This scheme ensures that theme template files have the "correct" file extension when the theme author is working with them in an editor—if your source data is XML then the template file will have an `.xml` extension regardless of whether you're ultimately generating an HTML page or a PDF document *from* that XML. It also provides a declarative mapping between a given input format (say, XML) and a given output file type (say, a Word doc or spreadsheet).
## License
MIT. See [LICENSE.md][3] for details.
MIT. See [LICENSE.md][1] for details.
[1]: http://fluentcv.com
[2]: https://github.com/fluentdesk/fluentcmd
[3]: LICENSE.md
[2]: https://github.com/fluentdesk/fluentcv
[3]: ../LICENSE.md

View File

@ -1,12 +1,12 @@
{
"name": "watermark",
"version": "0.1.0",
"description": "Themes and exemplars for FluentCV.",
"private": true,
"name": "fluent-themes",
"version": "0.5.1-beta",
"description": "Resume themes for FluentCV.",
"repository": {
"type": "git",
"url": "https://github.com/fluentdesk/watermark.git"
"url": "https://github.com/fluentdesk/fluent-themes.git"
},
"main": "themes/README.md",
"keywords": [
"resume",
"CV",
@ -16,8 +16,8 @@
"author": "James M. Devlin",
"license": "MIT",
"bugs": {
"url": "https://github.com/fluentdesk/watermark/issues"
"url": "https://github.com/fluentdesk/fluent-themes/issues"
},
"homepage": "https://github.com/fluentdesk/watermark",
"homepage": "https://github.com/fluentdesk/fluent-themes",
"dependencies": { }
}

View File

@ -1,12 +1,13 @@
themes
======
Predefined template-based resume themes for FluentCV.
/themes/
========
FluentCV themes live here, one per folder.
- `minimist`: A no-frills theme.
- `informatic`: An informative theme for technical resumes.
- [`minimist`][min]: A no-frills theme.
- [`modern`][mod]: A middle of the road theme with a modern look 'n feel.
- [`hello-world`][hw]: A simple-as-possible example theme.
- [`compact`][com]: A compact theme.
## License
MIT. See [LICENSE.md][1] for details.
[1]: ../LICENSE.md
[min]: minimist
[mod]: modern
[hw]: hello-world
[com]: compact

View File

@ -0,0 +1,82 @@
html, body, main, section, header, ul, p, h1, h2, h3 {
font-family: Helvetica, sans-serif;
font-size: 12px;
margin: 0; padding: 0;
display: block;
}
a {
color: #0064BD;
text-decoration: none;
}
a:visited {
color: #7B0796;
}
a:hover {
text-decoration: underline;
}
h2 {
text-transform: uppercase;
}
h3 {
font-size: 1em;
}
main {
padding: 15px;
max-width: 700px;
margin: 0 auto;
}
section {
margin-top: 1em;
}
li {
margin-left: 2em;
}
h3 {
margin-top: 1em;
}
p, li {
text-align: justify;
}
.tenure {
float: right;
}
thead {
display: none;
}
main > header {
width: 100%;
float: left;
margin-bottom: 1em;
}
main > header > h1 {
float: left;
font-size: 1.5em;
}
#contact {
float: right;
}
#contact > div {
display: inline-block;
margin-left: 5px;
}
h2 > span.fa {
text-align: left;
margin-right: 3px;
}

View File

@ -0,0 +1,160 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>{{ r.name }}</title>
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
<link href="html.css" rel="stylesheet" type="text/css">
</head>
<body>
<main>
<header>
<h1>{{ r.name }}</h1>
<div id="contact">
{% if (r.contact.email) { %}<div class="email"><a href="mailto:{{ r.contact.email }}">{{ r.contact.email }}</a></div>{% } %}
{% if (r.contact.phone) { %}<div class="phone">{{ r.contact.phone }}</div>{% } %}
{% if (r.contact.website) { %}<div class="website"><a href="{{ r.contact.website }}">{{ r.contact.website }}</a></div>{% } %}
</div>
</header>
{% if ( r.info.brief && r.info.brief.length ) { %}
<section id="summary">
{{ r.info.brief|md }}
</section>
{% } %}
{% if ( r.skills && r.skills.sets && r.skills.sets.length ) { %}
<section id="skills">
<header>
<h2><span class="fa fa-code"></span> Skills</h2><hr>
</header>
<table>
<thead>
<tr>
<th>Skill</th>
<th>Keywords</th>
</tr>
</thead>
<tbody>
{% r.skills.sets.forEach( function( skillset ) { %}
<tr>
<td style="width: 25%;">{{ skillset.name }}</td>
<td class="keywords">{{ skillset.skills.join(', ') }}</td>
</tr>
{% }); %}
</tbody>
</table>
</section>
{% } %}
{% if ( r.employment && r.employment.history ) { %}
<section id="employment">
<header>
<h2><span class="fa fa-building" style="vertical-align: top;"></span> Employment</h2><hr>
</header>
{% r.employment.history.forEach( function( proj, idx, ar) { %}
{% if( idx < 4 ) { %}
<h3><em>{{ proj.position }}</em>, {{ filt.link( proj.employer, proj.url ) }} <span class="tenure">{{ proj.safe.start.format('YYYY-MM') }} &mdash; {{ proj.safe.end.format('YYYY-MM') }}<span></h3>
<p style="clear: both;">{{ proj.summary|md }}</p>
{% if( proj.highlights ) { %}
<ul>
{% proj.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% } else { %}
{% if( idx === 4 ) { %}
<h3>Previously... <span class="tenure">{{ r.employment.history[ r.employment.history.length - 1 ].safe.start.format('YYYY') }} &mdash; {{ proj.safe.end.format('YYYY') }}<span></h3>
<p style="clear: both;">Prior to {{ r.employment.history[ 3 ].employer }}, I worked on a range of projects for companies large and small.</p>
<ul>
{% } %}
<li>{{ proj.position }}, {{ proj.employer }}</li>
{% if( idx === ar.length - 1 ) { %}
</ul>
{% } %}
{% } %}
{% }); %}
</section>
{% } %}
{% if ( r.education && r.education.history ) { %}
<section id="education">
<header>
<h2><span class="fa fa-mortar-board"></span> Education</h2><hr>
</header>
{% r.education.history.forEach( function( edu, idx, ar) { %}
<h3>{{ edu.institution }} <span class="tenure">{{ edu.safe.start.format('YYYY') }} &mdash; {{ edu.safe.end.format('YYYY') }}<span></h3>
{% }); %}
</section>
{% } %}
{% if ( r.service && r.service.history && r.service.history.length ) { %}
<section id="volunteer">
<header>
<h2><span class="fa fa-child" style="vertical-align: top;"></span> Service</h2><hr>
</header>
{% r.service.history.forEach( function( vol, idx, ar ) { %}
<h3><em>{{ vol.position }}</em>, {{ filt.link(vol.organization, vol.url) }} <span class="tenure">{{ vol.safe.start.format('YYYY') }} &mdash; {{ vol.safe.end.format('YYYY') }}<span></h3>
<p style="clear: both;">{{ vol.summary|md }}</p>
{% if( vol.highlights ) { %}
<ul>
{% vol.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|md }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
{% if( r.writing && r.writing.length ) { %}
<section id="publications">
<header>
<h2><span class="fa fa-book"></span> Writing</h2><hr>
</header>
{% r.writing.forEach( function( pub, idx, ar ) { %}
<h3><em>{{ filt.link( pub.title, pub.url ) }}</em>, {{ pub.publisher }} <span class="tenure">{{ pub.safe.date.format('YYYY') }}</span></h3>
{% if (pub.summary) { %}{{ pub.summary|md }}{% } %}
{% }); %}
</section>
{% } %}
{% if( r.recognition && r.recognition.length ) { %}
<section id="awards">
<header>
<h2><span class="fa fa-trophy"></span> Awards</h2><hr>
</header>
{% r.recognition.forEach( function( award, idx, ar) { %}
<h4><span class="res-label">{{ award.title }}</span>, {{ award.from }} <span class="tenure">{{ award.safe.date.format('YYYY') }}</span></h4>
{{ award.summary|md }}
{% }); %}
</section>
{% } %}
</main>
</body>
</html>

View File

@ -0,0 +1,82 @@
html, body, main, section, header, ul, p, h1, h2, h3 {
font-family: Helvetica, sans-serif;
font-size: 12px;
margin: 0; padding: 0;
display: block;
}
a {
color: #0064BD;
text-decoration: none;
}
a:visited {
color: #7B0796;
}
a:hover {
text-decoration: underline;
}
h2 {
text-transform: uppercase;
}
h3 {
font-size: 1em;
}
main {
padding: 15px;
max-width: 700px;
margin: 0 auto;
}
section {
margin-top: 1em;
}
li {
margin-left: 2em;
}
h3 {
margin-top: 1em;
}
p, li {
text-align: justify;
}
.tenure {
float: right;
}
thead {
display: none;
}
main > header {
width: 100%;
float: left;
margin-bottom: 1em;
}
main > header > h1 {
float: left;
font-size: 1.5em;
}
#contact {
float: right;
}
#contact > div {
display: inline-block;
margin-left: 5px;
}
h2 > span.fa {
text-align: left;
margin-right: 3px;
}

View File

@ -0,0 +1,161 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>{{ r.name }}</title>
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic' rel='stylesheet' type='text/css'>
<style>
{{ cssInfo.data }}
</style>
</head>
<body>
<main>
<header>
<h1>{{ r.name }}</h1>
<div id="contact">
{% if (r.contact.email) { %}<div class="email"><a href="mailto:{{ r.contact.email }}">{{ r.contact.email }}</a></div>{% } %}
{% if (r.contact.phone) { %}<div class="phone">{{ r.contact.phone }}</div>{% } %}
{% if (r.contact.website) { %}<div class="website"><a href="{{ r.contact.website }}">{{ r.contact.website }}</a></div>{% } %}
</div>
</header>
{% if ( r.info.brief && r.info.brief.length ) { %}
<section id="summary">
{{ r.info.brief|md }}
</section>
{% } %}
{% if ( r.skills && r.skills.sets && r.skills.sets.length ) { %}
<section id="skills">
<header>
<h2><span class="fa fa-code"></span> Skills</h2><hr>
</header>
<table>
<thead>
<tr>
<th>Skill</th>
<th>Keywords</th>
</tr>
</thead>
<tbody>
{% r.skills.sets.forEach( function( skillset ) { %}
<tr>
<td style="width: 25%;">{{ skillset.name }}</td>
<td class="keywords">{{ skillset.skills.join(', ') }}</td>
</tr>
{% }); %}
</tbody>
</table>
</section>
{% } %}
{% if ( r.employment && r.employment.history ) { %}
<section id="employment">
<header>
<h2><span class="fa fa-building" style="vertical-align: top;"></span> Employment</h2><hr>
</header>
{% r.employment.history.forEach( function( proj, idx, ar) { %}
{% if( idx < 4 ) { %}
<h3><em>{{ proj.position }}</em>, {{ filt.link( proj.employer, proj.url ) }} <span class="tenure">{{ proj.safe.start.format('YYYY-MM') }} &mdash; {{ proj.safe.end.format('YYYY-MM') }}<span></h3>
<p style="clear: both;">{{ proj.summary|md }}</p>
{% if( proj.highlights ) { %}
<ul>
{% proj.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% } else { %}
{% if( idx === 4 ) { %}
<h3>Previously... <span class="tenure">{{ r.employment.history[ r.employment.history.length - 1 ].safe.start.format('YYYY') }} &mdash; {{ proj.safe.end.format('YYYY') }}<span></h3>
<p style="clear: both;">Prior to {{ r.employment.history[ 3 ].employer }}, I worked on a range of projects for companies large and small.</p>
<ul>
{% } %}
<li>{{ proj.position }}, {{ proj.employer }}</li>
{% if( idx === ar.length - 1 ) { %}
</ul>
{% } %}
{% } %}
{% }); %}
</section>
{% } %}
{% if ( r.education && r.education.history ) { %}
<section id="education">
<header>
<h2><span class="fa fa-mortar-board"></span> Education</h2><hr>
</header>
{% r.education.history.forEach( function( edu, idx, ar) { %}
<h3>{{ edu.institution }} <span class="tenure">{{ edu.safe.start.format('YYYY') }} &mdash; {{ edu.safe.end.format('YYYY') }}<span></h3>
{% }); %}
</section>
{% } %}
{% if ( r.service && r.service.history && r.service.history.length ) { %}
<section id="volunteer">
<header>
<h2><span class="fa fa-child" style="vertical-align: top;"></span> Service</h2><hr>
</header>
{% r.service.history.forEach( function( vol, idx, ar ) { %}
<h3>{{ filt.link(vol.organization, vol.url) }} <span class="tenure">{{ vol.safe.start.format('YYYY') }} &mdash; {{ vol.safe.end.format('YYYY') }}<span></h3>
<p style="clear: both;">{{ vol.summary|md }}</p>
{% if( vol.highlights ) { %}
<ul>
{% vol.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|md }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
{% if( r.writing && r.writing.length ) { %}
<section id="publications">
<header>
<h2><span class="fa fa-book"></span> Writing</h2><hr>
</header>
{% r.writing.forEach( function( pub, idx, ar ) { %}
<h3><em>{{ filt.link( pub.title, pub.url ) }}</em>, {{ pub.publisher }} <span class="tenure">{{ pub.safe.date.format('YYYY') }}</span></h3>
{% if (pub.summary) { %}{{ pub.summary|md }}{% } %}
{% }); %}
</section>
{% } %}
{% if( r.recognition && r.recognition.length ) { %}
<section id="awards">
<header>
<h2><span class="fa fa-trophy"></span> Awards</h2><hr>
</header>
{% r.recognition.forEach( function( award, idx, ar) { %}
<h4><span class="res-label">{{ award.title }}</span>, {{ award.from }} <span class="tenure">{{ award.safe.date.format('YYYY') }}</span></h4>
{{ award.summary|md }}
{% }); %}
</section>
{% } %}
</main>
</body>
</html>

View File

@ -0,0 +1,50 @@
{#
compact/txt.txt
A plain text resume template for FluentCV's "compact" theme.
#}
{{ r.name }}
{% if (r.contact.email) { %}Email: {{ r.contact.email }}{% } %}
{% if (r.contact.phone) { %}Tel: {{ r.contact.phone }}{% } %}
{% if (r.contact.website) { %}Web: {{ r.contact.website }}{% } %}
***
{% if ( r.info.brief && r.info.brief.length ) { %}{{ r.info.brief }}{% } %}
{% if ( r.skills && r.skills.length ) { %}SKILLS
{% r.skills.forEach( function( skill ) { %}
- {{ skill.name }}: {{ skill.level }}
{% }); } %}
{% if ( r.employment.history && r.employment.history.length ) { %}EMPLOYMENT
{% r.employment.history.forEach( function( proj, idx, ar) { %}
{{ proj.employer }} ({{ proj.safe.start.format('YYYY-MM') }} — {{ proj.safe.end.format('YYYY-MM') }})
{{ proj.summary }}
{% if( proj.highlights ) { %}{% proj.highlights.forEach( function( high ) { %}
- {{ high }}
{% }); } }); } %}
{% if ( r.education && r.education.history ) { %}EDUCATION
{% r.education.history.forEach( function( edu, idx, ar) { %}
{{ edu.institution }} ({{ edu.safe.start.format('YYYY-MM') }} — {{ edu.safe.end.format('YYYY-MM') }})
{{ edu.summary }}
{% if( edu.courses ) { %}{% edu.courses.forEach( function( course ) { %}
- {{ course }}
{% }); } }); } %}
{% if ( r.service && r.service.history ) { %}VOLUNTEER
{% r.service.history.forEach( function( srv, idx, ar) { %}
{{ srv.organization }} ({{ srv.safe.start.format('YYYY-MM') }} — {{ srv.safe.end.format('YYYY-MM') }})
{{ srv.summary }}
{% if( srv.highlights ) { %}{% srv.highlights.forEach( function( high ) { %}
- {{ high }}
{% }); } }); } %}
{% if ( r.writing && r.writing.length ) { %}WRITING
{% r.writing.forEach( function( wri, idx, ar) { %}
{{ wri.title }} ({{ wri.safe.date.format('YYYY-MM') }})
{{ wri.summary }}
{% }); } %}

View File

@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
{#
A simple-as-possible WORD/DOC template for the "Hello World" theme.
Uses the MS Word 2003 XML format for widest compatibility.
Uses the MS Word 2003 XML format.
#}
<?mso-application progid="Word.Document"?>
<w:wordDocument xmlns:aml="http://schemas.microsoft.com/aml/2001/core" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml" xmlns:wx="http://schemas.microsoft.com/office/word/2003/auxHint" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wsp="http://schemas.microsoft.com/office/word/2003/wordml/sp2" xmlns:sl="http://schemas.microsoft.com/schemaLibrary/2003/core" w:macrosPresent="no" w:embeddedObjPresent="no" w:ocxPresent="no" xml:space="preserve">
<w:ignoreSubtree w:val="http://schemas.microsoft.com/office/word/2003/wordml/sp2"/>
<o:DocumentProperties>
<o:Author>{{ r.basics.name }}</o:Author>
<o:LastAuthor>{{ r.basics.name }}</o:LastAuthor>
<o:Author>{{ r.name }}</o:Author>
<o:LastAuthor>{{ r.name }}</o:LastAuthor>
<o:Revision>1</o:Revision>
<o:TotalTime>2</o:TotalTime>
<o:Created>2015-10-08T04:10:00Z</o:Created>
@ -438,7 +438,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
<wx:sect>
<w:p wsp:rsidR="00CB5B76" wsp:rsidRDefault="00DA470D">
<w:r>
<w:t>Hello, world! My name is {{ r.basics.name }}.</w:t>
<w:t>Hello, world! My name is {{ r.name }}.</w:t>
</w:r>
</w:p>
<w:sectPr wsp:rsidR="00CB5B76">

View File

@ -5,10 +5,10 @@
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{ r.basics.name }}</title>
<title>{{ r.name }}</title>
<link type="text/css" rel="stylesheet" href="css/style.css">
</head>
<body>
<h1>Hello, world! My name is {{ r.basics.name }}</h1>
<h1>Hello, world! My name is {{ r.name }}</h1>
</body>
</html>

View File

@ -0,0 +1,7 @@
{#
modern/md.txt
A Markdown resume template for FluentCV's "hello-world" theme.
#}
# Hello, world! My name is {{ r.name }}.

View File

@ -0,0 +1 @@
{# An empty CSS file. #}

View File

@ -5,10 +5,10 @@
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{ r.basics.name }}</title>
<title>{{ r.name }}</title>
<link type="text/css" rel="stylesheet" href="css/style.css">
</head>
<body>
<h1>Hello, world! My name is {{ r.basics.name }}</h1>
<h1>Hello, world! My name is {{ r.name }}</h1>
</body>
</html>

View File

@ -1,4 +1,4 @@
{#
A simple-as-possible plain TXT resume template for the "Hello World" theme.
#}
Hello, world! My name is {{ r.basics.name }}.
Hello, world! My name is {{ r.name }}.

View File

@ -1,200 +0,0 @@
<!DOCTYPE html>
{# An HTML 5 PDF resume template for FluentCV's "informatic" theme. #}
<html>
<head>
<meta charset="utf-8">
<title>{{ r.basics.name }}</title>
<link href="https://fonts.googleapis.com/css?family=Lato" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
<style>
{{ cssInfo.data }}
</style>
</head>
<body class="pdf">
<div id="main">
<div id="container">
<header>
<h1>{{ r.basics.name }}</h1>
<div id="contact">
{% if (r.basics.email) { %}<div class="email">{{ r.basics.email }}</div>{% } %}
{% if (r.basics.phone) { %}<div class="phone">{{ r.basics.phone }}</div>{% } %}
{% if (r.basics.website) { %}<div class="website"><a href="{{ r.basics.website }}">{{ r.basics.website }}</a></div>{% } %}
</div>
</header>
{% if ( r.basics.summary && r.basics.summary.length ) { %}
<hr>
<section id="summary">
<h3>About</h3>
<span class="fa fa-lg fa-user"></span>
{{ r.basics.summary|md }}
</section>
{% } %}
{% if ( r.skills && r.skills.length ) { %}
<hr>
<section id="skills">
<header>
<h3>Skills</h3>
</header>
<span class="fa fa-lg fa-code"></span>
<ul class="list-unstyled">
{% r.skills.forEach( function(skill) { %}
<li class="card card-nested card-skills">
{% if( r.display_progress_bar ) { %}
<div class="skill-level" rel="tooltip" title="{{ skill.level }}" data-placement="left">
<div class="skill-progress {{ skill.level|lower }}">
</div>
</div>
{% } %}
<div class="skill-info">
<strong>{{ skill.name }}</strong>
<div class="space-top labels">
{% skill.keywords.forEach(function(kw) { %}
<span class="label label-keyword">{{ kw }}</span>
{% }); %}
</div>
</div>
</li>
{% }); %}
</ul>
</section>
{% } %}
{% if ( r.work && r.work.length ) { %}
<hr>
<section id="employment">
<header>
<h3>Employment</h3>
</header>
<span class="fa fa-lg fa-building"></span>
{% r.work.forEach( function( proj, idx, ar) { %}
{% if( proj.website && proj.website.length ) { %}
<h4>{{ proj.position }}, <a href="{{ proj.website|raw }}">{{ proj.company }}</a></h4>
{% } else { %}
<h4>{{ proj.position }}, <span class="defunct">{{ proj.company }}</span></h4>
{% } %}
<span class="tenure">{{ proj.startDate }}&mdash;{{ proj.endDate }}</span>
{{ proj.summary|md }}
{% if( proj.highlights ) { %}
<ul>
{% proj.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
{% if ( r.education && r.education.length ) { %}
<hr>
<section id="education">
<header>
<h3>Education</h3>
</header>
<span class="fa fa-lg fa-mortar-board"></span>
{% r.education.forEach( function( edu, idx, ar) { %}
<h4>{{ edu.institution }}</h4>
<span class="tenure">{{ edu.startDate }}&mdash;{{ edu.endDate }}</span>
{{ edu.area|md }}
{% if( edu.courses ) { %}
<ul>
{% edu.courses.forEach( function( course, idx, ar) { %}
<li>{{ course|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
{% if( r.awards ) { %}
<hr>
<section id="awards">
<header>
<h3>Awards</h3>
</header>
<span class="fa fa-lg fa-trophy"></span>
{% r.awards.forEach( function( award, idx, ar) { %}
<h4><em>{{ award.title }}</em>, {{ award.awarder }}</h4>
<span class="tenure">{{ award.date }}</span>
{{ award.summary|md }}
{% }); %}
</section>
{% } %}
{% if( r.publications ) { %}
<hr>
<section id="publications">
<header>
<h3>Publications</h3>
</header>
<span class="fa fa-lg fa-trophy"></span>
{% r.publications.forEach( function( pub, idx, ar) { %}
<h4>
{% if( pub.website ) { %}
<a href="{{ pub.website }}" >{{ pub.name }}</a>
{% } else { %}
{{ pub.name }}
{% } %}
,&nbsp;
{{ pub.publisher }}
</h4>
<span class="tenure">Published on: {{ pub.releaseDate }}</span>
<p>{{ pub.summary }}</p>
{% }); %}
</section>
{% } %}
{% if ( r.volunteer && r.volunteer.length ) { %}
<hr>
<section id="volunteer">
<header>
<h3>Volunteer Work</h3>
</header>
<span class="fa fa-lg fa-child"></span>
{% r.volunteer.forEach( function( vol, idx, ar) { %}
{% if( vol.website && vol.website.length ) { %}
<h4>{{ vol.position }}, <a href="{{ vol.website|raw }}">{{ vol.organization }}</a></h4>
{% } else { %}
<h4>{{ vol.position }}, <span class="defunct">{{ vol.organization }}</span></h4>
{% } %}
<span class="tenure">{{ vol.startDate }}&mdash;{{ vol.endDate }}</span>
{{ vol.summary|md }}
{% if( vol.highlights ) { %}
<ul>
{% vol.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
{% if( r.elevatorPitch ) { %}
<hr>
<section id='elevator-pitch'>
{{ r.elevatorPitch }}
</section>
{% } %}
</div>
</div>
</body>
</html>

View File

@ -1,33 +0,0 @@
{#
A plain TXT resume template for FluentCV's "informatic" theme.
#}
{{ r.basics.name }}
{% if (r.basics.email) { %}Email: {{ r.basics.email }}{% } %}
{% if (r.basics.phone) { %}Tel: {{ r.basics.phone }}{% } %}
{% if (r.basics.website) { %}Web: {{ r.basics.website }}{% } %}
***
{% if ( r.basics.summary && r.basics.summary.length ) { %}{{ r.basics.summary }}{% } %}
{% if ( r.skills && r.skills.length ) { %}SKILLS
{% r.skills.forEach( function( skill, idx, ar) { %}
- {{ skill.name }}: {% print( skill.keywords.join(', ') ); %}
{% }); } %}
{% if ( r.work && r.work.length ) { %}EMPLOYMENT
{% r.work.forEach( function( proj, idx, ar) { %}
{{ proj.company }} ({{ proj.startDate }} — {{ proj.endDate }})
{{ proj.summary }}
{% if( proj.highlights ) { %}{% proj.highlights.forEach( function( high, idx, ar) { %}
- {{ high }}
{% }); } }); } %}
{% if ( r.education && r.education.length ) { %}EDUCATION
{% r.education.forEach( function( edu, idx, ar) { %}
{{ edu.institution }} ({{ edu.startDate }} — {{ edu.endDate }})
{{ edu.area }}
{% if( edu.courses ) { %}{% edu.courses.forEach( function( course, idx, ar) { %}
- {{ course }}
{% }); } }); } %}

View File

@ -1,99 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>{{ r.basics.name }}</title>
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic' rel='stylesheet' type='text/css'>
<link href="resume.css" rel="stylesheet" type="text/css">
</head>
<body>
<main>
<header>
<h1>{{ r.basics.name }}</h1>
<div id="contact">
{% if (r.basics.email) { %}<div class="email">{{ r.basics.email }}</div>{% } %}
{% if (r.basics.phone) { %}<div class="phone">{{ r.basics.phone }}</div>{% } %}
{% if (r.basics.website) { %}<div class="website"><a href="{{ r.basics.website }}">{{ r.basics.website }}</a></div>{% } %}
</div>
</header>
{% if ( r.basics.summary && r.basics.summary.length ) { %}
<section id="summary">
{{ r.basics.summary|md }}
</section>
{% } %}
{% if ( r.skills && r.skills.length ) { %}
<section id="skills">
<header>
<h2>Skills</h2><hr>
</header>
<table>
<thead>
<tr>
<th>Skill</th>
<th>Keywords</th>
</tr>
</thead>
<tbody>
{% r.skills.forEach( function( skill, idx, ar) { %}
<tr>
<td style="width: 25%;">{{ skill.name }}</td>
<td class="keywords">{% print( skill.keywords.join(', ') ) %}</td>
</tr>
{% }); %}
</tbody>
</table>
</section>
{% } %}
{% if ( r.work && r.work.length ) { %}
<section id="employment">
<header>
<h2>Employment</h2><hr>
</header>
{% r.work.forEach( function( proj, idx, ar) { %}
<h3>{{ proj.company }} <span class="tenure">{{ proj.startDate }}&mdash;{{ proj.endDate }}<span></h3>
<p style="clear: both;">{{ proj.summary|md }}</p>
{% if( proj.highlights ) { %}
<ul>
{% proj.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|md }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
{% if ( r.education && r.education.length ) { %}
<section id="education">
<header>
<h2>Education</h2><hr>
</header>
{% r.education.forEach( function( edu, idx, ar) { %}
<h3>{{ edu.institution }} <span class="tenure">{{ edu.startDate }}&mdash;{{ edu.endDate }}<span></h3>
<p style="clear: both;">{{ edu.area|md }}</p>
{% if( edu.courses ) { %}
<ul>
{% edu.courses.forEach( function( course, idx, ar) { %}
<li>{{ course|md }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
</main>
</body>
</html>

View File

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>{{ r.basics.name }}</title>
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic' rel='stylesheet' type='text/css'>
<style>
{{ cssInfo.data }}
</style>
</head>
<body>
<main>
<header>
<h1>{{ r.basics.name }}</h1>
<div id="contact">
{% if (r.basics.email) { %}<div class="email">{{ r.basics.email }}</div>{% } %}
{% if (r.basics.phone) { %}<div class="phone">{{ r.basics.phone }}</div>{% } %}
{% if (r.basics.website) { %}<div class="website"><a href="{{ r.basics.website }}">{{ r.basics.website }}</a></div>{% } %}
</div>
</header>
{% if ( r.basics.summary && r.basics.summary.length ) { %}
<section id="summary">
{{ r.basics.summary|md }}
</section>
{% } %}
{% if ( r.skills && r.skills.length ) { %}
<section id="skills">
<header>
<h2>Skills</h2><hr>
</header>
<table>
<thead>
<tr>
<th>Skill</th>
<th>Keywords</th>
</tr>
</thead>
<tbody>
{% r.skills.forEach( function( skill, idx, ar) { %}
<tr>
<td style="width: 25%;">{{ skill.name }}</td>
<td class="keywords">{% print(skill.keywords.join(', ')); %}</td>
</tr>
{% }); %}
</tbody>
</table>
</section>
{% } %}
{% if ( r.work && r.work.length ) { %}
<section id="employment">
<header>
<h2>Employment</h2><hr>
</header>
{% r.work.forEach( function( proj, idx, ar) { %}
<h3>{{ proj.company }} <span class="tenure">{{ proj.startDate }}&mdash;{{ proj.endDate }}<span></h3>
<p style="clear: both;">{{ proj.summary|md }}</p>
{% if( proj.highlights ) { %}
<ul>
{% proj.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|md }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
{% if ( r.education && r.education.length ) { %}
<section id="education">
<header>
<h2>Education</h2><hr>
</header>
{% r.education.forEach( function( edu, idx, ar) { %}
<h3>{{ edu.institution }} <span class="tenure">{{ edu.startDate }}&mdash;{{ edu.endDate }}<span></h3>
<p style="clear: both;">{{ edu.area|md }}</p>
{% if( edu.courses ) { %}
<ul>
{% edu.courses.forEach( function( course, idx, ar) { %}
<li>{{ course|md }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
</main>
</body>
</html>

View File

@ -1,10 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
[[[
title: Minimist (MS Word)
description: An HTML-driven MS Word resume template for FluentCV's "minimist" theme.
engine: Underscore
]]]
-->
<?mso-application progid="Word.Document"?>
<w:wordDocument xmlns:aml="http://schemas.microsoft.com/aml/2001/core" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml" xmlns:wx="http://schemas.microsoft.com/office/word/2003/auxHint" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wsp="http://schemas.microsoft.com/office/word/2003/wordml/sp2" xmlns:sl="http://schemas.microsoft.com/schemaLibrary/2003/core" w:macrosPresent="no" w:embeddedObjPresent="no" w:ocxPresent="no" xml:space="preserve">
<w:ignoreSubtree w:val="http://schemas.microsoft.com/office/word/2003/wordml/sp2"/>
<o:DocumentProperties>
<o:Author>{{ r.basics.name|xml }}</o:Author>
<o:LastAuthor>{{ r.basics.name|xml }}</o:LastAuthor>
<o:Author>{{ r.name|xml }}</o:Author>
<o:LastAuthor>{{ r.name|xml }}</o:LastAuthor>
<o:Revision>4</o:Revision>
<o:TotalTime>14</o:TotalTime>
<o:Created>2015-08-28T04:22:00Z</o:Created>
@ -643,7 +650,7 @@
<w:sz-cs w:val="16"/>
</w:rPr>
</w:pPr>
<w:hlink w:dest="mailto:{{ r.basics.email }}">
<w:hlink w:dest="mailto:{{ r.contact.email }}">
<w:r wsp:rsidRPr="00D76150">
<w:rPr>
<w:rStyle w:val="Hyperlink"/>
@ -651,7 +658,7 @@
<w:sz-cs w:val="16"/>
<w:u w:val="none"/>
</w:rPr>
<w:t>{{ r.basics.email|xml }}</w:t>
<w:t>{{ r.contact.email|xml }}</w:t>
</w:r>
</w:hlink>
</w:p>
@ -664,7 +671,7 @@
<w:sz-cs w:val="16"/>
</w:rPr>
</w:pPr>
<w:hlink w:dest="{{ r.basics.website }}">
<w:hlink w:dest="{{ r.contact.website }}">
<w:r wsp:rsidRPr="00D76150">
<w:rPr>
<w:rStyle w:val="Hyperlink"/>
@ -672,7 +679,7 @@
<w:sz-cs w:val="16"/>
<w:u w:val="none"/>
</w:rPr>
<w:t>{{ r.basics.website|xml }}</w:t>
<w:t>{{ r.contact.website|xml }}</w:t>
</w:r>
</w:hlink>
</w:p>
@ -691,7 +698,7 @@
<w:sz-cs w:val="16"/>
<w:u w:val="none"/>
</w:rPr>
<w:t>{{ r.basics.phone|xml }}</w:t>
<w:t>{{ r.contact.phone|xml }}</w:t>
</w:r>
</w:p>
</w:txbxContent>
@ -701,7 +708,7 @@
</w:pict>
</w:r>
<w:r wsp:rsidRPr="00C61794">
<w:t>{{ r.basics.name|xml }}</w:t>
<w:t>{{ r.name|xml }}</w:t>
</w:r>
</w:p>
<w:p wsp:rsidR="00657B14" wsp:rsidRPr="00427ECC" wsp:rsidRDefault="00427ECC" wsp:rsidP="00657B14">
@ -714,7 +721,7 @@
<w:rPr>
<w:rStyle w:val="IntenseEmphasis"/>
</w:rPr>
<w:t>{{ r.basics.summary|xml }}</w:t>
<w:t>{{ r.info.brief|xml }}</w:t>
</w:r>
</w:p>
<wx:sub-section>
@ -746,8 +753,8 @@
<w:gridCol w:w="4428"/>
</w:tblGrid>
{% r.skills.forEach( function( skill, idx, ar) { %}
{% var kwords = skill.keywords.join(', '); %}
{% r.skills.sets.forEach( function( set, idx, ar) { %}
{% var kwords = set.skills.join(', '); %}
<w:tr wsp:rsidR="00427ECC" wsp:rsidTr="00FD3B33">
<w:tc>
@ -757,7 +764,7 @@
</w:tcPr>
<w:p wsp:rsidR="00427ECC" wsp:rsidRDefault="00427ECC" wsp:rsidP="00427ECC">
<w:r>
<w:t>{{ skill.name|xml }}:</w:t>
<w:t>{{ set.name|xml }}:</w:t>
</w:r>
</w:p>
</w:tc>
@ -805,7 +812,7 @@
<w:gridCol w:w="4428"/>
<w:gridCol w:w="4428"/>
</w:tblGrid>
{% r.work.forEach( function( proj, idx, ar) { %}
{% r.employment.history.forEach( function( proj, idx, ar) { %}
<w:tr wsp:rsidR="00C61794" wsp:rsidTr="00C61794">
<w:tc>
<w:tcPr>
@ -823,7 +830,7 @@
<w:pStyle w:val="Heading2"/>
</w:pPr>
<w:r>
<w:t>{{ proj.company|xml }}</w:t>
<w:t>{{ proj.employer|xml }}</w:t>
</w:r>
</w:p>
</w:tc>
@ -860,7 +867,7 @@
<w:sz w:val="28"/>
<w:sz-cs w:val="28"/>
</w:rPr>
<w:t>{{ proj.startDate|xml }} — {{ proj.endDate|xml }}</w:t>
<w:t>{{ proj.safe.start.format('YYYY-MM')|xml }} — {{ proj.safe.end.format('YYYY-MM')|xml }}</w:t>
</w:r>
</w:p>
</w:tc>
@ -930,7 +937,7 @@
<w:gridCol w:w="4428"/>
<w:gridCol w:w="4428"/>
</w:tblGrid>
{% r.education.forEach( function( edu, idx, ar) { %}
{% r.education.history.forEach( function( edu, idx, ar) { %}
<w:tr wsp:rsidR="00C61794" wsp:rsidTr="00C61794">
<w:tc>
<w:tcPr>
@ -985,7 +992,7 @@
<w:sz w:val="28"/>
<w:sz-cs w:val="28"/>
</w:rPr>
<w:t>{{ edu.startDate|xml }} — {{ edu.endDate|xml }}</w:t>
<w:t>{{ edu.safe.start.format('YYYY-MM')|xml }} — {{ edu.safe.end.format('YYYY-MM')|xml }}</w:t>
</w:r>
</w:p>
</w:tc>
@ -1005,10 +1012,10 @@
</w:tcPr>
<w:p wsp:rsidR="00C61794" wsp:rsidRDefault="00C61794" wsp:rsidP="00023F41">
<w:r>
<w:t>{{ edu.area|xml }}</w:t>
<w:t>TODO</w:t>
</w:r>
</w:p>
{% edu.courses.forEach( function( course, idx, ar) { %}
{% edu.curriculum.forEach( function( course, idx, ar) { %}
<w:p wsp:rsidR="00C61794" wsp:rsidRDefault="00C61794" wsp:rsidP="00C61794">
<w:pPr>
<w:listPr>

View File

@ -0,0 +1,200 @@
<!DOCTYPE html>
<!-- [[[
title: Modern (HTML)
description: An HTML resume template for FluentCV's "minimist" theme.
engine: Underscore
]]] -->
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{ r.name }}</title>
<link href='https://fonts.googleapis.com/css?family=Lato:400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
{{ headFragment }}
{% if( cssInfo.file ) { %}
<link href="{{ cssInfo.file }}" rel="stylesheet" type="text/css">
{% } else { %}
<style>
{{ cssInfo.data }}
</style>
{% } %}
</head>
<body>
<main id="main">
<div id="container">
<header>
<h1>{{ r.name }}</h1>
<div id="contact">
{% if (r.contact.email) { %}<div class="email">{{ r.contact.email }}</div>{% } %}
{% if (r.contact.phone) { %}<div class="phone">{{ r.contact.phone }}</div>{% } %}
{% if (r.contact.website) { %}<div class="website"><a href="{{ r.contact.website }}">{{ r.contact.website }}</a></div>{% } %}
</div>
</header>
{% if ( r.info.brief && r.info.brief.length ) { %}
<hr>
<section id="summary">
<h3>About</h3>
<span class="fa fa-lg fa-user"></span>
{{ r.info.brief|md }}
</section>
{% } %}
{% if ( r.skills && r.skills.sets ) { %}
<hr>
<section id="skills">
<header>
<h3>Skills</h3>
</header>
<span class="fa fa-lg fa-code"></span>
<ul class="list-unstyled">
{% r.skills.sets.forEach( function(set) { %}
<li class="card card-nested card-skills">
<div class="skill-level" rel="tooltip" title="{{ set.level }}" data-placement="left">
<div class="skill-progress {{ set.level }}"></div>
</div>
<div class="skill-info">
<strong>{{ set.name }}</strong>
<div class="space-top labels">
{% if( set.skills && set.skills.length ) { %}
{% set.skills.forEach(function(kw) { %}
<span class="label label-keyword">{{ kw }}</span>
{% }); %}
{% } %}
</div>
</div>
</li>
{% }); %}
</ul>
</section>
{% } %}
{% if ( r.employment.history && r.employment.history.length ) { %}
<hr>
<section id="employment">
<header>
<h3>Employment</h3>
</header>
<span class="fa fa-lg fa-building"></span>
{% r.employment.history.forEach( function( proj, idx, ar) { %}
{% if( proj.url && proj.url.length ) { %}
<h4><span class="res-label">{{ proj.position }}</span>, <a href="{{ proj.url|raw }}">{{ proj.employer }}</a></h4>
{% } else { %}
<h4><span class="res-label">{{ proj.position }}</span>, <span class="defunct">{{ proj.employer }}</span></h4>
{% } %}
<span class="tenure">{{ proj.safe.start.format('YYYY-MM') }}&mdash;{{ proj.safe.end.format('YYYY-MM') }}</span>
{{ proj.summary|md }}
{% if( proj.highlights ) { %}
<ul>
{% proj.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
{% if ( r.education.history && r.education.history.length ) { %}
<hr>
<section id="education">
<header>
<h3>Education</h3>
</header>
<span class="fa fa-lg fa-mortar-board"></span>
{% r.education.history.forEach( function( edu, idx, ar) { %}
<h4>{{ edu.institution }}</h4>
<span class="tenure">{{ edu.safe.start.format('YYYY-MM') }}&mdash;{{ edu.safe.end.format('YYYY-MM') }}</span>
{% if( edu.courses ) { %}
<ul>
{% edu.courses.forEach( function( course, idx, ar) { %}
<li>{{ course|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
{% if( r.recognition && r.recognition.length ) { %}
<hr>
<section id="awards">
<header>
<h3>Awards</h3>
</header>
<span class="fa fa-lg fa-trophy"></span>
{% r.recognition.forEach( function( award, idx, ar) { %}
<h4><span class="res-label">{{ award.title }}</span>, {{ award.from }}</h4>
<span class="tenure">{{ award.date }}</span>
{{ award.summary|md }}
{% }); %}
</section>
{% } %}
{% if( r.writing && r.writing.length ) { %}
<hr>
<section id="publications">
<header>
<h3>Publications</h3>
</header>
<span class="fa fa-lg fa-trophy"></span>
{% r.writing.forEach( function( pub, idx, ar) { %}
<h4>
{% if( pub.url ) { %}
<span class="res-label"><a href="{{ pub.link[0].url }}" ></span>{{ pub.title }}</a>,&nbsp;{{ pub.publisher }}
{% } else { %}
<span class="res-label">{{ pub.name }}</span>,&nbsp;{{ pub.publisher }}
{% } %}
</h4>
<span class="tenure">Published on: {{ pub.safe.date.format('YYYY-MM') }}</span>
{% }); %}
</section>
{% } %}
{% if ( r.service.history && r.service.history.length ) { %}
<hr>
<section id="volunteer">
<header>
<h3>Volunteer Work</h3>
</header>
<span class="fa fa-lg fa-child"></span>
{% r.service.history.forEach( function( vol, idx, ar) { %}
{% if( vol.url && vol.url.length ) { %}
<h4><span class="res-label">{{ vol.position }}</span>, <a href="{{ vol.website|raw }}">{{ vol.organization }}</a></h4>
{% } else { %}
<h4><span class="res-label">{{ vol.position }}</span>, <span class="defunct">{{ vol.organization }}</span></h4>
{% } %}
<span class="tenure">{{ vol.safe.start.format('YYYY-MM') }}&mdash;{{ vol.safe.end.format('YYYY-MM') }}</span>
{{ vol.summary|md }}
{% if( vol.highlights ) { %}
<ul>
{% vol.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
</div>
</main>
</body>
</html>

View File

@ -0,0 +1,59 @@
{#
minimist/md.txt
A Markdown resume template for FluentCV's "minimist" theme.
#}
# {{ r.name }}
{% if (r.contact.email) { %}Email: {{ r.contact.email }}{% } %}
{% if (r.contact.phone) { %}Tel: {{ r.contact.phone }}{% } %}
{% if (r.contact.website) { %}Web: {{ r.contact.website }}{% } %}
{% if ( r.info.brief && r.info.brief.length ) { %}{{ r.info.brief }}{% } %}
{% if ( r.skills && r.skills.sets ) { %}
## Skills
{% r.skills.sets.forEach( function( set, idx, ar) { %}
- **{{ set.name }}**: {{ set.level }}
{% }); } %}
{% if ( r.employment.history && r.employment.history.length ) { %}
## Employment
{% r.employment.history.forEach( function( proj, idx, ar) { %}
### *{{ proj.position }}*, {{ proj.employer }} ({{ proj.safe.start.format('MMM YYYY') }} — {{ proj.safe.end.format('MMM YYYY') }})
{{ proj.summary }}
{% if( proj.highlights ) { %}{% proj.highlights.forEach( function( high, idx, ar) { %}
- {{ high }}
{% }); } }); } %}
{% if ( r.education.history && r.education.history.length ) { %}
## Education
{% r.education.history.forEach( function( edu, idx, ar) { %}
### {{ edu.institution }} ({{ edu.safe.start.format('MMM YYYY') }} — {{ edu.safe.end.format('MMM YYYY') }})
{{ edu.area }}
{% if( edu.curriculum ) { %}{% edu.curriculum.forEach( function( course, idx, ar) { %}
- {{ course }}
{% }); } }); } %}
{% if ( r.writing && r.writing.length ) { %}
## Publications
{% r.writing.forEach( function( pub, idx, ar) { %}
### {{ pub.title }} ({{ pub.safe.date.format('MMM YYYY') }})
{{ pub.publisher }}
{{ pub.summary }}
{% }); } %}
{% if ( r.service.history && r.service.history.length ) { %}
## Volunteer
{% r.service.history.forEach( function( vol, idx, ar) { %}
### {{ vol.organization }} ({{ vol.safe.start.format('MMM YYYY') }} — {{ vol.safe.end.format('MMM YYYY') }})
{{ vol.summary }}
{% }); } %}
{% if ( r.recognition && r.recognition.length ) { %}
## Recognition
{% r.recognition.forEach( function( awd, idx, ar) { %}
### *{{ awd.title }}*, {{ awd.from }} ({{ awd.safe.date.format('MMM YYYY') }})
{{ awd.summary }}
{% }); } %}

View File

@ -0,0 +1,65 @@
body {
margin: 0;
padding: 0;
font-family: 'Open Sans', sans-serif;
}
h1 {
font-size: 3em;
}
main {
max-width: 800px;
margin: 3em auto;
}
main > header {
position: relative;
}
thead {
display: none;
}
#contact {
width: 200px;
position: absolute;
right: 0;
bottom: 8px;
text-align: right;
font-size: 75%;
font-weight: 600;
}
#summary {
font-style: italic;
}
#employment h3, #employment .tenure {
font-size: 20px;
font-weight: bold;
}
#employment h3 {
float: left;
width: 100%;
}
.tenure {
color: #ABABAB;
float: right;
text-align: right;
}
.keywords {
color: #037FD6;
}
h2 {
font-size: 32px;
font-weight: 300;
}
td {
padding: 10px 0;
}

View File

@ -0,0 +1,196 @@
<!DOCTYPE html>
<!-- [[[
title: Modern (PDF)
description: An HTML-driven PDF resume template for FluentCV's "minimist" theme.
engine: Underscore
]]] -->
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{ r.name }}</title>
<link href='https://fonts.googleapis.com/css?family=Lato:400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
{{ headFragment }}
<style>
{{ cssInfo.data }}
</style>
</head>
<body>
<main id="main">
<div id="container">
<header>
<h1>{{ r.name }}</h1>
<div id="contact">
{% if (r.contact.email) { %}<div class="email">{{ r.contact.email }}</div>{% } %}
{% if (r.contact.phone) { %}<div class="phone">{{ r.contact.phone }}</div>{% } %}
{% if (r.contact.website) { %}<div class="website"><a href="{{ r.contact.website }}">{{ r.contact.website }}</a></div>{% } %}
</div>
</header>
{% if ( r.info.brief && r.info.brief.length ) { %}
<hr>
<section id="summary">
<h3>About</h3>
<span class="fa fa-lg fa-user"></span>
{{ r.info.brief|md }}
</section>
{% } %}
{% if ( r.skills && r.skills.sets ) { %}
<hr>
<section id="skills">
<header>
<h3>Skills</h3>
</header>
<span class="fa fa-lg fa-code"></span>
<ul class="list-unstyled">
{% r.skills.sets.forEach( function(set) { %}
<li class="card card-nested card-skills">
<div class="skill-level" rel="tooltip" title="{{ set.level }}" data-placement="left">
<div class="skill-progress {{ set.level }}"></div>
</div>
<div class="skill-info">
<strong>{{ set.name }}</strong>
<div class="space-top labels">
{% if( set.skills && set.skills.length ) { %}
{% set.skills.forEach(function(kw) { %}
<span class="label label-keyword">{{ kw }}</span>
{% }); %}
{% } %}
</div>
</div>
</li>
{% }); %}
</ul>
</section>
{% } %}
{% if ( r.employment.history && r.employment.history.length ) { %}
<hr>
<section id="employment">
<header>
<h3>Employment</h3>
</header>
<span class="fa fa-lg fa-building"></span>
{% r.employment.history.forEach( function( proj, idx, ar) { %}
{% if( proj.url && proj.url.length ) { %}
<h4><span class="res-label">{{ proj.position }}</span>, <a href="{{ proj.url|raw }}">{{ proj.employer }}</a></h4>
{% } else { %}
<h4><span class="res-label">{{ proj.position }}</span>, <span class="defunct">{{ proj.employer }}</span></h4>
{% } %}
<span class="tenure">{{ proj.safe.start.format('YYYY-MM') }}&mdash;{{ proj.safe.end.format('YYYY-MM') }}</span>
{{ proj.summary|md }}
{% if( proj.highlights ) { %}
<ul>
{% proj.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
{% if ( r.education.history && r.education.history.length ) { %}
<hr>
<section id="education">
<header>
<h3>Education</h3>
</header>
<span class="fa fa-lg fa-mortar-board"></span>
{% r.education.history.forEach( function( edu, idx, ar) { %}
<h4>{{ edu.institution }}</h4>
<span class="tenure">{{ edu.safe.start.format('YYYY-MM') }}&mdash;{{ edu.safe.end.format('YYYY-MM') }}</span>
{% if( edu.courses ) { %}
<ul>
{% edu.courses.forEach( function( course, idx, ar) { %}
<li>{{ course|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
{% if( r.recognition && r.recognition.length ) { %}
<hr>
<section id="awards">
<header>
<h3>Awards</h3>
</header>
<span class="fa fa-lg fa-trophy"></span>
{% r.recognition.forEach( function( award, idx, ar) { %}
<h4><span class="res-label">{{ award.title }}</span>, {{ award.from }}</h4>
<span class="tenure">{{ award.date }}</span>
{{ award.summary|md }}
{% }); %}
</section>
{% } %}
{% if( r.writing && r.writing.length ) { %}
<hr>
<section id="publications">
<header>
<h3>Publications</h3>
</header>
<span class="fa fa-lg fa-trophy"></span>
{% r.writing.forEach( function( pub, idx, ar) { %}
<h4>
{% if( pub.url ) { %}
<span class="res-label"><a href="{{ pub.link[0].url }}" ></span>{{ pub.title }}</a>,&nbsp;{{ pub.publisher }}
{% } else { %}
<span class="res-label">{{ pub.name }}</span>,&nbsp;{{ pub.publisher }}
{% } %}
</h4>
<span class="tenure">Published on: {{ pub.safe.date.format('YYYY-MM') }}</span>
{% }); %}
</section>
{% } %}
{% if ( r.service.history && r.service.history.length ) { %}
<hr>
<section id="volunteer">
<header>
<h3>Volunteer Work</h3>
</header>
<span class="fa fa-lg fa-child"></span>
{% r.service.history.forEach( function( vol, idx, ar) { %}
{% if( vol.url && vol.url.length ) { %}
<h4><span class="res-label">{{ vol.position }}</span>, <a href="{{ vol.website|raw }}">{{ vol.organization }}</a></h4>
{% } else { %}
<h4><span class="res-label">{{ vol.position }}</span>, <span class="defunct">{{ vol.organization }}</span></h4>
{% } %}
<span class="tenure">{{ vol.safe.start.format('YYYY-MM') }}&mdash;{{ vol.safe.end.format('YYYY-MM') }}</span>
{{ vol.summary|md }}
{% if( vol.highlights ) { %}
<ul>
{% vol.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
</div>
</main>
</body>
</html>

View File

@ -0,0 +1,54 @@
{#
minimist/txt.txt
A plain text resume template for FluentCV's "minimist" theme.
#}
{{ r.name }}
{% if (r.contact.email) { %}Email: {{ r.contact.email }}{% } %}
{% if (r.contact.phone) { %}Tel: {{ r.contact.phone }}{% } %}
{% if (r.contact.website) { %}Web: {{ r.contact.website }}{% } %}
***
{% if ( r.info.brief && r.info.brief.length ) { %}{{ r.info.brief }}{% } %}
{% if ( r.skills && r.skills.sets && r.skills.sets.length ) { %}SKILLS
{% r.skills.sets.forEach( function( set ) { %}
- {{ set.name }}: {% set.skills.forEach(function(sk){ %}{{ sk }}, {% }); %}
{{ set.level }}
{% }); %}
{% } else if( r.skills && r.skills.list && r.skills.list.length ) { %}
{% } %}
{% if ( r.employment && r.employment.history ) { %}EMPLOYMENT
{% r.employment.history.forEach( function( proj, idx, ar) { %}
{{ proj.employer }} ({{ proj.safe.start.format('YYYY-MM') }} — {{ proj.safe.end.format('YYYY-MM') }})
{{ proj.summary }}
{% if( proj.highlights ) { %}{% proj.highlights.forEach( function( high ) { %}
- {{ high }}
{% }); } }); } %}
{% if ( r.education && r.education.history ) { %}EDUCATION
{% r.education.history.forEach( function( edu, idx, ar) { %}
{{ edu.institution }} ({{ edu.safe.start.format('YYYY-MM') }} — {{ edu.safe.end.format('YYYY-MM') }})
{{ edu.summary }}
{% if( edu.courses ) { %}{% edu.courses.forEach( function( course ) { %}
- {{ course }}
{% }); } }); } %}
{% if ( r.service && r.service.history ) { %}VOLUNTEER
{% r.service.history.forEach( function( srv, idx, ar) { %}
{{ srv.organization }} ({{ srv.safe.start.format('YYYY-MM') }} — {{ srv.safe.end.format('YYYY-MM') }})
{{ srv.summary }}
{% if( srv.highlights ) { %}{% srv.highlights.forEach( function( high ) { %}
- {{ high }}
{% }); } }); } %}
{% if ( r.writing && r.writing.length ) { %}WRITING
{% r.writing.forEach( function( wri, idx, ar) { %}
{{ wri.title }} ({{ wri.safe.date.format('YYYY-MM') }})
{{ wri.summary }}
{% }); } %}

View File

@ -1,30 +0,0 @@
{{ r.basics.name }}
{% if (r.basics.email) { %}Email: {{ r.basics.email }}{% } %}
{% if (r.basics.phone) { %}Tel: {{ r.basics.phone }}{% } %}
{% if (r.basics.website) { %}Web: {{ r.basics.website }}{% } %}
***
{% if ( r.basics.summary && r.basics.summary.length ) { %}{{ r.basics.summary }}{% } %}
{% if ( r.skills && r.skills.length ) { %}SKILLS
{% r.skills.forEach( function( skill, idx, ar) { %}
- {{ skill.name }}: {% print( skill.keywords.join(', ') ); %}
{% }); } %}
{% if ( r.work && r.work.length ) { %}EMPLOYMENT
{% r.work.forEach( function( proj, idx, ar) { %}
{{ proj.company }} ({{ proj.startDate }} — {{ proj.endDate }})
{{ proj.summary }}
{% if( proj.highlights ) { %}{% proj.highlights.forEach( function( high, idx, ar) { %}
- {{ high }}
{% }); } }); } %}
{% if ( r.education && r.education.length ) { %}EDUCATION
{% r.education.forEach( function( edu, idx, ar) { %}
{{ edu.institution }} ({{ edu.startDate }} — {{ edu.endDate }})
{{ edu.area }}
{% if( edu.courses ) { %}{% edu.courses.forEach( function( course, idx, ar) { %}
- {{ course }}
{% }); } }); } %}

View File

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -1,14 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
{#
An MS Word resume template for FluentCV's "informatic" theme.
Uses the MS Word 2003 XML format for widest compatibility.
#}
<!--
[[[
title: Modern (MS Word)
description: An HTML-driven MS Word resume template for FluentCV's "modern" theme.
engine: Underscore
]]]
-->
<?mso-application progid="Word.Document"?>
<w:wordDocument xmlns:aml="http://schemas.microsoft.com/aml/2001/core" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml" xmlns:wx="http://schemas.microsoft.com/office/word/2003/auxHint" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wsp="http://schemas.microsoft.com/office/word/2003/wordml/sp2" xmlns:sl="http://schemas.microsoft.com/schemaLibrary/2003/core" w:macrosPresent="no" w:embeddedObjPresent="no" w:ocxPresent="no" xml:space="preserve">
<w:ignoreSubtree w:val="http://schemas.microsoft.com/office/word/2003/wordml/sp2"/>
<o:DocumentProperties>
<o:Author>{{ r.basics.name|xml }}</o:Author>
<o:LastAuthor>{{ r.basics.name|xml }}</o:LastAuthor>
<o:Author>{{ r.name|xml }}</o:Author>
<o:LastAuthor>{{ r.name|xml }}</o:LastAuthor>
<o:Revision>4</o:Revision>
<o:TotalTime>14</o:TotalTime>
<o:Created>2015-08-28T04:22:00Z</o:Created>
@ -647,7 +650,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
<w:sz-cs w:val="16"/>
</w:rPr>
</w:pPr>
<w:hlink w:dest="mailto:{{ r.basics.email }}">
<w:hlink w:dest="mailto:{{ r.contact.email }}">
<w:r wsp:rsidRPr="00D76150">
<w:rPr>
<w:rStyle w:val="Hyperlink"/>
@ -655,7 +658,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
<w:sz-cs w:val="16"/>
<w:u w:val="none"/>
</w:rPr>
<w:t>{{ r.basics.email|xml }}</w:t>
<w:t>{{ r.contact.email|xml }}</w:t>
</w:r>
</w:hlink>
</w:p>
@ -668,7 +671,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
<w:sz-cs w:val="16"/>
</w:rPr>
</w:pPr>
<w:hlink w:dest="{{ r.basics.website }}">
<w:hlink w:dest="{{ r.contact.website }}">
<w:r wsp:rsidRPr="00D76150">
<w:rPr>
<w:rStyle w:val="Hyperlink"/>
@ -676,7 +679,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
<w:sz-cs w:val="16"/>
<w:u w:val="none"/>
</w:rPr>
<w:t>{{ r.basics.website|xml }}</w:t>
<w:t>{{ r.contact.website|xml }}</w:t>
</w:r>
</w:hlink>
</w:p>
@ -695,7 +698,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
<w:sz-cs w:val="16"/>
<w:u w:val="none"/>
</w:rPr>
<w:t>{{ r.basics.phone|xml }}</w:t>
<w:t>{{ r.contact.phone|xml }}</w:t>
</w:r>
</w:p>
</w:txbxContent>
@ -705,7 +708,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
</w:pict>
</w:r>
<w:r wsp:rsidRPr="00C61794">
<w:t>{{ r.basics.name|xml }}</w:t>
<w:t>{{ r.name|xml }}</w:t>
</w:r>
</w:p>
<w:p wsp:rsidR="00657B14" wsp:rsidRPr="00427ECC" wsp:rsidRDefault="00427ECC" wsp:rsidP="00657B14">
@ -718,7 +721,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
<w:rPr>
<w:rStyle w:val="IntenseEmphasis"/>
</w:rPr>
<w:t>{{ r.basics.summary|xml }}</w:t>
<w:t>{{ r.info.brief|xml }}</w:t>
</w:r>
</w:p>
<wx:sub-section>
@ -750,8 +753,8 @@ Uses the MS Word 2003 XML format for widest compatibility.
<w:gridCol w:w="4428"/>
</w:tblGrid>
{% r.skills.forEach( function( skill, idx, ar) { %}
{% var kwords = skill.keywords.join(', '); %}
{% r.skills.sets.forEach( function( set, idx, ar) { %}
{% var kwords = set.skills.join(', '); %}
<w:tr wsp:rsidR="00427ECC" wsp:rsidTr="00FD3B33">
<w:tc>
@ -761,7 +764,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
</w:tcPr>
<w:p wsp:rsidR="00427ECC" wsp:rsidRDefault="00427ECC" wsp:rsidP="00427ECC">
<w:r>
<w:t>{{ skill.name|xml }}:</w:t>
<w:t>{{ set.name|xml }}:</w:t>
</w:r>
</w:p>
</w:tc>
@ -809,7 +812,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
<w:gridCol w:w="4428"/>
<w:gridCol w:w="4428"/>
</w:tblGrid>
{% r.work.forEach( function( proj, idx, ar) { %}
{% r.employment.history.forEach( function( proj, idx, ar) { %}
<w:tr wsp:rsidR="00C61794" wsp:rsidTr="00C61794">
<w:tc>
<w:tcPr>
@ -827,7 +830,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
<w:pStyle w:val="Heading2"/>
</w:pPr>
<w:r>
<w:t>{{ proj.company|xml }}</w:t>
<w:t>{{ proj.employer|xml }}</w:t>
</w:r>
</w:p>
</w:tc>
@ -864,7 +867,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
<w:sz w:val="28"/>
<w:sz-cs w:val="28"/>
</w:rPr>
<w:t>{{ proj.startDate|xml }} — {{ proj.endDate|xml }}</w:t>
<w:t>{{ proj.safe.start.format('YYYY-MM')|xml }} — {{ proj.safe.end.format('YYYY-MM')|xml }}</w:t>
</w:r>
</w:p>
</w:tc>
@ -934,7 +937,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
<w:gridCol w:w="4428"/>
<w:gridCol w:w="4428"/>
</w:tblGrid>
{% r.education.forEach( function( edu, idx, ar) { %}
{% r.education.history.forEach( function( edu, idx, ar) { %}
<w:tr wsp:rsidR="00C61794" wsp:rsidTr="00C61794">
<w:tc>
<w:tcPr>
@ -989,7 +992,7 @@ Uses the MS Word 2003 XML format for widest compatibility.
<w:sz w:val="28"/>
<w:sz-cs w:val="28"/>
</w:rPr>
<w:t>{{ edu.startDate|xml }} — {{ edu.endDate|xml }}</w:t>
<w:t>{{ edu.safe.start.format('YYYY-MM')|xml }} — {{ edu.safe.end.format('YYYY-MM')|xml }}</w:t>
</w:r>
</w:p>
</w:tc>
@ -1009,10 +1012,10 @@ Uses the MS Word 2003 XML format for widest compatibility.
</w:tcPr>
<w:p wsp:rsidR="00C61794" wsp:rsidRDefault="00C61794" wsp:rsidP="00023F41">
<w:r>
<w:t>{{ edu.area|xml }}</w:t>
<w:t>TODO</w:t>
</w:r>
</w:p>
{% edu.courses.forEach( function( course, idx, ar) { %}
{% edu.curriculum.forEach( function( course, idx, ar) { %}
<w:p wsp:rsidR="00C61794" wsp:rsidRDefault="00C61794" wsp:rsidP="00C61794">
<w:pPr>
<w:listPr>

View File

@ -7,7 +7,7 @@ main {
}
body {
font-family: 'Lato', sans-serif;
font-family: 'Helvetica Neue', Helvetica, 'Lato', sans-serif;
font-size: 15px;
color: #333;
line-height: 1.42857143;
@ -92,13 +92,17 @@ a, a:visited {
font-weight: bold;
}
a:hover {
text-decoration: underline;
}
.defunct {
color: #989898;
font-weight: bold;
}
#summary > p > strong {
font-size: 150%;
font-size: 1.25em;
}
@ -193,3 +197,7 @@ a, a:visited {
text-transform: uppercase;
font-weight: normal;
}
.res-label {
font-style: italic;
}

View File

@ -1,13 +1,18 @@
<!DOCTYPE html>
{# An HTML 5 resume template for FluentCV's "informatic" theme. #}
<!-- [[[
title: Modern (HTML)
description: An HTML resume template for FluentCV's "modern" theme.
engine: Underscore
]]] -->
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{ r.basics.name }}</title>
<title>{{ r.name }}</title>
<link href='https://fonts.googleapis.com/css?family=Lato:400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
{{ headFragment }}
{% if( cssInfo.file ) { %}
<link href="{{ cssInfo.file }}" rel="stylesheet" type="text/css">
{% } else { %}
@ -20,25 +25,25 @@
<main id="main">
<div id="container">
<header>
<h1>{{ r.basics.name }}</h1>
<h1>{{ r.name }}</h1>
<div id="contact">
{% if (r.basics.email) { %}<div class="email">{{ r.basics.email }}</div>{% } %}
{% if (r.basics.phone) { %}<div class="phone">{{ r.basics.phone }}</div>{% } %}
{% if (r.basics.website) { %}<div class="website"><a href="{{ r.basics.website }}">{{ r.basics.website }}</a></div>{% } %}
{% if (r.contact.email) { %}<div class="email">{{ r.contact.email }}</div>{% } %}
{% if (r.contact.phone) { %}<div class="phone">{{ r.contact.phone }}</div>{% } %}
{% if (r.contact.website) { %}<div class="website"><a href="{{ r.contact.website }}">{{ r.contact.website }}</a></div>{% } %}
</div>
</header>
{% if ( r.basics.summary && r.basics.summary.length ) { %}
{% if ( r.info.brief && r.info.brief.length ) { %}
<hr>
<section id="summary">
<h3>About</h3>
<span class="fa fa-lg fa-user"></span>
{{ r.basics.summary|md }}
{{ r.info.brief|md }}
</section>
{% } %}
{% if ( r.skills && r.skills.length ) { %}
{% if ( r.skills && r.skills.sets ) { %}
<hr>
<section id="skills">
<header>
@ -47,21 +52,19 @@
<span class="fa fa-lg fa-code"></span>
<ul class="list-unstyled">
{% r.skills.forEach( function(skill) { %}
{% r.skills.sets.forEach( function(set) { %}
<li class="card card-nested card-skills">
{% if( r.display_progress_bar ) { %}
<div class="skill-level" rel="tooltip" title="{{ skill.level }}" data-placement="left">
<div class="skill-progress {{ skill.level|lower }}">
</div>
</div>
{% } %}
<div class="skill-level" rel="tooltip" title="{{ set.level }}" data-placement="left">
<div class="skill-progress {{ set.level }}"></div>
</div>
<div class="skill-info">
<strong>{{ skill.name }}</strong>
<strong>{{ set.name }}</strong>
<div class="space-top labels">
{% skill.keywords.forEach(function(kw) { %}
<span class="label label-keyword">{{ kw }}</span>
{% }); %}
{% if( set.skills && set.skills.length ) { %}
{% set.skills.forEach(function(kw) { %}
<span class="label label-keyword">{{ kw }}</span>
{% }); %}
{% } %}
</div>
</div>
</li>
@ -74,20 +77,20 @@
{% if ( r.work && r.work.length ) { %}
{% if ( r.employment.history && r.employment.history.length ) { %}
<hr>
<section id="employment">
<header>
<h3>Employment</h3>
</header>
<span class="fa fa-lg fa-building"></span>
{% r.work.forEach( function( proj, idx, ar) { %}
{% if( proj.website && proj.website.length ) { %}
<h4>{{ proj.position }}, <a href="{{ proj.website|raw }}">{{ proj.company }}</a></h4>
{% r.employment.history.forEach( function( proj, idx, ar) { %}
{% if( proj.url && proj.url.length ) { %}
<h4><span class="res-label">{{ proj.position }}</span>, <a href="{{ proj.url|raw }}">{{ proj.employer }}</a></h4>
{% } else { %}
<h4>{{ proj.position }}, <span class="defunct">{{ proj.company }}</span></h4>
<h4><span class="res-label">{{ proj.position }}</span>, <span class="defunct">{{ proj.employer }}</span></h4>
{% } %}
<span class="tenure">{{ proj.startDate }}&mdash;{{ proj.endDate }}</span>
<span class="tenure">{{ proj.safe.start.format('YYYY-MM') }}&mdash;{{ proj.safe.end.format('YYYY-MM') }}</span>
{{ proj.summary|md }}
{% if( proj.highlights ) { %}
<ul>
@ -103,17 +106,16 @@
{% if ( r.education && r.education.length ) { %}
{% if ( r.education.history && r.education.history.length ) { %}
<hr>
<section id="education">
<header>
<h3>Education</h3>
</header>
<span class="fa fa-lg fa-mortar-board"></span>
{% r.education.forEach( function( edu, idx, ar) { %}
{% r.education.history.forEach( function( edu, idx, ar) { %}
<h4>{{ edu.institution }}</h4>
<span class="tenure">{{ edu.startDate }}&mdash;{{ edu.endDate }}</span>
{{ edu.area|md }}
<span class="tenure">{{ edu.safe.start.format('YYYY-MM') }}&mdash;{{ edu.safe.end.format('YYYY-MM') }}</span>
{% if( edu.courses ) { %}
<ul>
{% edu.courses.forEach( function( course, idx, ar) { %}
@ -126,56 +128,54 @@
</section>
{% } %}
{% if( r.awards ) { %}
{% if( r.recognition && r.recognition.length ) { %}
<hr>
<section id="awards">
<header>
<h3>Awards</h3>
</header>
<span class="fa fa-lg fa-trophy"></span>
{% r.awards.forEach( function( award, idx, ar) { %}
<h4><em>{{ award.title }}</em>, {{ award.awarder }}</h4>
{% r.recognition.forEach( function( award, idx, ar) { %}
<h4><span class="res-label">{{ award.title }}</span>, {{ award.from }}</h4>
<span class="tenure">{{ award.date }}</span>
{{ award.summary|md }}
{% }); %}
</section>
{% } %}
{% if( r.publications ) { %}
{% if( r.writing && r.writing.length ) { %}
<hr>
<section id="publications">
<header>
<h3>Publications</h3>
</header>
<span class="fa fa-lg fa-trophy"></span>
{% r.publications.forEach( function( pub, idx, ar) { %}
<span class="fa fa-lg fa-pencil"></span>
{% r.writing.forEach( function( pub, idx, ar) { %}
<h4>
{% if( pub.website ) { %}
<a href="{{ pub.website }}" >{{ pub.name }}</a>,&nbsp;{{ pub.publisher }}
{% } else { %}
{{ pub.name }},&nbsp;{{ pub.publisher }}
{% } %}
<span class="res-label">{{ filt.link(pub.title, pub.url) }}</span>&nbsp;{{ pub.publisher }}
</h4>
<span class="tenure">Published on: {{ pub.releaseDate }}</span>
<p>{{ pub.summary }}</p>
<span class="tenure">Published on: {{ pub.safe.date.format('YYYY-MM') }}</span>
{% }); %}
</section>
{% } %}
{% if ( r.volunteer && r.volunteer.length ) { %}
{% if ( r.service.history && r.service.history.length ) { %}
<hr>
<section id="volunteer">
<header>
<h3>Volunteer Work</h3>
</header>
<span class="fa fa-lg fa-child"></span>
{% r.volunteer.forEach( function( vol, idx, ar) { %}
{% if( vol.website && vol.website.length ) { %}
<h4>{{ vol.position }}, <a href="{{ vol.website|raw }}">{{ vol.organization }}</a></h4>
{% r.service.history.forEach( function( vol, idx, ar) { %}
{% if( vol.url && vol.url.length ) { %}
<h4><span class="res-label">{{ vol.position }}</span>, <a href="{{ vol.website|raw }}">{{ vol.organization }}</a></h4>
{% } else { %}
<h4>{{ vol.position }}, <span class="defunct">{{ vol.organization }}</span></h4>
<h4><span class="res-label">{{ vol.position }}</span>, <span class="defunct">{{ vol.organization }}</span></h4>
{% } %}
<span class="tenure">{{ vol.startDate }}&mdash;{{ vol.endDate }}</span>
<span class="tenure">{{ vol.safe.start.format('YYYY-MM') }}&mdash;{{ vol.safe.end.format('YYYY-MM') }}</span>
{{ vol.summary|md }}
{% if( vol.highlights ) { %}
<ul>
@ -189,12 +189,6 @@
</section>
{% } %}
{% if( r.elevatorPitch ) { %}
<hr>
<section id='elevator-pitch'>
{{ r.elevatorPitch }}
</section>
{% } %}
</div>
</main>

View File

@ -0,0 +1,59 @@
{#
modern/md.txt
A Markdown resume template for FluentCV's "modern" theme.
#}
# {{ r.name }}
{% if (r.contact.email) { %}Email: {{ r.contact.email }}{% } %}
{% if (r.contact.phone) { %}Tel: {{ r.contact.phone }}{% } %}
{% if (r.contact.website) { %}Web: {{ r.contact.website }}{% } %}
{% if ( r.info.brief && r.info.brief.length ) { %}{{ r.info.brief }}{% } %}
{% if ( r.skills && r.skills.sets ) { %}
## Skills
{% r.skills.sets.forEach( function( set, idx, ar) { %}
- **{{ set.name }}**: {{ set.level }}
{% }); } %}
{% if ( r.employment.history && r.employment.history.length ) { %}
## Employment
{% r.employment.history.forEach( function( proj, idx, ar) { %}
### *{{ proj.position }}*, {{ proj.employer }} ({{ proj.safe.start.format('MMM YYYY') }} — {{ proj.safe.end.format('MMM YYYY') }})
{{ proj.summary }}
{% if( proj.highlights ) { %}{% proj.highlights.forEach( function( high, idx, ar) { %}
- {{ high }}
{% }); } }); } %}
{% if ( r.education.history && r.education.history.length ) { %}
## Education
{% r.education.history.forEach( function( edu, idx, ar) { %}
### {{ edu.institution }} ({{ edu.safe.start.format('MMM YYYY') }} — {{ edu.safe.end.format('MMM YYYY') }})
{{ edu.area }}
{% if( edu.curriculum ) { %}{% edu.curriculum.forEach( function( course, idx, ar) { %}
- {{ course }}
{% }); } }); } %}
{% if ( r.writing && r.writing.length ) { %}
## Publications
{% r.writing.forEach( function( pub, idx, ar) { %}
### {{ pub.title }} ({{ pub.safe.date.format('MMM YYYY') }})
{{ pub.publisher }}
{{ pub.summary }}
{% }); } %}
{% if ( r.service.history && r.service.history.length ) { %}
## Volunteer
{% r.service.history.forEach( function( vol, idx, ar) { %}
### {{ vol.organization }} ({{ vol.safe.start.format('MMM YYYY') }} — {{ vol.safe.end.format('MMM YYYY') }})
{{ vol.summary }}
{% }); } %}
{% if ( r.recognition && r.recognition.length ) { %}
## Recognition
{% r.recognition.forEach( function( awd, idx, ar) { %}
### *{{ awd.title }}*, {{ awd.from }} ({{ awd.safe.date.format('MMM YYYY') }})
{{ awd.summary }}
{% }); } %}

View File

@ -0,0 +1,203 @@
* {
box-sizing: border-box;
}
main {
display: block;
}
body {
font-family: 'Helvetica Neue', Helvetica, 'Lato', sans-serif;
font-size: 15px;
color: #333;
line-height: 1.42857143;
background-color: #F0F0F0;
margin: 0;
padding: 0;
}
/* Typical page borders are awkward when rendered to PDF. */
body.pdf {
background-color: #FFFFFF;
}
/* Adobe or wkhtmltopdf has issues with the <main> tag, so we use <div> for
the PDF case, <main> for the HTML case, and style both via an ID. */
#main {
background-color: #FFF;
margin: 10px;
padding: 10px;
border: 1px solid #E6E6E6;
}
body.pdf > #main {
border: none;
}
#container > header {
padding-top: 6em;
padding-bottom: 1em;
}
body.pdf #container > header {
padding: 0;
}
#main > #container > section {
margin-left: 5em;
position: relative;
display: block;
}
#main > #container > section > span.fa
{
position: absolute;
top: 4px;
left: -50px;
font-size: 30px;
color: #BFC1C3;
}
hr {
margin-top: 20px;
margin-bottom: 20px;
border: 0;
border-top: 1px solid #EEE;
}
.tenure {
font-size: 75%;
}
h1 {
margin: 0;
font-size: 46px;
}
h3 {
font-size: 24px;
color: #BFC1C3;
text-transform: uppercase;
font-weight: normal;
}
h4 {
margin-bottom: 0;
font-size: 18px;
}
a, a:visited {
color: #428BCA;
text-decoration: none;
font-weight: bold;
}
a:hover {
text-decoration: underline;
}
.defunct {
color: #989898;
font-weight: bold;
}
#summary > p > strong {
font-size: 1.25em;
}
.label-keyword {
display: inline-block;
background: #7eb0db;
color: white;
font-size: 0.9em;
padding: 5px;
border: 1px solid #357ebd;
border-radius: 5px;
margin-top: 2px;
}
.card-skills {
position: relative;
}
.card-nested {
min-height: 0;
margin-bottom: 10px;
border-width: 1px 0 0 0;
}
.card {
background: #FFF;
border-radius: 3px;
padding: 10px;
}
.skill-level {
border-radius: 3px;
position: absolute;
top: 10px;
bottom: 10px;
left: 0;
width: 10px;
box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5);
}
.skill-level .skill-progress {
position: absolute;
border-radius: 3px;
bottom: 0;
width: 100%;
-webkit-transition: height 1s ease;
}
.skill-level .skill-progress.beginner {
height: 50%;
background: #e74c3c;
}
.skill-level .skill-progress.intermediate {
height: 70%;
background: #f1c40f;
}
.skill-level .skill-progress.advanced {
height: 80%;
background: #428bca;
}
.skill-level .skill-progress.master {
height: 95%;
background: #5cb85c;
}
.skill-info {
margin-left: 10px;
}
@media (max-width: 480px) {
.skill-info {
margin-left: 20px;
}
}
.list-unstyled {
padding-left: 0;
list-style: none;
}
.card-skills {
position: relative;
}
.space-top {
margin-top: 10px;
}
#container {
max-width: 800px;
margin: 0 auto;
}
#elevator-pitch {
text-align: center;
font-size: 24px;
color: #BFC1C3;
text-transform: uppercase;
font-weight: normal;
}
.res-label {
font-style: italic;
}

View File

@ -0,0 +1,192 @@
<!DOCTYPE html>
<!-- [[[
title: Modern (PDF)
description: An HTML-driven PDF resume template for FluentCV's "modern" theme.
engine: Underscore
]]] -->
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{ r.name }}</title>
<link href='https://fonts.googleapis.com/css?family=Lato:400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
{{ headFragment }}
<style>
{{ cssInfo.data }}
</style>
</head>
<body>
<main id="main">
<div id="container">
<header>
<h1>{{ r.name }}</h1>
<div id="contact">
{% if (r.contact.email) { %}<div class="email">{{ r.contact.email }}</div>{% } %}
{% if (r.contact.phone) { %}<div class="phone">{{ r.contact.phone }}</div>{% } %}
{% if (r.contact.website) { %}<div class="website"><a href="{{ r.contact.website }}">{{ r.contact.website }}</a></div>{% } %}
</div>
</header>
{% if ( r.info.brief && r.info.brief.length ) { %}
<hr>
<section id="summary">
<h3>About</h3>
<span class="fa fa-lg fa-user"></span>
{{ r.info.brief|md }}
</section>
{% } %}
{% if ( r.skills && r.skills.sets ) { %}
<hr>
<section id="skills">
<header>
<h3>Skills</h3>
</header>
<span class="fa fa-lg fa-code"></span>
<ul class="list-unstyled">
{% r.skills.sets.forEach( function(set) { %}
<li class="card card-nested card-skills">
<div class="skill-level" rel="tooltip" title="{{ set.level }}" data-placement="left">
<div class="skill-progress {{ set.level }}"></div>
</div>
<div class="skill-info">
<strong>{{ set.name }}</strong>
<div class="space-top labels">
{% if( set.skills && set.skills.length ) { %}
{% set.skills.forEach(function(kw) { %}
<span class="label label-keyword">{{ kw }}</span>
{% }); %}
{% } %}
</div>
</div>
</li>
{% }); %}
</ul>
</section>
{% } %}
{% if ( r.employment.history && r.employment.history.length ) { %}
<hr>
<section id="employment">
<header>
<h3>Employment</h3>
</header>
<span class="fa fa-lg fa-building"></span>
{% r.employment.history.forEach( function( proj, idx, ar) { %}
{% if( proj.url && proj.url.length ) { %}
<h4><span class="res-label">{{ proj.position }}</span>, <a href="{{ proj.url|raw }}">{{ proj.employer }}</a></h4>
{% } else { %}
<h4><span class="res-label">{{ proj.position }}</span>, <span class="defunct">{{ proj.employer }}</span></h4>
{% } %}
<span class="tenure">{{ proj.safe.start.format('YYYY-MM') }}&mdash;{{ proj.safe.end.format('YYYY-MM') }}</span>
{{ proj.summary|md }}
{% if( proj.highlights ) { %}
<ul>
{% proj.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
{% if ( r.education.history && r.education.history.length ) { %}
<hr>
<section id="education">
<header>
<h3>Education</h3>
</header>
<span class="fa fa-lg fa-mortar-board"></span>
{% r.education.history.forEach( function( edu, idx, ar) { %}
<h4>{{ edu.institution }}</h4>
<span class="tenure">{{ edu.safe.start.format('YYYY-MM') }}&mdash;{{ edu.safe.end.format('YYYY-MM') }}</span>
{% if( edu.courses ) { %}
<ul>
{% edu.courses.forEach( function( course, idx, ar) { %}
<li>{{ course|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
{% if( r.recognition && r.recognition.length ) { %}
<hr>
<section id="awards">
<header>
<h3>Awards</h3>
</header>
<span class="fa fa-lg fa-trophy"></span>
{% r.recognition.forEach( function( award, idx, ar) { %}
<h4><span class="res-label">{{ award.title }}</span>, {{ award.from }}</h4>
<span class="tenure">{{ award.date }}</span>
{{ award.summary|md }}
{% }); %}
</section>
{% } %}
{% if( r.writing && r.writing.length ) { %}
<hr>
<section id="publications">
<header>
<h3>Publications</h3>
</header>
<span class="fa fa-lg fa-pencil"></span>
{% r.writing.forEach( function( pub, idx, ar) { %}
<h4>
<span class="res-label">{{ filt.link(pub.title, pub.url) }}</span>&nbsp;{{ pub.publisher }}
</h4>
<span class="tenure">Published on: {{ pub.safe.date.format('YYYY-MM') }}</span>
{% }); %}
</section>
{% } %}
{% if ( r.service.history && r.service.history.length ) { %}
<hr>
<section id="volunteer">
<header>
<h3>Volunteer Work</h3>
</header>
<span class="fa fa-lg fa-child"></span>
{% r.service.history.forEach( function( vol, idx, ar) { %}
{% if( vol.url && vol.url.length ) { %}
<h4><span class="res-label">{{ vol.position }}</span>, <a href="{{ vol.website|raw }}">{{ vol.organization }}</a></h4>
{% } else { %}
<h4><span class="res-label">{{ vol.position }}</span>, <span class="defunct">{{ vol.organization }}</span></h4>
{% } %}
<span class="tenure">{{ vol.safe.start.format('YYYY-MM') }}&mdash;{{ vol.safe.end.format('YYYY-MM') }}</span>
{{ vol.summary|md }}
{% if( vol.highlights ) { %}
<ul>
{% vol.highlights.forEach( function( high, idx, ar) { %}
<li>{{ high|mdin }}</li>
{% }); %}
</ul>
{% } %}
{% }); %}
</section>
{% } %}
</div>
</main>
</body>
</html>

View File

@ -0,0 +1,54 @@
{#
modern/txt.txt
A plain text resume template for FluentCV's "modern" theme.
#}
{{ r.name }}
{% if (r.contact.email) { %}Email: {{ r.contact.email }}{% } %}
{% if (r.contact.phone) { %}Tel: {{ r.contact.phone }}{% } %}
{% if (r.contact.website) { %}Web: {{ r.contact.website }}{% } %}
***
{% if ( r.info.brief && r.info.brief.length ) { %}{{ r.info.brief }}{% } %}
{% if ( r.skills && r.skills.sets && r.skills.sets.length ) { %}SKILLS
{% r.skills.sets.forEach( function( set ) { %}
- {{ set.name }}: {% set.skills.forEach(function(sk){ %}{{ sk }}, {% }); %}
{{ set.level }}
{% }); %}
{% } else if( r.skills && r.skills.list && r.skills.list.length ) { %}
{% } %}
{% if ( r.employment && r.employment.history ) { %}EMPLOYMENT
{% r.employment.history.forEach( function( proj, idx, ar) { %}
{{ proj.employer }} ({{ proj.safe.start.format('YYYY-MM') }} — {{ proj.safe.end.format('YYYY-MM') }})
{{ proj.summary }}
{% if( proj.highlights ) { %}{% proj.highlights.forEach( function( high ) { %}
- {{ high }}
{% }); } }); } %}
{% if ( r.education && r.education.history ) { %}EDUCATION
{% r.education.history.forEach( function( edu, idx, ar) { %}
{{ edu.institution }} ({{ edu.safe.start.format('YYYY-MM') }} — {{ edu.safe.end.format('YYYY-MM') }})
{{ edu.summary }}
{% if( edu.courses ) { %}{% edu.courses.forEach( function( course ) { %}
- {{ course }}
{% }); } }); } %}
{% if ( r.service && r.service.history ) { %}VOLUNTEER
{% r.service.history.forEach( function( srv, idx, ar) { %}
{{ srv.organization }} ({{ srv.safe.start.format('YYYY-MM') }} — {{ srv.safe.end.format('YYYY-MM') }})
{{ srv.summary }}
{% if( srv.highlights ) { %}{% srv.highlights.forEach( function( high ) { %}
- {{ high }}
{% }); } }); } %}
{% if ( r.writing && r.writing.length ) { %}WRITING
{% r.writing.forEach( function( wri, idx, ar) { %}
{{ wri.title }} ({{ wri.safe.date.format('YYYY-MM') }})
{{ wri.summary }}
{% }); } %}