@ -7,3 +7,4 @@ FRESH resume themes live here, one per folder.
|
|||||||
- [`compact`](compact): A compact theme.
|
- [`compact`](compact): A compact theme.
|
||||||
- [`positive`](positive): A theme that partakes of that which is positive.
|
- [`positive`](positive): A theme that partakes of that which is positive.
|
||||||
- [`awesome`][awesome]: A LaTeX theme based on Awesome-CV.
|
- [`awesome`][awesome]: A LaTeX theme based on Awesome-CV.
|
||||||
|
- [`modern-lancer`](modern-lancer): A theme based on modern with some tweaks for freelancers.
|
||||||
|
39
themes/modern-lancer/README.md
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
Theme: Modern-Lancer
|
||||||
|
===============
|
||||||
|
A contemporary technical résumé theme with tweaks for freelancers. Features colored progress bars
|
||||||
|
representing skill levels and Font Awesome icons for section headers.
|
||||||
|
Adds a picture and projects to the standard modern theme.
|
||||||
|
Also adds social info to contact data for Github/Bitbucket and the like, puts an image to the right,
|
||||||
|
renames the employment section to work, adds a section for languages and extracurricular.
|
||||||
|
|
||||||
|
![](modern.png)
|
||||||
|
|
||||||
|
## Use
|
||||||
|
|
||||||
|
Note: In order to display colored progress bars as in the below image, your resume should include a `level` annotation for each skill:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"name": "JavaScript",
|
||||||
|
"level": "master",
|
||||||
|
"skills": [
|
||||||
|
"Node.js", "Angular.js", "jQuery", "Bootstrap", "React.js", "Backbone.js"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Database",
|
||||||
|
"level": "intermediate",
|
||||||
|
"skills": [
|
||||||
|
"MySQL", "PostgreSQL", "NoSQL", "ORM", "Hibernate"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Valid values for `level` are `master`, `advanced`, `intermediate`, `beginner`,
|
||||||
|
or a number between 1 and 10.
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
MIT. See [LICENSE.md][lic] for details.
|
||||||
|
|
||||||
|
[lic]: https://github.com/fluentdesk/fresh-themes/blob/master/LICENSE.md
|
BIN
themes/modern-lancer/anon.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
themes/modern-lancer/modern.png
Normal file
After Width: | Height: | Size: 52 KiB |
BIN
themes/modern-lancer/src/_img/fa-building.png
Normal file
After Width: | Height: | Size: 761 B |
BIN
themes/modern-lancer/src/_img/fa-child.png
Normal file
After Width: | Height: | Size: 489 B |
BIN
themes/modern-lancer/src/_img/fa-code.png
Normal file
After Width: | Height: | Size: 640 B |
BIN
themes/modern-lancer/src/_img/fa-mortar-board.png
Normal file
After Width: | Height: | Size: 845 B |
BIN
themes/modern-lancer/src/_img/fa-pencil.png
Normal file
After Width: | Height: | Size: 512 B |
BIN
themes/modern-lancer/src/_img/fa-person.png
Normal file
After Width: | Height: | Size: 594 B |
BIN
themes/modern-lancer/src/_img/fa-trophy.png
Normal file
After Width: | Height: | Size: 706 B |
525
themes/modern-lancer/src/modern-doc.xml
Normal file
@ -0,0 +1,525 @@
|
|||||||
|
{{! <!--
|
||||||
|
|
||||||
|
Welcome to the annotated DOC template of the MODERN theme. This is the
|
||||||
|
template used to generate the output DOC (MS Word) format of your resume when
|
||||||
|
you choose the "modern" theme in HackMyResume or FluentCV.
|
||||||
|
|
||||||
|
These comments will be stripped when the resume is generated.
|
||||||
|
|
||||||
|
FRESH themes are just plain text documents with a bit of template magic
|
||||||
|
built in via Handlebars or Underscore (in this case, Handlebars). Here we're
|
||||||
|
buildng a DOC version of the theme, so we'll create an otherwise normal .DOC
|
||||||
|
document in Word XML 2003 format with WordProcessingML (an XML dialect), then
|
||||||
|
inject data into it using special tags. Where does the data come from? From
|
||||||
|
our FRESH or JSON Resume-format resume, represented in this template through
|
||||||
|
the "r" and "RAW" objects.
|
||||||
|
|
||||||
|
r.some-propery
|
||||||
|
r.some-method
|
||||||
|
RAW.some-other-propery
|
||||||
|
|
||||||
|
So let's begin with a standard <xml> tag and WordProcessingML prelude.
|
||||||
|
|
||||||
|
--> }}
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<?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"/>
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
|
||||||
|
An MS Word document consists of a series of optional and required sections
|
||||||
|
for things like document properties, font information, and document styles.
|
||||||
|
FRESH provides predefined partials for all of these that you can use, or
|
||||||
|
you can always create your own custom markup. Here, we'll go ahead and pull
|
||||||
|
in predefined versions for these Word 2003 XML sections:
|
||||||
|
|
||||||
|
<o:DocumentProperties>
|
||||||
|
<w:fonts>
|
||||||
|
<w:lists>
|
||||||
|
|
||||||
|
To do that, we'll use the Handlebars partial syntax and pull in the
|
||||||
|
sections one after the other.
|
||||||
|
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
{{> doc-properties }}
|
||||||
|
{{> doc-fonts }}
|
||||||
|
{{> doc-lists }}
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
|
||||||
|
The <styles> section contains named style definitions for the Word document.
|
||||||
|
Here we can adjust fonts, paragraph settings, and make other stylistic
|
||||||
|
changes specific to the Word format of this resume. There's also a prebuilt
|
||||||
|
section partial we could use here (section/doc-styles) but that would make
|
||||||
|
it difficult to edit invidual styles.
|
||||||
|
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
<w:styles>
|
||||||
|
<w:style w:type="paragraph" w:default="on" w:styleId="Normal">
|
||||||
|
<w:name w:val="Normal"/>
|
||||||
|
<w:rsid w:val="002743C8"/>
|
||||||
|
<w:rPr>
|
||||||
|
<w:rFonts w:ascii="{{{fontFace 'default' 'Calibri'}}}" w:h-ansi="{{{fontFace 'default' 'Calibri'}}}"/>
|
||||||
|
<wx:font wx:val="{{{fontFace 'default' 'Calibri'}}}"/>
|
||||||
|
<w:sz-cs w:val="24"/>
|
||||||
|
<w:lang w:val="EN-US" w:fareast="EN-US" w:bidi="AR-SA"/>
|
||||||
|
</w:rPr>
|
||||||
|
<w:pPr>
|
||||||
|
<w:jc w:val="both"/>
|
||||||
|
</w:pPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="paragraph" w:styleId="Heading1">
|
||||||
|
<w:name w:val="heading 1"/>
|
||||||
|
<wx:uiName wx:val="Heading 1"/>
|
||||||
|
<w:basedOn w:val="Normal"/>
|
||||||
|
<w:link w:val="Heading1Char"/>
|
||||||
|
<w:rsid w:val="00505903"/>
|
||||||
|
<w:pPr>
|
||||||
|
<w:spacing w:before="100" w:before-autospacing="on"/>
|
||||||
|
<w:outlineLvl w:val="0"/>
|
||||||
|
<w:pBdr>
|
||||||
|
<w:top w:val="single" w:sz="6" w:space="1" w:color="#EEEEEE" />
|
||||||
|
</w:pBdr>
|
||||||
|
</w:pPr>
|
||||||
|
<w:rPr>
|
||||||
|
<wx:font wx:val="{{{fontFace 'heading1' 'Calibri'}}}"/>
|
||||||
|
<w:rFonts w:ascii="{{{fontFace 'heading1' 'Calibri'}}}" w:h-ansi="{{{fontFace 'heading1' 'Calibri'}}}"/>
|
||||||
|
<w:color w:val="AEAAAA"/>
|
||||||
|
<w:kern w:val="36"/>
|
||||||
|
<w:sz w:val="40"/>
|
||||||
|
<w:sz-cs w:val="40"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="paragraph" w:styleId="Heading2">
|
||||||
|
<w:name w:val="heading 2"/>
|
||||||
|
<wx:uiName wx:val="Heading 2"/>
|
||||||
|
<w:basedOn w:val="Normal"/>
|
||||||
|
<w:link w:val="Heading2Char"/>
|
||||||
|
<w:rsid w:val="00505903"/>
|
||||||
|
<w:pPr>
|
||||||
|
<w:spacing w:before="600"/>
|
||||||
|
<w:outlineLvl w:val="1"/>
|
||||||
|
</w:pPr>
|
||||||
|
<w:rPr>
|
||||||
|
<w:color w:val="595959"/>
|
||||||
|
<wx:font wx:val="{{{fontFace 'heading2' 'Calibri'}}}"/>
|
||||||
|
<w:rFonts w:ascii="{{{fontFace 'heading2' 'Calibri'}}}" w:h-ansi="{{{fontFace 'heading2' 'Calibri'}}}"/>
|
||||||
|
<w:b/>
|
||||||
|
<w:b-cs/>
|
||||||
|
<!-- <w:caps/> -->
|
||||||
|
<w:sz-cs w:val="28"/>
|
||||||
|
<w:sz w:val="28"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="paragraph" w:styleId="Heading3">
|
||||||
|
<w:name w:val="heading 3"/>
|
||||||
|
<wx:uiName wx:val="Heading 3"/>
|
||||||
|
<w:basedOn w:val="Normal"/>
|
||||||
|
<w:link w:val="Heading3Char"/>
|
||||||
|
<w:rsid w:val="001B7422"/>
|
||||||
|
<w:pPr>
|
||||||
|
<w:spacing w:before="240" w:after="100" w:after-autospacing="on"/>
|
||||||
|
<w:outlineLvl w:val="2"/>
|
||||||
|
</w:pPr>
|
||||||
|
<w:rPr>
|
||||||
|
<wx:font wx:val="Calibri"/>
|
||||||
|
<w:b/>
|
||||||
|
<w:b-cs/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="character" w:styleId="FromTo">
|
||||||
|
<w:name w:val="FromTo"/>
|
||||||
|
<w:rsid w:val="004E2103"/>
|
||||||
|
<w:rPr>
|
||||||
|
<w:rFonts w:ascii="Calibri" w:h-ansi="Calibri"/>
|
||||||
|
<w:b w:val="off"/>
|
||||||
|
<w:b-cs/>
|
||||||
|
<w:color w:val="AEAAAA"/>
|
||||||
|
<w:sz w:val="28"/>
|
||||||
|
<w:sz-cs w:val="28"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="character" w:default="on" w:styleId="DefaultParagraphFont">
|
||||||
|
<w:name w:val="Default Paragraph Font"/>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="table" w:default="on" w:styleId="TableNormal">
|
||||||
|
<w:name w:val="Normal Table"/>
|
||||||
|
<wx:uiName wx:val="Table Normal"/>
|
||||||
|
<w:rPr>
|
||||||
|
<wx:font wx:val="Times New Roman"/>
|
||||||
|
<w:lang w:val="EN-US" w:fareast="EN-US" w:bidi="AR-SA"/>
|
||||||
|
</w:rPr>
|
||||||
|
<w:tblPr>
|
||||||
|
<w:tblInd w:w="0" w:type="dxa"/>
|
||||||
|
<w:tblCellMar>
|
||||||
|
<w:top w:w="0" w:type="dxa"/>
|
||||||
|
<w:left w:w="108" w:type="dxa"/>
|
||||||
|
<w:bottom w:w="0" w:type="dxa"/>
|
||||||
|
<w:right w:w="108" w:type="dxa"/>
|
||||||
|
</w:tblCellMar>
|
||||||
|
</w:tblPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="list" w:default="on" w:styleId="NoList">
|
||||||
|
<w:name w:val="No List"/>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="character" w:styleId="Hyperlink">
|
||||||
|
<w:name w:val="Hyperlink"/>
|
||||||
|
<w:rsid w:val="001B7422"/>
|
||||||
|
<w:rPr>
|
||||||
|
<w:strike w:val="off"/>
|
||||||
|
<w:dstrike w:val="off"/>
|
||||||
|
<w:color w:val="2F5496"/>
|
||||||
|
<w:u w:val="none"/>
|
||||||
|
<w:effect w:val="none"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="character" w:styleId="FollowedHyperlink">
|
||||||
|
<w:name w:val="FollowedHyperlink"/>
|
||||||
|
<w:rsid w:val="001B7422"/>
|
||||||
|
<w:rPr>
|
||||||
|
<w:strike w:val="off"/>
|
||||||
|
<w:dstrike w:val="off"/>
|
||||||
|
<w:color w:val="7B0796"/>
|
||||||
|
<w:u w:val="none"/>
|
||||||
|
<w:effect w:val="none"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="character" w:styleId="Heading2Char">
|
||||||
|
<w:name w:val="Heading 2 Char"/>
|
||||||
|
<w:link w:val="Heading2"/>
|
||||||
|
<w:rsid w:val="00505903"/>
|
||||||
|
<w:rPr>
|
||||||
|
<wx:font wx:val="{{{fontFace 'heading2' 'Calibri'}}}"/>
|
||||||
|
<w:rFonts w:ascii="{{{fontFace 'heading2' 'Calibri'}}}" w:h-ansi="{{{fontFace 'heading2' 'Calibri'}}}"/>
|
||||||
|
<w:b/>
|
||||||
|
<w:b-cs/>
|
||||||
|
<!-- <w:caps/> -->
|
||||||
|
<w:sz-cs w:val="28"/>
|
||||||
|
<w:sz w:val="28"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="character" w:styleId="Heading3Char">
|
||||||
|
<w:name w:val="Heading 3 Char"/>
|
||||||
|
<w:link w:val="Heading3"/>
|
||||||
|
<w:rsid w:val="001B7422"/>
|
||||||
|
<w:rPr>
|
||||||
|
<w:rFonts w:ascii="{{{fontFace 'heading3' 'Calibri'}}}" w:h-ansi="{{{fontFace 'heading3' 'Calibri'}}}"/>
|
||||||
|
<w:color w:val="1F4D78"/>
|
||||||
|
<w:sz w:val="28"/>
|
||||||
|
<w:sz-cs w:val="28"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="paragraph" w:styleId="NormalWeb">
|
||||||
|
<w:name w:val="Normal (Web)"/>
|
||||||
|
<w:basedOn w:val="Normal"/>
|
||||||
|
<w:rsid w:val="001B7422"/>
|
||||||
|
<w:pPr>
|
||||||
|
<w:spacing w:before="100" w:before-autospacing="on" w:after="100" w:after-autospacing="on"/>
|
||||||
|
<w:jc w:val="both"/>
|
||||||
|
</w:pPr>
|
||||||
|
<w:rPr>
|
||||||
|
<wx:font wx:val="Calibri"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="character" w:styleId="Heading1Char">
|
||||||
|
<w:name w:val="Heading 1 Char"/>
|
||||||
|
<w:link w:val="Heading1"/>
|
||||||
|
<w:rsid w:val="00505903"/>
|
||||||
|
<w:rPr>
|
||||||
|
<wx:font wx:val="{{{fontFace 'heading1' 'Calibri'}}}"/>
|
||||||
|
<w:rFonts w:ascii="{{{fontFace 'heading1' 'Calibri'}}}" w:h-ansi="{{{fontFace 'heading1' 'Calibri'}}}"/>
|
||||||
|
<w:color w:val="AEAAAA"/>
|
||||||
|
<w:kern w:val="36"/>
|
||||||
|
<w:sz w:val="40"/>
|
||||||
|
<w:sz-cs w:val="40"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="character" w:styleId="Strong">
|
||||||
|
<w:name w:val="Strong"/>
|
||||||
|
<w:rsid w:val="001B7422"/>
|
||||||
|
<w:rPr>
|
||||||
|
<w:b/>
|
||||||
|
<w:b-cs/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="character" w:styleId="Emphasis">
|
||||||
|
<w:name w:val="Emphasis"/>
|
||||||
|
<w:rsid w:val="001B7422"/>
|
||||||
|
<w:rPr>
|
||||||
|
<w:i/>
|
||||||
|
<w:i-cs/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="character" w:styleId="tenure">
|
||||||
|
<w:name w:val="tenure"/>
|
||||||
|
<w:basedOn w:val="DefaultParagraphFont"/>
|
||||||
|
<w:rsid w:val="001B7422"/>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="paragraph" w:styleId="Title">
|
||||||
|
<w:name w:val="Title"/>
|
||||||
|
<w:basedOn w:val="Normal"/>
|
||||||
|
<w:next w:val="Normal"/>
|
||||||
|
<w:link w:val="TitleChar"/>
|
||||||
|
<w:rsid w:val="002D3B7B"/>
|
||||||
|
<w:pPr>
|
||||||
|
<w:contextualSpacing/>
|
||||||
|
</w:pPr>
|
||||||
|
<w:rPr>
|
||||||
|
<w:rFonts w:ascii="Segoe UI" w:h-ansi="Segoe UI"/>
|
||||||
|
<wx:font wx:val="Segoe UI"/>
|
||||||
|
<w:b/>
|
||||||
|
<w:spacing w:val="-10"/>
|
||||||
|
<w:kern w:val="28"/>
|
||||||
|
<w:sz w:val="48"/>
|
||||||
|
<w:sz-cs w:val="56"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="character" w:styleId="TitleChar">
|
||||||
|
<w:name w:val="Title Char"/>
|
||||||
|
<w:link w:val="Title"/>
|
||||||
|
<w:rsid w:val="002D3B7B"/>
|
||||||
|
<w:rPr>
|
||||||
|
<w:rFonts w:ascii="Segoe UI" w:h-ansi="Segoe UI"/>
|
||||||
|
<w:spacing w:val="-10"/>
|
||||||
|
<w:kern w:val="28"/>
|
||||||
|
<w:sz w:val="48"/>
|
||||||
|
<w:sz-cs w:val="56"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="paragraph" w:styleId="ListParagraph">
|
||||||
|
<w:name w:val="List Paragraph"/>
|
||||||
|
<w:basedOn w:val="Normal"/>
|
||||||
|
<w:rsid w:val="00C146CA"/>
|
||||||
|
<w:pPr>
|
||||||
|
<w:ind w:left="720"/>
|
||||||
|
<w:contextualSpacing/>
|
||||||
|
</w:pPr>
|
||||||
|
<w:rPr>
|
||||||
|
<wx:font wx:val="Calibri"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="paragraph" w:styleId="Summary">
|
||||||
|
<w:name w:val="Summary"/>
|
||||||
|
<w:basedOn w:val="Normal"/>
|
||||||
|
<w:link w:val="SummaryChar"/>
|
||||||
|
<w:rsid w:val="00A210E1"/>
|
||||||
|
<w:pPr>
|
||||||
|
<w:spacing w:before="120"/>
|
||||||
|
</w:pPr>
|
||||||
|
<w:rPr>
|
||||||
|
<wx:font wx:val="Calibri"/>
|
||||||
|
<w:color w:val="767171"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
<w:style w:type="character" w:styleId="SummaryChar">
|
||||||
|
<w:name w:val="Summary Char"/>
|
||||||
|
<w:link w:val="Summary"/>
|
||||||
|
<w:rsid w:val="00A210E1"/>
|
||||||
|
<w:rPr>
|
||||||
|
<w:rFonts w:ascii="Calibri" w:h-ansi="Calibri"/>
|
||||||
|
<w:sz-cs w:val="24"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:style>
|
||||||
|
</w:styles>
|
||||||
|
|
||||||
|
{{> doc-pr }}
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
|
||||||
|
That bring us to the <w:body> element, where the meat of the Word document
|
||||||
|
is stored.
|
||||||
|
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
<w:body>
|
||||||
|
<wx:sect>
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
Let's create a paragraph containing the user's name. This is the Word
|
||||||
|
concept of a paragraph, not quite the same as a normal paragraph, but
|
||||||
|
close enough. We'll use <w:p> and adorn with a <w:pPr> (paragraph
|
||||||
|
properties) that sets the style of this paragraph to "Title". We don't
|
||||||
|
have to do it this way -- we can insert arbitrary styled content here
|
||||||
|
-- but in practice this is how many Word docs are set up.
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
<w:p wsp:rsidR="00C146CA" wsp:rsidRPr="00C146CA" wsp:rsidRDefault="007D096C" wsp:rsidP="00C146CA">
|
||||||
|
<w:pPr>
|
||||||
|
<w:pStyle w:val="Title"/>
|
||||||
|
</w:pPr>
|
||||||
|
<w:r>
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
Emit the candidate's name into the paragraph, accessible as the
|
||||||
|
.name property on "r", which is the FRESH or JSON Resume resume
|
||||||
|
object. Now, we're creating XML content here, which means that we
|
||||||
|
potentially need to XML-encode the raw text values from the JSON
|
||||||
|
resume model. Luckily, this has already been done for us. Every
|
||||||
|
string property on "r" is already XML-encoded (for Word formats).
|
||||||
|
So we'll use Handlebars triple-bracket syntax to make sure the
|
||||||
|
value isn't further encoded.
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
<w:t>{{{ r.name }}}</w:t>
|
||||||
|
</w:r>
|
||||||
|
</w:p>
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
Let's create another paragraph, using the <w:p> element. The paragraph
|
||||||
|
will contain the candidate's contact info. We'll wrap the whole thing
|
||||||
|
with an #if so that none of the content gets emitted if the resume
|
||||||
|
doesnt have a contact info section (some don't).
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
{{#if r.contact }}
|
||||||
|
<w:p wsp:rsidR="00C146CA" wsp:rsidRDefault="00505903" wsp:rsidP="00C146CA">
|
||||||
|
<w:pPr>
|
||||||
|
<w:rPr>
|
||||||
|
<w:sz-cs w:val="20"/>
|
||||||
|
</w:rPr>
|
||||||
|
</w:pPr>
|
||||||
|
<w:hlink w:dest="mailto:{{{ r.contact.email }}}">
|
||||||
|
<w:r wsp:rsidRPr="003876BF">
|
||||||
|
<w:rPr>
|
||||||
|
<w:rStyle w:val="Hyperlink"/>
|
||||||
|
<w:sz w:val="16"/>
|
||||||
|
</w:rPr>
|
||||||
|
<w:t>{{{ r.contact.email }}}<w:br/></w:t>
|
||||||
|
</w:r>
|
||||||
|
</w:hlink>
|
||||||
|
<w:r wsp:rsidR="00C146CA" wsp:rsidRPr="000A3AF0">
|
||||||
|
<w:rPr>
|
||||||
|
<w:sz w:val="16"/>
|
||||||
|
</w:rPr>
|
||||||
|
<w:t>{{{ r.contact.phone }}}<w:br/></w:t>
|
||||||
|
</w:r>
|
||||||
|
<w:hlink w:dest="{{{ r.contact.website }}}">
|
||||||
|
<w:r wsp:rsidRPr="003876BF">
|
||||||
|
<w:rPr>
|
||||||
|
<w:rStyle w:val="Hyperlink"/>
|
||||||
|
<w:sz w:val="16"/>
|
||||||
|
</w:rPr>
|
||||||
|
<w:t>{{{ r.contact.website }}}</w:t>
|
||||||
|
</w:r>
|
||||||
|
</w:hlink>
|
||||||
|
</w:p>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
|
||||||
|
We could continue creating custom XML / WordProcessingML content as above,
|
||||||
|
but instead, let's use some predefined "section partials" for the rest
|
||||||
|
of the resume. A section partial is a fragment of markup (XML, in this
|
||||||
|
case) representing a single section of a resume. FRESH provides pre-
|
||||||
|
defined section partials for all resume sections that you can use and
|
||||||
|
override at will.
|
||||||
|
|
||||||
|
First let's create the candidate's INFO or SUMMARY section using the
|
||||||
|
"info" partial. "info" is a theme-specific partial owned by the modern
|
||||||
|
theme.
|
||||||
|
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
{{#section "info"}}{{> info }}{{/section}}
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
|
||||||
|
Now let's create the candidate's SKILLS section. The Modern theme uses
|
||||||
|
a skills section with colored skill bars representing the candidate's
|
||||||
|
proficiency with each skill. That's fairly complex to do in Word, and
|
||||||
|
specific to the Modern theme, so we've placed it in the "skills" partial.
|
||||||
|
Like the "info" partial, the "skills" partial is defined by the Modern
|
||||||
|
theme.
|
||||||
|
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
{{#section "skills"}}{{> skills }}{{/section}}
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
|
||||||
|
...and we're done with major customizations for this theme. For the rest
|
||||||
|
of the resume, we'll used predefined SECTION PARTIALS provided by FRESH.
|
||||||
|
The only customization we'll make is overriding the header icon of each
|
||||||
|
partial to use our special embedded FontAwesome image.
|
||||||
|
|
||||||
|
We'll start with the EMPLOYMENT section.
|
||||||
|
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
|
||||||
|
{{!<!-- Create an INLINE PARTIAL called "header-employment". This does
|
||||||
|
not itself render any content. Like any other partial, this one has to
|
||||||
|
be invoked from somewhere in order to actually be rendered. -->}}
|
||||||
|
|
||||||
|
{{#*inline "header-employment"}}
|
||||||
|
|
||||||
|
{{!<!-- Set the content of the partial. We could embed XML directly
|
||||||
|
here, but instead we'll reference the "header-icon" partial provided
|
||||||
|
by FRESH, passing in _title, _section, and _icon values so the the
|
||||||
|
"header-icon" partial knows how to render. -->}}
|
||||||
|
|
||||||
|
{{> header-icon _title="EMPLOYMENT" _section="employment" _icon="pict/emp" }}
|
||||||
|
|
||||||
|
{{!<!-- End the partial -->}}
|
||||||
|
{{/inline}}
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
Do the same for each of the other sections. Again, we're just declaring
|
||||||
|
inline partials (templates) here. We're not actually rendering these
|
||||||
|
partials yet.
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
{{#*inline "header-projects"}}{{> header-icon _title="PROJECTS" _section="projects" _icon="pict/star" }}{{/inline}}
|
||||||
|
{{#*inline "header-governance"}}{{> header-icon _title="GOVERNANCE" _section="governance" _icon="pict/justice-scales" }}{{/inline}}
|
||||||
|
{{#*inline "header-education"}}{{> header-icon _title="EDUCATION" _section="education" _icon="pict/edu" }}{{/inline}}
|
||||||
|
{{#*inline "header-service"}}{{> header-icon _title="SERVICE" _section="service" _icon="pict/srv" }}{{/inline}}
|
||||||
|
{{#*inline "header-affiliation"}}{{> header-icon _title="AFFILIATION" _section="affiliation" _icon="pict/share-alt" }}{{/inline}}
|
||||||
|
{{#*inline "header-writing"}}{{> header-icon _title="WRITING" _section="writing" _icon="pict/wri" }}{{/inline}}
|
||||||
|
{{#*inline "header-reading"}}{{> header-icon _title="READING" _section="reading" _icon="pict/book" }}{{/inline}}
|
||||||
|
{{#*inline "header-recognition"}}{{> header-icon _title="RECOGNITION" _section="recognition" _icon="pict/rec" }}{{/inline}}
|
||||||
|
{{#*inline "header-speaking"}}{{> header-icon _title="SPEAKING" _section="speaking" _icon="pict/group" }}{{/inline}}
|
||||||
|
{{#*inline "header-references"}}{{> header-icon _title="REFERENCES" _section="references" _icon="pict/thumbs-up" }}{{/inline}}
|
||||||
|
{{#*inline "header-interests"}}{{> header-icon _title="INTERESTS" _section="interests" _icon="pict/bicycle" }}{{/inline}}
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
|
||||||
|
Now, render each of the remaining sections of the resume in turn. We
|
||||||
|
could emit custom markup for these, but instead we'll take advantage
|
||||||
|
of the predefined "section partials" provided by FRESH, which have
|
||||||
|
names like "section/employment", "section/projects", etc. We'll wrap
|
||||||
|
each section in the special "#section" helper provided by the runtime
|
||||||
|
environment (HackMyResume or FluentCV) in order to allow sections to
|
||||||
|
be selectived hidden or ignored based on users preferences or when the
|
||||||
|
section isn't present or is present but has no items.
|
||||||
|
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
{{#section "employment"}}{{> section/employment }}{{/section}}
|
||||||
|
{{#section "projects"}}{{> section/projects }}{{/section}}
|
||||||
|
{{#section "governance"}}{{> section/governance }}{{/section}}
|
||||||
|
{{#section "education"}}{{> section/education }}{{/section}}
|
||||||
|
{{#section "service"}}{{> section/service }}{{/section}}
|
||||||
|
{{#section "affiliation"}}{{> section/affiliation }}{{/section}}
|
||||||
|
{{#section "writing"}}{{> section/writing }}{{/section}}
|
||||||
|
{{#section "writing"}}{{> section/reading }}{{/section}}
|
||||||
|
{{#section "recognition"}}{{> section/recognition }}{{/section}}
|
||||||
|
{{#section "speaking"}}{{> section/speaking }}{{/section}}
|
||||||
|
{{#section "interests"}}{{> section/interests }}{{/section}}
|
||||||
|
{{#section "references"}}{{> section/references }}{{/section}}
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
And we're done! Close off the word document and go home.
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
<w:sectPr wsp:rsidR="00B43FDC" wsp:rsidRPr="000A3AF0" wsp:rsidSect="001B7422">
|
||||||
|
<w:pgSz w:w="12240" w:h="15840"/>
|
||||||
|
<w:pgMar w:top="1440" w:right="1440" w:bottom="1440" w:left="1440" w:header="720" w:footer="720" w:gutter="0"/>
|
||||||
|
<w:cols w:space="720"/>
|
||||||
|
<w:docGrid w:line-pitch="360"/>
|
||||||
|
</w:sectPr>
|
||||||
|
</wx:sect>
|
||||||
|
</w:body>
|
||||||
|
</w:wordDocument>
|
244
themes/modern-lancer/src/modern-html.css
Normal file
@ -0,0 +1,244 @@
|
|||||||
|
{{!
|
||||||
|
|
||||||
|
Templatized CSS file for the Modern theme. Expanded by Handlebars during
|
||||||
|
resume generation.
|
||||||
|
|
||||||
|
}}
|
||||||
|
|
||||||
|
* {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
main {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-family: {{{fontList 'default'}}};
|
||||||
|
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: 3em;
|
||||||
|
/*padding-bottom: 10em;*/
|
||||||
|
height: 250px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#container #picture {
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#container > header span.fa {
|
||||||
|
position: relative;
|
||||||
|
/*color: green;*/
|
||||||
|
font-size: inherit;
|
||||||
|
left: 0px;
|
||||||
|
top: -2px;
|
||||||
|
/*top: 4px;*/
|
||||||
|
/*left: -50px;*/
|
||||||
|
/*font-size: 30px;*/
|
||||||
|
/*color: #BFC1C3;*/
|
||||||
|
}
|
||||||
|
|
||||||
|
.left {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.right {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
#summary {
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
body.pdf #container > header {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#main > #container > section {
|
||||||
|
margin-left: 3em;
|
||||||
|
position: relative;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
span.fa
|
||||||
|
{
|
||||||
|
position: absolute;
|
||||||
|
top: 4px;
|
||||||
|
/*left: -50px;*/
|
||||||
|
left: -1.5em;
|
||||||
|
font-size: 30px;
|
||||||
|
color: #BFC1C3;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr {
|
||||||
|
margin-top: 20px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
border: 0;
|
||||||
|
border-top: 1px solid #EEE;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tenure, .keywords {
|
||||||
|
font-size: 75%;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
margin: 0;
|
||||||
|
font-size: 46px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
font-size: 24px;
|
||||||
|
color: #BFC1C3;
|
||||||
|
text-transform: uppercase;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
|
||||||
|
input:focus {outline: none; }
|
218
themes/modern-lancer/src/modern-html.html
Normal file
@ -0,0 +1,218 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>{{ RAW.name }}</title>
|
||||||
|
|
||||||
|
{{!<!-- TODO: Optimize Google Fonts and Font Awesome access. -->}}
|
||||||
|
<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.5.0/css/font-awesome.min.css">
|
||||||
|
{{{styleSheet "modern-html.css"}}}
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<main id="main"> {{!<!-- Use your container markup of choice here -->}}
|
||||||
|
<div id="container">
|
||||||
|
<header>
|
||||||
|
|
||||||
|
<div class="left">
|
||||||
|
<h1>{{{ r.name }}}</h1>
|
||||||
|
|
||||||
|
<div id="contact">
|
||||||
|
{{#if r.contact.email}}<div><span class="fa fa-lg fa-envelope"></span> <a href="mailto:{{{ RAW.contact.email }}}">{{ RAW.contact.email }}</a></div>{{/if}}
|
||||||
|
{{#if r.contact.website}}<div><span class="fa fa-lg fa-firefox"></span> <a href="{{{ RAW.contact.website }}}">{{ RAW.contact.website }}</a></div>{{/if}}
|
||||||
|
{{#if r.contact.phone}}<div><span class="fa fa-lg fa-phone"></span> {{ RAW.contact.phone }}</div>{{/if}}
|
||||||
|
{{#if r.contact.skype}}<div><span class="fa fa-lg fa-skype"></span> {{ RAW.contact.skype }}</div>{{/if}}
|
||||||
|
{{#each r.social}}
|
||||||
|
<div class="social">
|
||||||
|
<span class="fa fa-lg fa-{{toLower label}}"></span> <a href="{{url}}">{{url}}</a>
|
||||||
|
</div>
|
||||||
|
{{/each}}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{{#if r.info.image}}<div id="picture" class="right"><img class="profile-pic media-object img-circle center-block" height="128" width="128" itemprop="image" alt="128x128" src="{{{ r.info.image }}}"></div>{{/if}}
|
||||||
|
</header>
|
||||||
|
|
||||||
|
|
||||||
|
{{#*inline "icon-info"}}<span class="fa fa-lg fa-info"></span>{{/inline}}
|
||||||
|
{{> section/info _icon="icon-info" }}
|
||||||
|
|
||||||
|
{{#section 'skills' }}
|
||||||
|
<hr>
|
||||||
|
<section id="skills">
|
||||||
|
<header>
|
||||||
|
<h2>{{{sectionTitle "Skills"}}}</h2>
|
||||||
|
</header>
|
||||||
|
<span class="fa fa-lg fa-code"></span>
|
||||||
|
<ul class="list-unstyled">
|
||||||
|
{{#each r.skills.sets}}
|
||||||
|
<li class="card card-nested card-skills">
|
||||||
|
<div class="skill-level" rel="tooltip" title="{{ level }}" data-placement="left">
|
||||||
|
<div class="skill-progress {{toLower level }}"></div>
|
||||||
|
</div>
|
||||||
|
<div class="skill-info">
|
||||||
|
<strong>{{ name }}</strong>
|
||||||
|
<div class="space-top labels">
|
||||||
|
{{#if skills}}
|
||||||
|
{{#each skills}}
|
||||||
|
<span class="label label-keyword">{{ this }}</span>
|
||||||
|
{{/each}}
|
||||||
|
{{/if}}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
{{/each}}
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
{{/section}}
|
||||||
|
|
||||||
|
|
||||||
|
{{#*inline "body-projects" }}
|
||||||
|
<div>
|
||||||
|
<h3>{{#if role}}<em>{{camelCase role }}</em>,{{/if}}
|
||||||
|
{{#if url}}
|
||||||
|
<a href="{{{ url }}}">{{ title }}</a>
|
||||||
|
{{else}}
|
||||||
|
{{ title }}
|
||||||
|
{{/if}}
|
||||||
|
</h3>
|
||||||
|
{{#if start}}<span class="tenure">{{dateRange .}}</span>{{/if}}
|
||||||
|
{{#if keywords}}
|
||||||
|
{{#if start}}| {{/if}}<span class="keywords">{{#each keywords}}{{{ . }}} {{/each}}</span>
|
||||||
|
{{/if}}
|
||||||
|
{{{ summary }}}
|
||||||
|
{{> highlights }}
|
||||||
|
</div>
|
||||||
|
{{/inline}}
|
||||||
|
|
||||||
|
{{#*inline "icon-projects"}}<span class="fa fa-lg fa-star"></span>{{/inline}}
|
||||||
|
|
||||||
|
{{> section/projects _icon="icon-projects"}}
|
||||||
|
|
||||||
|
|
||||||
|
{{#*inline "icon-employment"}}<span class="fa fa-lg fa-building"></span>{{/inline}}
|
||||||
|
{{#*inline "header-employment" }}
|
||||||
|
{{> header-icon _title="WORK" _section="work" _hdricon=(lookup . '_icon') }}
|
||||||
|
{{/inline}}
|
||||||
|
{{#*inline "body-employment" }}
|
||||||
|
<div>
|
||||||
|
<h3><em>{{ position }}</em>,
|
||||||
|
{{#if url }}
|
||||||
|
<a href="{{{ url }}}">{{ employer }}</a>
|
||||||
|
{{else}}
|
||||||
|
{{ employer }}
|
||||||
|
{{/if}}
|
||||||
|
</h3>
|
||||||
|
<span class="tenure">{{dateRange .}}</span>
|
||||||
|
{{#if keywords}}
|
||||||
|
{{#if start}}| {{/if}}<span class="keywords">{{#each keywords}}{{{ . }}} {{/each}}</span>
|
||||||
|
{{/if}}
|
||||||
|
<p>{{{ summary }}}</p>
|
||||||
|
{{> highlights }}
|
||||||
|
</div>
|
||||||
|
{{/inline}}
|
||||||
|
{{> section/employment _icon="icon-employment"}}
|
||||||
|
|
||||||
|
|
||||||
|
{{#*inline "body-education" }}
|
||||||
|
<div>
|
||||||
|
<h3>{{#if title}}<em>{{ title }}</em>,{{/if}}
|
||||||
|
{{#if url}}
|
||||||
|
<a href="{{{ url }}}">{{ institution }}</a>
|
||||||
|
{{else}}
|
||||||
|
{{ institution }}
|
||||||
|
{{/if}}
|
||||||
|
</h3>
|
||||||
|
{{#if start}}<span class="tenure">{{dateRange .}}</span>{{/if}}
|
||||||
|
{{#if curriculum}}
|
||||||
|
{{#if start}}| {{/if}}<span class="keywords">{{#each curriculum}}{{{ . }}} {{/each}}</span>
|
||||||
|
{{/if}}
|
||||||
|
{{{ summary }}}
|
||||||
|
{{> highlights }}
|
||||||
|
</div>
|
||||||
|
{{/inline}}
|
||||||
|
|
||||||
|
{{#*inline "icon-education"}}<span class="fa fa-lg fa-mortar-board"></span>{{/inline}}
|
||||||
|
|
||||||
|
{{> section/education _icon="icon-education"}}
|
||||||
|
|
||||||
|
|
||||||
|
{{#if r.languages}}
|
||||||
|
<hr>
|
||||||
|
<section id="languages">
|
||||||
|
<header><span class="fa fa-lg fa-language"></span> <h2>Languages</h2></header>
|
||||||
|
{{#each r.languages}}
|
||||||
|
<div class="language">
|
||||||
|
<h3><em>{{language}}</em></h3> ({{level}})
|
||||||
|
</div>
|
||||||
|
{{/each}}
|
||||||
|
</section>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
|
|
||||||
|
{{#*inline "body-governance" }}
|
||||||
|
<div>
|
||||||
|
<h3>{{#if role}}<em>{{{ role }}}</em>,{{/if}}
|
||||||
|
{{#if url}}
|
||||||
|
<a href="{{{ url }}}">{{{ organization }}}</a>
|
||||||
|
{{else}}
|
||||||
|
{{{ organization }}}
|
||||||
|
{{/if}}
|
||||||
|
</h3>
|
||||||
|
{{#if start}}<span class="tenure">{{dateRange .}}</span>{{/if}}
|
||||||
|
{{#if keywords}}
|
||||||
|
{{#if start}}| {{/if}}<span class="keywords">{{#each keywords}}{{{ . }}} {{/each}}</span>
|
||||||
|
{{/if}}
|
||||||
|
{{{ summary }}}
|
||||||
|
{{> highlights }}
|
||||||
|
</div>
|
||||||
|
{{/inline}}
|
||||||
|
|
||||||
|
{{#*inline "icon-governance"}}<span class="fa fa-lg fa-balance-scale"></span>{{/inline}}
|
||||||
|
|
||||||
|
{{> section/governance _icon="icon-governance"}}
|
||||||
|
|
||||||
|
|
||||||
|
{{#*inline "icon-service"}}<span class="fa fa-lg fa-child"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-affiliation"}}<span class="fa fa-lg fa-share-alt"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-samples"}}<span class="fa fa-lg fa-share"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-writing"}}<span class="fa fa-lg fa-pencil"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-reading"}}<span class="fa fa-lg fa-book"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-recognition"}}<span class="fa fa-lg fa-trophy"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-speaking"}}<span class="fa fa-lg fa-users"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-testimonials"}}<span class="fa fa-lg fa-quote-left"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-references"}}<span class="fa fa-lg fa-thumbs-o-up"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-interests"}}<span class="fa fa-lg fa-bicycle"></span>{{/inline}}
|
||||||
|
|
||||||
|
{{> section/service _icon="icon-service"}}
|
||||||
|
{{> section/affiliation _icon="icon-affiliation"}}
|
||||||
|
{{> section/samples _icon="icon-samples"}}
|
||||||
|
{{> section/writing _icon="icon-writing"}}
|
||||||
|
{{> section/reading _icon="icon-reading"}}
|
||||||
|
{{> section/recognition _icon="icon-recognition"}}
|
||||||
|
{{> section/speaking _icon="icon-speaking"}}
|
||||||
|
{{> section/testimonials _icon="icon-testimonials"}}
|
||||||
|
{{> section/references _icon="icon-references"}}
|
||||||
|
{{> section/interests _icon="icon-interests"}}
|
||||||
|
|
||||||
|
|
||||||
|
{{#if r.extracurricular}}
|
||||||
|
<hr>
|
||||||
|
<section id="extracurricular">
|
||||||
|
<header><span class="fa fa-lg fa-random"></span> <h2>Extracurricular</h2></header>
|
||||||
|
{{#each r.extracurricular}}
|
||||||
|
<div class="extracurricular">
|
||||||
|
<h3><em>{{title}}</em></h3>
|
||||||
|
{{#if start}}<span class="tenure">{{dateRange .}}</span>{{/if}}
|
||||||
|
<br/><em>Activity: </em>{{activity}}
|
||||||
|
{{#if location}}<br/><em>Location: </em>{{{location}}}{{/if}}
|
||||||
|
{{#if highlights}}<br/><em>Details: </em> {{{highlights}}}{{/if}}
|
||||||
|
</div>
|
||||||
|
{{/each}}
|
||||||
|
</section>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</main>
|
||||||
|
</body>
|
||||||
|
</html>
|
231
themes/modern-lancer/src/modern-pdf.css
Normal file
@ -0,0 +1,231 @@
|
|||||||
|
* {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
main {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-family: {{{fontList 'default'}}};
|
||||||
|
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 {
|
||||||
|
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 > #main {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#container > header {
|
||||||
|
padding-top: 1.5em;
|
||||||
|
height: 230px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#container #picture {
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#container > header span.fa {
|
||||||
|
position: relative;
|
||||||
|
/*color: green;*/
|
||||||
|
font-size: inherit;
|
||||||
|
left: 0px;
|
||||||
|
top: -2px;
|
||||||
|
/*top: 4px;*/
|
||||||
|
/*left: -50px;*/
|
||||||
|
/*font-size: 30px;*/
|
||||||
|
/*color: #BFC1C3;*/
|
||||||
|
}
|
||||||
|
|
||||||
|
.left {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.right {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
#summary {
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.pdf #container > header {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#main > #container > section {
|
||||||
|
margin-left: 3em;
|
||||||
|
position: relative;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
span.fa
|
||||||
|
{
|
||||||
|
position: absolute;
|
||||||
|
top: 4px;
|
||||||
|
left: -1.5em;
|
||||||
|
font-size: 30px;
|
||||||
|
color: #BFC1C3;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr {
|
||||||
|
margin-top: 20px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
border: 0;
|
||||||
|
border-top: 1px solid #EEE;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tenure, .keywords {
|
||||||
|
font-size: 75%;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
margin: 0;
|
||||||
|
font-size: 46px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
font-size: 24px;
|
||||||
|
color: #BFC1C3;
|
||||||
|
text-transform: uppercase;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
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;
|
||||||
|
}
|
387
themes/modern-lancer/src/modern-pdf.html
Normal file
@ -0,0 +1,387 @@
|
|||||||
|
{{! <!--
|
||||||
|
|
||||||
|
Welcome to the annotated HTML template of the MODERN theme. This is the
|
||||||
|
template used to generate the output HTML format of your resume when you
|
||||||
|
choose the "modern" theme in HackMyResume or FluentCV.
|
||||||
|
|
||||||
|
These comments will be stripped when the resume is generated.
|
||||||
|
|
||||||
|
FRESH themes are just plain text documents with a bit of template magic
|
||||||
|
built in via Handlebars or Underscore (in this case, Handlebars). Here we're
|
||||||
|
buildng an HTML version of the theme, so we'll create an otherwise normal HTML
|
||||||
|
document, then inject data into it using special tags. Where does the data
|
||||||
|
come from? From our FRESH or JSON Resume-format resume, represented in this
|
||||||
|
template through the "r" and "RAW" objects.
|
||||||
|
|
||||||
|
r.some-propery
|
||||||
|
r.some-method
|
||||||
|
RAW.some-other-propery
|
||||||
|
|
||||||
|
So let's begin with a standard HTML 5 doctype and prelude.
|
||||||
|
|
||||||
|
--> }}
|
||||||
|
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
|
||||||
|
{{! <!--
|
||||||
|
Set the document <title> to the candidate's name. We use RAW.name here,
|
||||||
|
instead of r.name, because RAW gives us the text *as entered by the user*.
|
||||||
|
The double bracket notation automatically encodes this value. If we wanted
|
||||||
|
the unencoded raw value, we'd use triple brackets as in
|
||||||
|
((( RAW.name ))).
|
||||||
|
--> }}
|
||||||
|
<title>{{ RAW.name }}</title>
|
||||||
|
|
||||||
|
{{!<!-- TODO: Optimize Google Fonts and Font Awesome access. -->}}
|
||||||
|
<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.5.0/css/font-awesome.min.css">
|
||||||
|
|
||||||
|
{{! <!--
|
||||||
|
Link in the resume's stylesheet. We could use a <link> tag here as above,
|
||||||
|
or dump the styles into <style></style>, but there's a handy helper
|
||||||
|
available that allows us to do either, conditionally.
|
||||||
|
--> }}
|
||||||
|
|
||||||
|
{{{styleSheet "modern-pdf.css"}}}
|
||||||
|
|
||||||
|
{{! <!--
|
||||||
|
Now, depending on options, "modern-html.css" will either be embedded
|
||||||
|
via <style> stags, or linked via <link>. Users can control this via
|
||||||
|
(for example) the --css option in HackMyResume.
|
||||||
|
|
||||||
|
Why might you want to embed CSS into <style> tags when most CSS guides
|
||||||
|
instruct you to use <link>? Because embedded CSS creates a more hardened
|
||||||
|
"standalone" resume with fewer external dependencies. This may not matter
|
||||||
|
in a typical web scenario, but HTML resumes are also used to drive PDF
|
||||||
|
generation, not to mention emailed, viewed locally, etc.
|
||||||
|
|
||||||
|
TL;DR Use the "styleSheet" helper whenever possible.
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
So much for the <head> element. Now let's tackle the <body>.
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<main id="main"> {{!<!-- Use your container markup of choice here -->}}
|
||||||
|
<div id="container">
|
||||||
|
<header>
|
||||||
|
|
||||||
|
{{! <!--
|
||||||
|
Display the candidate's name using "r" (the FRESH or JSON Resume
|
||||||
|
object). Keep in mind that "r" contains the MARKDOWNIFIED version
|
||||||
|
of the text in the user's FRESH or JRS resume because FRESH resume
|
||||||
|
themes support Markdown natively. If you want the un-Markdownified
|
||||||
|
text, you'd use RAW instead.
|
||||||
|
--> }}
|
||||||
|
|
||||||
|
<div class="left">
|
||||||
|
<h1>{{{ r.name }}}</h1>
|
||||||
|
|
||||||
|
{{! <!--
|
||||||
|
Give some basic contact info. Here, the HAS helper is similar
|
||||||
|
to a normal IF, but provides a guaranteed-to-be-safe check against a
|
||||||
|
particular object path. That is, ((#if contact.email)) can error out
|
||||||
|
(throw an exception) if contact is null, depending on Handlebars
|
||||||
|
engine settings, but ((#has 'contact.email')) never will.
|
||||||
|
--> }}
|
||||||
|
<div id="contact">
|
||||||
|
{{#if r.contact.email}}<div><span class="fa fa-lg fa-envelope"></span> <a href="mailto:{{{ RAW.contact.email }}}">{{ RAW.contact.email }}</a></div>{{/if}}
|
||||||
|
{{#if r.contact.website}}<div><span class="fa fa-lg fa-firefox"></span> <a href="{{{ RAW.contact.website }}}">{{ RAW.contact.website }}</a></div>{{/if}}
|
||||||
|
{{#if r.contact.phone}}<div><span class="fa fa-lg fa-phone"></span> {{ RAW.contact.phone }}</div>{{/if}}
|
||||||
|
{{#if r.contact.skype}}<div><span class="fa fa-lg fa-skype"></span> {{ RAW.contact.skype }}</div>{{/if}}
|
||||||
|
{{#each r.social}}
|
||||||
|
<div class="social">
|
||||||
|
<span class="fa fa-lg fa-{{toLower label}}"></span> <a href="{{url}}">{{url}}</a>
|
||||||
|
</div>
|
||||||
|
{{/each}}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{{#if r.info.image}}<div id="picture" class="right"><img class="profile-pic media-object img-circle center-block" height="128" width="128" itemprop="image" alt="128x128" src="{{{ r.info.image }}}"></div>{{/if}}
|
||||||
|
</header>
|
||||||
|
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
Now let's emit the candidate's summary, overriding the icon.
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
{{#*inline "icon-info"}}<span class="fa fa-lg fa-info"></span>{{/inline}}
|
||||||
|
{{> section/info _icon="icon-info" }}
|
||||||
|
|
||||||
|
|
||||||
|
{{! <!--
|
||||||
|
Okay, let's create a custom SKILLS section with colored skill bars.
|
||||||
|
|
||||||
|
Since this is an official resume section, we want to wrap it in the
|
||||||
|
"section" block helper. This allows the section to be selectively
|
||||||
|
omitted from the resume if either a) the section is empty or b) the user
|
||||||
|
tells us to hide it.
|
||||||
|
|
||||||
|
As fpr the colored bars, those are just standard HTML and CSS, with the
|
||||||
|
height and color of each bar linked to the candidate's skill "level" from
|
||||||
|
the resume.
|
||||||
|
|
||||||
|
TL;DR Always wrap your sections with the "section"!
|
||||||
|
--> }}
|
||||||
|
|
||||||
|
|
||||||
|
{{#section 'skills' }}
|
||||||
|
<hr>
|
||||||
|
<section id="skills">
|
||||||
|
<header>
|
||||||
|
<h2>{{{sectionTitle "Skills"}}}</h2>
|
||||||
|
</header>
|
||||||
|
<span class="fa fa-lg fa-code"></span>
|
||||||
|
<ul class="list-unstyled">
|
||||||
|
{{#each r.skills.sets}}
|
||||||
|
<li class="card card-nested card-skills">
|
||||||
|
<div class="skill-level" rel="tooltip" title="{{ level }}" data-placement="left">
|
||||||
|
<div class="skill-progress {{toLower level }}"></div>
|
||||||
|
</div>
|
||||||
|
<div class="skill-info">
|
||||||
|
<strong>{{ name }}</strong>
|
||||||
|
<div class="space-top labels">
|
||||||
|
{{#if skills}}
|
||||||
|
{{#each skills}}
|
||||||
|
<span class="label label-keyword">{{ this }}</span>
|
||||||
|
{{/each}}
|
||||||
|
{{/if}}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
{{/each}}
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
{{/section}}
|
||||||
|
|
||||||
|
|
||||||
|
{{#*inline "body-projects" }}
|
||||||
|
<div>
|
||||||
|
<h3>{{#if role}}<em>{{camelCase role }}</em>,{{/if}}
|
||||||
|
{{#if url}}
|
||||||
|
<a href="{{{ url }}}">{{ title }}</a>
|
||||||
|
{{else}}
|
||||||
|
{{ title }}
|
||||||
|
{{/if}}
|
||||||
|
</h3>
|
||||||
|
{{#if start}}<span class="tenure">{{dateRange .}}</span>{{/if}}
|
||||||
|
{{#if keywords}}
|
||||||
|
{{#if start}}| {{/if}}<span class="keywords">{{#each keywords}}{{{ . }}} {{/each}}</span>
|
||||||
|
{{/if}}
|
||||||
|
{{{ summary }}}
|
||||||
|
{{> highlights }}
|
||||||
|
</div>
|
||||||
|
{{/inline}}
|
||||||
|
|
||||||
|
{{#*inline "icon-projects"}}<span class="fa fa-lg fa-star"></span>{{/inline}}
|
||||||
|
|
||||||
|
{{> section/projects _icon="icon-projects"}}
|
||||||
|
|
||||||
|
{{! <!--
|
||||||
|
|
||||||
|
So much for SKILLS. Now let's render the EMPLOYMENT section.
|
||||||
|
|
||||||
|
We could do this manually with custom HTML, like we did with the SKILLS
|
||||||
|
section, but let's take advantage of some predefined partials instead.
|
||||||
|
FRESH provides global partials for all resume sections (employment, skills,
|
||||||
|
education, speaking, etc.). They're named like this:
|
||||||
|
|
||||||
|
section/skills
|
||||||
|
section/employment
|
||||||
|
section/service
|
||||||
|
section/recognition
|
||||||
|
etc..
|
||||||
|
|
||||||
|
So what we want to do is inject the "section/skills" global partial
|
||||||
|
and use it here in our theme. We can do that simply with:
|
||||||
|
|
||||||
|
((> section/skills ))
|
||||||
|
|
||||||
|
(Replace the parentheses with brackets). However, in this case we want to
|
||||||
|
override the heading icon used in the global partial as well as its content.
|
||||||
|
That is, we want to use the "section/employment" partial, but selectively
|
||||||
|
override portions of it with our own markup.
|
||||||
|
|
||||||
|
--> }}
|
||||||
|
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
First, we create an inline partial called "icon-employment." The contents of
|
||||||
|
this partial will be referenced by the section/employment partial we invoke
|
||||||
|
below. This partial doesn't, by itself, render any content -- it's a template.
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
{{#*inline "icon-employment"}}<span class="fa fa-lg fa-building"></span>{{/inline}}
|
||||||
|
|
||||||
|
|
||||||
|
{{!<!--
|
||||||
|
Next we create another inline partial called "body-employment" and set its
|
||||||
|
contents to the markup we'd like to use for the body section of each job. This
|
||||||
|
also doesn't render any content.
|
||||||
|
-->}}
|
||||||
|
|
||||||
|
{{#*inline "header-employment" }}
|
||||||
|
{{> header-icon _title="WORK" _section="work" _hdricon=(lookup . '_icon') }}
|
||||||
|
{{/inline}}
|
||||||
|
{{#*inline "body-employment" }}
|
||||||
|
<div>
|
||||||
|
<h3><em>{{ position }}</em>,
|
||||||
|
{{#if url }}
|
||||||
|
<a href="{{{ url }}}">{{ employer }}</a>
|
||||||
|
{{else}}
|
||||||
|
{{ employer }}
|
||||||
|
{{/if}}
|
||||||
|
</h3>
|
||||||
|
<span class="tenure">{{dateRange .}}</span>
|
||||||
|
{{#if keywords}}
|
||||||
|
{{#if start}}| {{/if}}<span class="keywords">{{#each keywords}}{{{ . }}} {{/each}}</span>
|
||||||
|
{{/if}}
|
||||||
|
<p>{{{ summary }}}</p>
|
||||||
|
{{> highlights }}
|
||||||
|
</div>
|
||||||
|
{{/inline}}
|
||||||
|
|
||||||
|
{{! <!--
|
||||||
|
Actually render the employment section. Invoke the "section/employment"
|
||||||
|
partial (which lives at partials/html/section/employment.html). The header
|
||||||
|
icon and body of each employment stint will be rendered with the markup we
|
||||||
|
defined above.
|
||||||
|
--> }}
|
||||||
|
|
||||||
|
{{> section/employment _icon="icon-employment"}}
|
||||||
|
|
||||||
|
|
||||||
|
{{! <!--
|
||||||
|
Move on to the PROJECTS section, giving it the same treatment we gave the
|
||||||
|
EMPLOYMENT section.
|
||||||
|
--> }}
|
||||||
|
|
||||||
|
|
||||||
|
{{! <!--
|
||||||
|
Move on to the EDUCATION section, giving it the same treatment we gave the
|
||||||
|
EMPLOYMENT section.
|
||||||
|
--> }}
|
||||||
|
|
||||||
|
|
||||||
|
{{#*inline "body-education" }}
|
||||||
|
<div>
|
||||||
|
<h3>{{#if title}}<em>{{ title }}</em>,{{/if}}
|
||||||
|
{{#if url}}
|
||||||
|
<a href="{{{ url }}}">{{ institution }}</a>
|
||||||
|
{{else}}
|
||||||
|
{{ institution }}
|
||||||
|
{{/if}}
|
||||||
|
</h3>
|
||||||
|
{{#if start}}<span class="tenure">{{dateRange .}}</span>{{/if}}
|
||||||
|
{{#if curriculum}}
|
||||||
|
{{#if start}}| {{/if}}<span class="keywords">{{#each curriculum}}{{{ . }}} {{/each}}</span>
|
||||||
|
{{/if}}
|
||||||
|
{{{ summary }}}
|
||||||
|
{{> highlights }}
|
||||||
|
</div>
|
||||||
|
{{/inline}}
|
||||||
|
|
||||||
|
{{#*inline "icon-education"}}<span class="fa fa-lg fa-mortar-board"></span>{{/inline}}
|
||||||
|
|
||||||
|
{{> section/education _icon="icon-education"}}
|
||||||
|
|
||||||
|
|
||||||
|
{{#if r.languages}}
|
||||||
|
<hr>
|
||||||
|
<section id="languages">
|
||||||
|
<header><span class="fa fa-lg fa-language"></span> <h2>Languages</h2></header>
|
||||||
|
{{#each r.languages}}
|
||||||
|
<div class="language">
|
||||||
|
<h3><em>{{language}}</em></h3> ({{level}})
|
||||||
|
</div>
|
||||||
|
{{/each}}
|
||||||
|
</section>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
|
|
||||||
|
{{! <!--
|
||||||
|
Move on to the GOVERNANCE section, giving it the same treatment we gave the
|
||||||
|
EMPLOYMENT section.
|
||||||
|
--> }}
|
||||||
|
|
||||||
|
{{#*inline "body-governance" }}
|
||||||
|
<div>
|
||||||
|
<h3>{{#if role}}<em>{{{ role }}}</em>,{{/if}}
|
||||||
|
{{#if url}}
|
||||||
|
<a href="{{{ url }}}">{{{ organization }}}</a>
|
||||||
|
{{else}}
|
||||||
|
{{{ organization }}}
|
||||||
|
{{/if}}
|
||||||
|
</h3>
|
||||||
|
{{#if start}}<span class="tenure">{{dateRange .}}</span>{{/if}}
|
||||||
|
{{#if keywords}}
|
||||||
|
{{#if start}}| {{/if}}<span class="keywords">{{#each keywords}}{{{ . }}} {{/each}}</span>
|
||||||
|
{{/if}}
|
||||||
|
{{{ summary }}}
|
||||||
|
{{> highlights }}
|
||||||
|
</div>
|
||||||
|
{{/inline}}
|
||||||
|
|
||||||
|
{{#*inline "icon-governance"}}<span class="fa fa-lg fa-balance-scale"></span>{{/inline}}
|
||||||
|
|
||||||
|
{{> section/governance _icon="icon-governance"}}
|
||||||
|
|
||||||
|
|
||||||
|
{{! <!--
|
||||||
|
We'll override all section heading icons the same way, for the rest of the
|
||||||
|
resume, using the same inline template technique.
|
||||||
|
--> }}
|
||||||
|
|
||||||
|
{{#*inline "icon-service"}}<span class="fa fa-lg fa-child"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-affiliation"}}<span class="fa fa-lg fa-share-alt"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-samples"}}<span class="fa fa-lg fa-share"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-writing"}}<span class="fa fa-lg fa-pencil"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-reading"}}<span class="fa fa-lg fa-book"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-recognition"}}<span class="fa fa-lg fa-trophy"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-speaking"}}<span class="fa fa-lg fa-users"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-testimonials"}}<span class="fa fa-lg fa-quote-left"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-references"}}<span class="fa fa-lg fa-thumbs-o-up"></span>{{/inline}}
|
||||||
|
{{#*inline "icon-interests"}}<span class="fa fa-lg fa-bicycle"></span>{{/inline}}
|
||||||
|
|
||||||
|
{{! <!--
|
||||||
|
And we're done with the customizations. For the rest of the resume, we'll
|
||||||
|
use the default section partials and style them with whatever CSS we like.
|
||||||
|
--> }}
|
||||||
|
|
||||||
|
{{> section/service _icon="icon-service"}}
|
||||||
|
{{> section/affiliation _icon="icon-affiliation"}}
|
||||||
|
{{> section/samples _icon="icon-samples"}}
|
||||||
|
{{> section/writing _icon="icon-writing"}}
|
||||||
|
{{> section/reading _icon="icon-reading"}}
|
||||||
|
{{> section/recognition _icon="icon-recognition"}}
|
||||||
|
{{> section/speaking _icon="icon-speaking"}}
|
||||||
|
{{> section/testimonials _icon="icon-testimonials"}}
|
||||||
|
{{> section/references _icon="icon-references"}}
|
||||||
|
{{> section/interests _icon="icon-interests"}}
|
||||||
|
|
||||||
|
|
||||||
|
{{#if r.extracurricular}}
|
||||||
|
<hr>
|
||||||
|
<section id="extracurricular">
|
||||||
|
<header><span class="fa fa-lg fa-random"></span> <h2>Extracurricular</h2></header>
|
||||||
|
{{#each r.extracurricular}}
|
||||||
|
<div class="extracurricular">
|
||||||
|
<h3><em>{{title}}</em></h3>
|
||||||
|
{{#if start}}<span class="tenure">{{dateRange .}}</span>{{/if}}
|
||||||
|
<br/><em>Activity: </em>{{activity}}
|
||||||
|
{{#if location}}<br/><em>Location: </em>{{{location}}}{{/if}}
|
||||||
|
{{#if highlights}}<br/><em>Details: </em> {{{highlights}}}{{/if}}
|
||||||
|
</div>
|
||||||
|
{{/each}}
|
||||||
|
</section>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</main>
|
||||||
|
</body>
|
||||||
|
</html>
|
49
themes/modern-lancer/src/partials/info.xml
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
<wx:sub-section>
|
||||||
|
{{!-- This pBdrGroup section creates an embedded font-awesome icon image. --}}
|
||||||
|
<wx:pBdrGroup>
|
||||||
|
<wx:borders>
|
||||||
|
<wx:top wx:val="solid" wx:bdrwidth="15" wx:space="1" wx:color="EEEEEE"/>
|
||||||
|
</wx:borders>
|
||||||
|
<w:p wsp:rsidR="00C146CA" wsp:rsidRPr="00C146CA" wsp:rsidRDefault="00D1523B" wsp:rsidP="00C146CA">
|
||||||
|
<w:pPr>
|
||||||
|
<w:pStyle w:val="Heading1"/>
|
||||||
|
</w:pPr>
|
||||||
|
<w:r>
|
||||||
|
<w:pict>
|
||||||
|
<v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
|
||||||
|
<v:stroke joinstyle="miter"/>
|
||||||
|
<v:formulas>
|
||||||
|
<v:f eqn="if lineDrawn pixelLineWidth 0"/>
|
||||||
|
<v:f eqn="sum @0 1 0"/>
|
||||||
|
<v:f eqn="sum 0 0 @1"/>
|
||||||
|
<v:f eqn="prod @2 1 2"/>
|
||||||
|
<v:f eqn="prod @3 21600 pixelWidth"/>
|
||||||
|
<v:f eqn="prod @3 21600 pixelHeight"/>
|
||||||
|
<v:f eqn="sum @0 0 1"/>
|
||||||
|
<v:f eqn="prod @6 1 2"/>
|
||||||
|
<v:f eqn="prod @7 21600 pixelWidth"/>
|
||||||
|
<v:f eqn="sum @8 21600 0"/>
|
||||||
|
<v:f eqn="prod @7 21600 pixelHeight"/>
|
||||||
|
<v:f eqn="sum @10 21600 0"/>
|
||||||
|
</v:formulas>
|
||||||
|
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
|
||||||
|
<o:lock v:ext="edit" aspectratio="t"/>
|
||||||
|
</v:shapetype>
|
||||||
|
<w:binData w:name="wordml://03000001.png" xml:space="preserve">iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAThQTFRFv8HDv8LOv8jXv8HEv8zdv8HGv8HIv8LQv8TTv8HOv8bVv8TM2dDOz8zO09bdxcHDw8jTw8HD3crDzcHDz8LDzcLDx8HDwcrZy8bExcrT1crGx8LGycrSy8LD1cjEw87f1cTDw8jM0dLZ3drZ1c7MycTD2cjDycHDz977wc7ixdLqz9rqydLix9buy9r11en/2+Xwz+H71ePx9d7Q7dTI5c7E5dTQ8drO+drM/drM79LG79TI4czE49DK7eHb/ePS///d/+nT/+vV//Hd/efV/evZ//XZ/+PS/+XS//v16ev1/f/////75/H/4fH/8//////1///i8fv///nu5+/7/e/i+//78/n///nz8+/w8/H1++3i9/////vo5fv////w7///4///4f/////x//vw+fHw9/n/////RIkD6QAAAP5JREFUSMdjSCcaMIwqHVVKL6Wedjy8fF7ehJX6GPMzgICALyGlPiYMUMDoR0CpvSBMKQOTP16lAUJwlQzMGniVOggjlDJo4lXqyI+klAWvUifilQaKICnVwqvUxxShklUff2A5iyJ85U0gtlzEoCrFg/BFQbCZhGRIqBRIIZt2mLm0jIE3DqWusqCA1wmPiIyM8o6WA+mQj8GqNFYBarWikrKKKpSti1WpBQMWwB6HRWm8GjalDHpYlLqpY1XKgkWpuyBWpRwJmEotsapk4EzEVGqFQ2kSRUqtiVfqgd1bXP6YSpNtsKlkNsQWWym2mOZyG+FIWT6pkaggDVkWALeXG64AV9ZXAAAAAElFTkSuQmCC</w:binData>
|
||||||
|
<v:shape id="_x0000_i1027" type="#_x0000_t75" style="width:31.5pt;height:31.5pt">
|
||||||
|
<v:imagedata src="wordml://03000001.png" o:title="fa-person"/>
|
||||||
|
</v:shape>
|
||||||
|
</w:pict>
|
||||||
|
</w:r>
|
||||||
|
<w:r wsp:rsidR="00C146CA" wsp:rsidRPr="00C146CA">
|
||||||
|
<w:t>{{{sectionTitle "info" "ABOUT"}}}</w:t>
|
||||||
|
</w:r>
|
||||||
|
</w:p>
|
||||||
|
</wx:pBdrGroup>
|
||||||
|
<w:p wsp:rsidR="00C146CA" wsp:rsidRPr="000A3AF0" wsp:rsidRDefault="00C146CA" wsp:rsidP="00A210E1">
|
||||||
|
<w:pPr>
|
||||||
|
<w:pStyle w:val="Summary"/>
|
||||||
|
</w:pPr>
|
||||||
|
{{{wpml r.info.brief true }}}
|
||||||
|
</w:p>
|
||||||
|
</wx:sub-section>
|
120
themes/modern-lancer/src/partials/skills.xml
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
{{#if r.skills }}
|
||||||
|
<wx:sub-section>
|
||||||
|
{{!-- This pBdrGroup section creates an embedded font-awesome icon image. --}}
|
||||||
|
<wx:pBdrGroup>
|
||||||
|
<wx:borders>
|
||||||
|
<wx:top wx:val="solid" wx:bdrwidth="15" wx:space="1" wx:color="EEEEEE"/>
|
||||||
|
</wx:borders>
|
||||||
|
<w:p wsp:rsidR="00C146CA" wsp:rsidRPr="00C146CA" wsp:rsidRDefault="00D1523B" wsp:rsidP="00C146CA">
|
||||||
|
<w:pPr>
|
||||||
|
<w:pStyle w:val="Heading1"/>
|
||||||
|
<w:ind w:left="-720"/>
|
||||||
|
</w:pPr>
|
||||||
|
<w:r>
|
||||||
|
<w:pict>
|
||||||
|
<v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
|
||||||
|
<v:stroke joinstyle="miter"/>
|
||||||
|
<v:formulas>
|
||||||
|
<v:f eqn="if lineDrawn pixelLineWidth 0"/>
|
||||||
|
<v:f eqn="sum @0 1 0"/>
|
||||||
|
<v:f eqn="sum 0 0 @1"/>
|
||||||
|
<v:f eqn="prod @2 1 2"/>
|
||||||
|
<v:f eqn="prod @3 21600 pixelWidth"/>
|
||||||
|
<v:f eqn="prod @3 21600 pixelHeight"/>
|
||||||
|
<v:f eqn="sum @0 0 1"/>
|
||||||
|
<v:f eqn="prod @6 1 2"/>
|
||||||
|
<v:f eqn="prod @7 21600 pixelWidth"/>
|
||||||
|
<v:f eqn="sum @8 21600 0"/>
|
||||||
|
<v:f eqn="prod @7 21600 pixelHeight"/>
|
||||||
|
<v:f eqn="sum @10 21600 0"/>
|
||||||
|
</v:formulas>
|
||||||
|
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
|
||||||
|
<o:lock v:ext="edit" aspectratio="t"/>
|
||||||
|
</v:shapetype>
|
||||||
|
<w:binData w:name="wordml://03000002.png" xml:space="preserve">iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAPlQTFRFv8HDv8HEv8LQv8LSv8zdv8HGv8LKv8HKv8jXv8bVv8LOwczdzcHDycLEwcHDxcHGycLD18bD1cTDzcLDx8HD28jD08LDw8HD1cbDxcHD2czS1czSy8bEw9Dmzdzxz97xydj1xdLqx9Tqy9jszdz7wc7iy9bu0+P/2ef72e//2/X/+djK4czD6dDE89bK4crD99rM997Q/dzO5c7E89TI997T//vd/efX/+HQ++XT//Hd/+3V/+nT///5+/n/+//////75f//6f///f/////s///q8//////1///37/////vo///k4fH/5//////w4+/7//Hk5fH/////unTQ4QAAAQ1JREFUSMft1GtTQUEYB/A/JSlCoXJJUYqKqNwvFaFDquf7f5h0jrMXe3BmvGrGvnp29jc7O/99dkG2BzZ0Q/8/bbVt01vsd+zRlzskbO5a9jqul9OK78woqgfOV6r5kwtpJYCtN726x3a3F4QruYBO5c6NXr0f4pyofiRbWEhqhNxZUiwsJOWx2yfFwkIOwrgwKslClWJUooUqjahUq9NhAUh1Gf2Lik0eAM+HsKsWhCNtLo8iuGSyeIy9sXRW7YTb5qk7ZyFZAoI1o5qTPFdmeVSyFG7LtDwqWYo9MLMls2fmpNRZU+v8pEdc6bNJWJZyv2rRLyGq79jP8lcgRrXiwTzxqFbR53hm/S/jF09ZANBqGaBnAAAAAElFTkSuQmCC</w:binData>
|
||||||
|
<v:shape id="_x0000_i1028" type="#_x0000_t75" style="width:31.5pt;height:31.5pt">
|
||||||
|
<v:imagedata src="wordml://03000002.png" o:title="fa-code"/>
|
||||||
|
</v:shape>
|
||||||
|
</w:pict>
|
||||||
|
</w:r>
|
||||||
|
<w:r wsp:rsidR="00C146CA" wsp:rsidRPr="00C146CA">
|
||||||
|
<w:t>{{{sectionTitle "SKILLS"}}}</w:t>
|
||||||
|
</w:r>
|
||||||
|
</w:p>
|
||||||
|
</wx:pBdrGroup>
|
||||||
|
|
||||||
|
<w:tbl>
|
||||||
|
<w:tblPr>
|
||||||
|
<w:tblW w:w="0" w:type="auto"/>
|
||||||
|
<w:tblLook w:val="04A0"/>
|
||||||
|
</w:tblPr>
|
||||||
|
<w:tblGrid>
|
||||||
|
<w:gridCol w:w="828"/>
|
||||||
|
<w:gridCol w:w="8748"/>
|
||||||
|
</w:tblGrid>
|
||||||
|
|
||||||
|
{{#each r.skills.sets}}
|
||||||
|
|
||||||
|
<w:tr wsp:rsidR="00427ECC" wsp:rsidTr="00FD3B33">
|
||||||
|
<w:trPr>
|
||||||
|
<w:trHeight w:val="882"/>
|
||||||
|
</w:trPr>
|
||||||
|
<w:tc>
|
||||||
|
<w:tcPr>
|
||||||
|
<w:tcW w:w="828" w:type="dxa"/>
|
||||||
|
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
|
||||||
|
</w:tcPr>
|
||||||
|
<w:p wsp:rsidR="00427ECC" wsp:rsidRDefault="00427ECC" wsp:rsidP="00427ECC">
|
||||||
|
<w:r>
|
||||||
|
<w:rPr>
|
||||||
|
<w:noProof/>
|
||||||
|
</w:rPr>
|
||||||
|
<w:pict>
|
||||||
|
<v:rect id="_x0000_s1028" style="position:absolute;left:0;text-align:left;margin-left:20.6pt;margin-top:1.4pt;width:7.15pt;height:38.25pt;z-index:1" fillcolor="{{{skillColor level}}}" strokeweight="0"/>
|
||||||
|
</w:pict>
|
||||||
|
</w:r>
|
||||||
|
<w:r>
|
||||||
|
<w:rPr>
|
||||||
|
<w:noProof/>
|
||||||
|
</w:rPr>
|
||||||
|
<w:pict>
|
||||||
|
<v:rect id="_x0000_s1026" style="position:absolute;left:0;text-align:left;margin-left:20.6pt;margin-top:1.4pt;width:7.15pt;height:{{{skillHeight level}}}pt;z-index:2" fillcolor="#FFFFFF" strokeweight="0"/>
|
||||||
|
</w:pict>
|
||||||
|
</w:r>
|
||||||
|
</w:p>
|
||||||
|
</w:tc>
|
||||||
|
<w:tc>
|
||||||
|
<w:tcPr>
|
||||||
|
<w:tcW w:w="8748" w:type="dxa"/>
|
||||||
|
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
|
||||||
|
</w:tcPr>
|
||||||
|
<w:p>
|
||||||
|
<w:pPr>
|
||||||
|
<w:spacing w:before="120"/>
|
||||||
|
</w:pPr>
|
||||||
|
<w:r>
|
||||||
|
<w:rPr>
|
||||||
|
<w:sz w:val="24"/>
|
||||||
|
<w:b/>
|
||||||
|
<w:caps/>
|
||||||
|
</w:rPr>
|
||||||
|
<w:t>{{{ name }}}</w:t>
|
||||||
|
</w:r>
|
||||||
|
</w:p>
|
||||||
|
<w:p wsp:rsidR="00427ECC" wsp:rsidRDefault="00427ECC" wsp:rsidP="00427ECC">
|
||||||
|
<w:r>
|
||||||
|
<w:rPr>
|
||||||
|
<w:caps/>
|
||||||
|
<w:spacing w:val="22"/>
|
||||||
|
</w:rPr>
|
||||||
|
<w:t>{{#each skills }}{{ this }}{{#unless @last}} {{/unless}}{{/each}}</w:t>
|
||||||
|
</w:r>
|
||||||
|
</w:p>
|
||||||
|
</w:tc>
|
||||||
|
</w:tr>
|
||||||
|
|
||||||
|
{{/each}}
|
||||||
|
|
||||||
|
</w:tbl>
|
||||||
|
{{/if}}
|
||||||
|
</wx:sub-section>
|
28
themes/modern-lancer/theme.json
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
{
|
||||||
|
"title": "modern",
|
||||||
|
"description": "A contemporary resume template suitable for modern technical candidates and employees.",
|
||||||
|
"author": "hacksalot <hacksalot@indevious.com> (https://github.com/hacksalot)",
|
||||||
|
"engine": "handlebars",
|
||||||
|
"palette": {
|
||||||
|
"skillLevels": [ "#FFFFFF", "#5CB85C", "#F1C40F", "#428BCA", "#C00000" ]
|
||||||
|
},
|
||||||
|
"message": "To get colored skill progress bars, make sure your resume includes a `level` element for each skill.",
|
||||||
|
"inherits": {
|
||||||
|
"txt": "basis",
|
||||||
|
"md": "basis"
|
||||||
|
},
|
||||||
|
"fonts": {
|
||||||
|
"all": {
|
||||||
|
"default": [ "Helvetica Neue", "Helvetica", "Segoe UI", "Calibri", "sans-serif" ],
|
||||||
|
"heading1": ["Arial"],
|
||||||
|
"heading2": ["Arial"]
|
||||||
|
},
|
||||||
|
"doc": {
|
||||||
|
"default": "Calibri",
|
||||||
|
"heading1": "Trebuchet MS",
|
||||||
|
"heading2": "Calibri",
|
||||||
|
"heading3": "Calibri"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|