Showing preview only (4,489K chars total). Download the full file or copy to clipboard to get everything.
Repository: techfolios/template-old
Branch: master
Commit: a730e26cd2fe
Files: 169
Total size: 4.3 MB
Directory structure:
gitextract_d86l0a0j/
├── .gitignore
├── 404.md
├── LICENSE
├── README.md
├── _config.yml
├── _data/
│ └── bio.json
├── _includes/
│ ├── bio-address.html
│ ├── bio-awards-1.html
│ ├── bio-awards-2.html
│ ├── bio-education-1.html
│ ├── bio-education-2.html
│ ├── bio-interests-1.html
│ ├── bio-network-links.html
│ ├── bio-publications-1.html
│ ├── bio-publications-2.html
│ ├── bio-references-1.html
│ ├── bio-skills-1.html
│ ├── bio-volunteer-1.html
│ ├── bio-volunteer-2.html
│ ├── bio-work-1.html
│ ├── bio-work-2.html
│ ├── essay-card-1a.html
│ ├── essay-card.html
│ ├── essay-row.html
│ ├── footer.html
│ ├── head.html
│ ├── header.html
│ ├── home-network-links.html
│ ├── menubar.html
│ ├── project-card-1a.html
│ ├── project-card.html
│ ├── project-row.html
│ ├── theme-bio-builtin-1.html
│ ├── theme-bio-builtin-2.html
│ ├── theme-essays-builtin-1.html
│ ├── theme-essays-builtin-1a.html
│ ├── theme-essays-builtin-2.html
│ ├── theme-home-builtin-1.html
│ ├── theme-home-builtin-2.html
│ ├── theme-home-builtin-3.html
│ ├── theme-projects-builtin-1.html
│ ├── theme-projects-builtin-1a.html
│ └── theme-projects-builtin-2.html
├── _layouts/
│ ├── bio.html
│ ├── default.html
│ ├── essay.html
│ ├── essays.html
│ ├── missingpage.html
│ ├── project.html
│ └── projects.html
├── bio/
│ └── index.html
├── css/
│ ├── print-customizations.scss
│ ├── print-default.scss
│ ├── rouge/
│ │ ├── base16.css
│ │ ├── base16.dark.css
│ │ ├── base16.light.css
│ │ ├── base16.solarized.css
│ │ ├── colorful.css
│ │ ├── github.css
│ │ ├── gruvbox.css
│ │ ├── igorpro.css
│ │ ├── molokai.css
│ │ ├── monokai.css
│ │ ├── thankful_eyes.css
│ │ └── tulip.css
│ ├── semantic-ui/
│ │ ├── components/
│ │ │ ├── accordion.css
│ │ │ ├── accordion.js
│ │ │ ├── ad.css
│ │ │ ├── api.js
│ │ │ ├── breadcrumb.css
│ │ │ ├── button.css
│ │ │ ├── card.css
│ │ │ ├── checkbox.css
│ │ │ ├── checkbox.js
│ │ │ ├── comment.css
│ │ │ ├── container.css
│ │ │ ├── dimmer.css
│ │ │ ├── dimmer.js
│ │ │ ├── divider.css
│ │ │ ├── dropdown.css
│ │ │ ├── dropdown.js
│ │ │ ├── embed.css
│ │ │ ├── embed.js
│ │ │ ├── feed.css
│ │ │ ├── flag.css
│ │ │ ├── form.css
│ │ │ ├── form.js
│ │ │ ├── grid.css
│ │ │ ├── header.css
│ │ │ ├── icon.css
│ │ │ ├── image.css
│ │ │ ├── input.css
│ │ │ ├── item.css
│ │ │ ├── label.css
│ │ │ ├── list.css
│ │ │ ├── loader.css
│ │ │ ├── menu.css
│ │ │ ├── message.css
│ │ │ ├── modal.css
│ │ │ ├── modal.js
│ │ │ ├── nag.css
│ │ │ ├── nag.js
│ │ │ ├── popup.css
│ │ │ ├── popup.js
│ │ │ ├── progress.css
│ │ │ ├── progress.js
│ │ │ ├── rail.css
│ │ │ ├── rating.css
│ │ │ ├── rating.js
│ │ │ ├── reset.css
│ │ │ ├── reveal.css
│ │ │ ├── search.css
│ │ │ ├── search.js
│ │ │ ├── segment.css
│ │ │ ├── shape.css
│ │ │ ├── shape.js
│ │ │ ├── sidebar.css
│ │ │ ├── sidebar.js
│ │ │ ├── site.css
│ │ │ ├── site.js
│ │ │ ├── state.js
│ │ │ ├── statistic.css
│ │ │ ├── step.css
│ │ │ ├── sticky.css
│ │ │ ├── sticky.js
│ │ │ ├── tab.css
│ │ │ ├── tab.js
│ │ │ ├── table.css
│ │ │ ├── transition.css
│ │ │ ├── transition.js
│ │ │ └── visibility.js
│ │ ├── semantic.css
│ │ └── semantic.js
│ ├── stylesheet-customizations.scss
│ └── stylesheet-default.scss
├── essays/
│ ├── 2015-08-26.md
│ ├── 2015-09-08.md
│ ├── 2016-02-06.md
│ └── index.html
├── index.html
├── js/
│ ├── semantic-ui/
│ │ ├── accordion.js
│ │ ├── api.js
│ │ ├── checkbox.js
│ │ ├── colorize.js
│ │ ├── dimmer.js
│ │ ├── dropdown.js
│ │ ├── embed.js
│ │ ├── form.js
│ │ ├── modal.js
│ │ ├── nag.js
│ │ ├── popup.js
│ │ ├── progress.js
│ │ ├── rating.js
│ │ ├── search.js
│ │ ├── shape.js
│ │ ├── sidebar.js
│ │ ├── site.js
│ │ ├── state.js
│ │ ├── sticky.js
│ │ ├── tab.js
│ │ ├── transition.js
│ │ ├── video.js
│ │ ├── visibility.js
│ │ └── visit.js
│ └── semantic-ui.js
└── projects/
├── index.html
├── project-1.md
├── project-2.md
└── project-3.md
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitignore
================================================
# Created by .ignore support plugin (hsz.mobi)
.idea/
*.iml
_site/
.sass-cache/
.jekyll-cache/
================================================
FILE: 404.md
================================================
---
layout: missingpage
---
================================================
FILE: LICENSE
================================================
The MIT License (MIT)
Copyright (c) 2016 ics-portfolios
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
================================================
FILE: README.md
================================================
# Technical Portfolio
This repository hosts a technical portfolio built using [TechFolio](http://techfolios.github.io).
See the quick start guide for instructions on how to tailor the template to your own needs.
================================================
FILE: _config.yml
================================================
# Site settings
# REQUIRED CHANGES
# Edit next line, providing your own name.
title: Molly Maluhia | Professional Portfolio
# Edit next line, replacing 'techfolios' with your github username
url: "https://techfolios.github.io"
# Edit next line so that baseurl is "" if your repo is <username>.github.io
baseurl: "/template"
# OPTIONAL CHANGES
# You might want to change the bio page label to something else, such as CV
bio-page-label: Resume
# You might want to change the theme associated with one or more sections of the site.
# Defining your own custom theme variations is easy. See the documentation.
theme-home: theme-home-builtin-1.html
theme-projects: theme-projects-builtin-1.html
theme-essays: theme-essays-builtin-1.html
theme-bio: theme-bio-builtin-1.html
# Specify the rouge syntax highlighter theme. Pick one from css/rouge.
rouge-theme: igorpro
# YOU NORMALLY NEVER CHANGE THE FOLLOWING
markdown: kramdown
include: [_data]
================================================
FILE: _data/bio.json
================================================
{
"basics": {
"name": "Molly Maluhia",
"label": "Student",
"picture": "https://techfolios.github.io/template/images/molly.png",
"email": "molly@hawaii.edu",
"phone": "808-333-4444",
"website": "https://mmaluhia.github.io",
"summary": "I am studying for a B.S. in Computer Science in the Department of Information and Computer Sciences at the University of Hawaii. I expect to graduate in Spring, 2020.",
"location": {
"address": "",
"postalCode": "96822",
"city": "Honolulu",
"countryCode": "USA",
"region": "Hawaii"
},
"profiles": [
{
"network": "github",
"username": "mmaluhia",
"url": "http://github.com/changeme"
},
{
"network": "linkedin",
"username": "mollymaluhia",
"url": "http://linkedin.com/in/changeme"
},
{
"network": "twitter",
"username": "mollymal",
"url": "http://twitter.com/changeme"
},
{
"network": "instagram",
"username": "molly",
"url": "http://instagram.com/changeme"
}
]
},
"interests": [
{
"name": "internet of things",
"keywords": [
"Arduino",
"TI MSP430"
]
},
{
"name": "data mining",
"keywords": [
]
},
{
"name": "artificial intelligence",
"keywords": [
]
}
],
"skills": [
{
"name": "Languages and Frameworks",
"level": "",
"keywords": [
"C",
"C++",
"Java",
"Javascript",
"Assembly",
"Common Lisp"
]
},
{
"name": "Toolsets/OS",
"level": "",
"keywords": [
"MacOS",
"Ubuntu",
"Git/GitHub",
"g++",
"TI LaunchPad"
]
}
],
"education": [
{
"institution": "University of Hawaii, Honolulu, HI",
"area": "Computer Science (expected Spring, 2018)",
"studyType": "B.S.",
"startDate": "2013-09-01",
"endDate": "Present",
"gpa": "",
"courses": [
]
}
],
"work": [
{
"company": "UH Manoa Board of Publications",
"position": "Web Developer",
"website": "",
"startDate": "2015-08-01",
"endDate": "Present",
"summary": "Head of online presence for Ka Leo",
"highlights": [
"Maintain, update, and oversee official college newspaper website",
"Drive, design and build student-community projects for UH Manoa"
]
},
{
"company": "UH Information Technology Services",
"position": "Help Desk Consultant",
"website": "http://www.hawaii.edu/its/",
"startDate": "2015-01-01",
"endDate": "2016-03-15",
"summary": "",
"highlights": [
"Troubleshoot software, hardware and networking issues over the phone",
"Answer phone and email responses to the ITS Help Desk"
]
}
],
"volunteer": [
{
"organization": "Center for Renewable Energy and Island Sustainability",
"website": "http://manoa.hawaii.edu/reis",
"position": "Software Developer",
"startDate": "2016-01-01",
"endDate": "Present",
"summary": "Lead developer for weather sensing project",
"highlights": [
"Design firmware for distributed weather sensor network",
"Maintain custom data collection and storage infrastructure"
]
},
{
"organization": "",
"website": "",
"position": "Professional organization involvement",
"startDate": "",
"endDate": "",
"summary": "",
"highlights": [
"Chair, ACM Manoa, 2016-Present",
"Member, IEEE Student Branch, 2014-Present",
"Webmaster/IT Officer, IEEE Student Branch, UH Manoa, 2012-2013"
]
}
],
"awards": [
{
"title": "B+ Scholarship",
"date": "2013-Present",
"awarder": "State of Hawaii",
"summary": "Scholarships awarded to incoming freshmen and continuing students who complete a rigorous high school curriculum with a minimum overall GPA of 3.0 at a Hawai'i public school."
},
{
"title": "First place",
"date": "2015",
"awarder": "University of Hawaii Micromouse Competition",
"summary": "My team won first place in 2015. See my portfolio site for more details."
}
],
"references": [
{
"name": "Available upon request",
"reference": ""
}
]
}
================================================
FILE: _includes/bio-address.html
================================================
<!-- Used by theme-bio-builtin-1,2 -->
<p class="ui no-bottom">{{ site.data.bio.basics.location.address }}</p>
<p class="ui no-bottom">{{ site.data.bio.basics.location.city }}, {{ site.data.bio.basics.location.region }} {{ site.data.bio.basics.location.postalCode }} {{ site.data.bio.basics.location.countryCode }}</p>
<p class="ui no-bottom">{{ site.data.bio.basics.phone }}</p>
================================================
FILE: _includes/bio-awards-1.html
================================================
<!-- Used by theme-bio-builtin-1 -->
{% if site.data.bio.awards %}
<div class="row">
<div class="two wide column">
<h3 class="ui left aligned header no-bottom">Awards</h3>
</div>
<div class="fourteen wide column no-bottom">
{% for entry in site.data.bio.awards %}
<div class="ui grid">
<div class="sixteen wide column no-bottom">
<p class="ui no-bottom">
<b>{{ entry.title }}</b>, {{ entry.awarder }}{% if entry.date %}, {{ entry.date }}{% endif %}
</p>
<p class="ui">{{ entry.summary }}</p>
</div>
</div>
{% endfor %}
</div>
</div>
{% endif %}
================================================
FILE: _includes/bio-awards-2.html
================================================
<!-- Used by theme-bio-builtin-2 -->
{% assign hasGrant = false %}
{% assign hasNonGrant = false %}
{% for entry in site.data.bio.awards %}
{% if entry.type == "grant" %}
{% assign hasGrant = true %}
{% elsif entry.type != "grant" %}
{% assign hasNonGrant = true %}
{% endif %}
{% endfor %}
{% if hasGrant %}
<div class="sixteen wide column no-bottom">
<h3 class="ui left aligned header no-bottom">Grant Support</h3>
<hr style="margin: 0px;">
</div>
<div class="sixteen wide column no-bottom">
{% for entry in site.data.bio.awards %}
{% if entry.type == "grant" %}
<p class="ui no-bottom">
<b>{{ entry.title }}</b>, {{ entry.awarder }}{% if entry.date %}, {{ entry.date }}{% endif %}
</p>
<p class="ui">{{ entry.summary }}</p>
{% endif %}
{% endfor %}
</div>
{% endif %}
{% if hasNonGrant %}
<div class="sixteen wide column no-bottom">
<h3 class="ui left aligned header no-bottom">Awards and Honors</h3>
<hr style="margin: 0px;">
</div>
<div class="sixteen wide column no-bottom">
{% for entry in site.data.bio.awards %}
{% if entry.type != "grant" %}
<p class="ui no-bottom">
<b>{{ entry.title }}</b>, {{ entry.awarder }}, {{ entry.date }}
</p>
<p class="ui">{{ entry.summary }}</p>
{% endif %}
{% endfor %}
</div>
{% endif %}
================================================
FILE: _includes/bio-education-1.html
================================================
<!-- Used by theme-bio-builtin-1 -->
<div class="row">
<div class="two wide column">
<h3 class="ui left aligned header no-bottom">Education</h3>
</div>
<div class="fourteen wide column no-bottom">
{% for entry in site.data.bio.education %}
<div class="ui grid">
<div class="twelve wide column no-bottom">
<p class="ui no-bottom"><b>{{ entry.institution }}</b></p>
<p class="ui no-bottom">{{ entry.studyType }}, {{ entry.area }}</p>
{% if entry.courses %}
<ul style="margin: 0px;">
{% for course in entry.courses %}
<li>{{ course }}</li>
{% endfor %}
</ul>
{% endif %}
</div>
<div class="four wide right aligned column no-bottom">
<p class="ui no-bottom"><b>
{% if entry.startDate %}
{{ entry.startDate | slice: 0,4 }}
{% endif %}
{% if entry.startDate and entry.startDate != '' and entry.endDate and entry.endDate != '' %}
-
{% endif %}
{% if entry.endDate %}
{% if entry.endDate != "Present" %}
{{ entry.endDate | slice: 0,4 }}
{% else %}
{{ entry.endDate }}
{% endif %}
{% endif %}
</b></p>
</div>
</div>
{% endfor %}
</div>
</div>
================================================
FILE: _includes/bio-education-2.html
================================================
<!-- Used by theme-bio-builtin-2 -->
<div class="sixteen wide column no-bottom">
<h3 class="ui left aligned header no-bottom">Education</h3>
<hr style="margin: 0px;">
</div>
{% for entry in site.data.bio.education %}
<div class="twelve wide column no-bottom">
<p class="ui no-bottom"><b>{{ entry.institution }}</b></p>
<p class="ui no-bottom">{{ entry.studyType }}, {{ entry.area }}</p>
{% if entry.courses %}
<ul style="margin: 0px;">
{% for course in entry.courses %}
<li>{{ course }}</li>
{% endfor %}
</ul>
{% endif %}
</div>
<div class="four wide right aligned column no-bottom">
<p class="ui no-bottom"><b>
{% if entry.startDate %}
{{ entry.startDate | slice: 0,4 }}
{% endif %}
{% if entry.startDate and entry.startDate != '' and entry.endDate and entry.endDate != '' %}
-
{% endif %}
{% if entry.endDate %}
{% if entry.endDate != "Present" %}
{{ entry.endDate | slice: 0,4 }}
{% else %}
{{ entry.endDate }}
{% endif %}
{% endif %}
</b></p>
</div>
{% endfor %}
================================================
FILE: _includes/bio-interests-1.html
================================================
<!-- Used by theme-bio-builtin-1 -->
{% if site.data.bio.interests %}
<div class="row">
<div class="two wide column">
<h3 class="ui left aligned header no-bottom">Interests</h3>
</div>
<div class="fourteen wide column no-bottom">
<p class="ui no-bottom">
{% for entry in site.data.bio.interests %}
{{ entry.name }}
<!-- Unfortunately the following must all be on a single line so that there are no spaces before the commas. -->
{% if entry.keywords and entry.keywords.size > 0 %}({% for keyword in entry.keywords %}{{ keyword }}{% if forloop.last != true %}, {% endif %}{% endfor %}){% endif %}{% if forloop.last != true %}, {% endif %}
{% endfor %}
</p>
</div>
</div>
{% endif %}
================================================
FILE: _includes/bio-network-links.html
================================================
<!-- Used by theme-bio-builtin-1,2 -->
{% if site.data.bio.basics.website %}
<p class="ui no-bottom"><a href="{{ site.data.bio.basics.website }}"> <i class="large home icon "></i>{{ site.data.bio.basics.website | remove: "http://" | remove: "https://" }}</a></p>
{% endif %}
{% if site.data.bio.basics.email %}
<p class="ui no-bottom"><a href="mailto:{{ site.data.bio.basics.email }}"> <i class="large mail outline icon "></i>{{ site.data.bio.basics.email }}</a></p>
{% endif %}
{% for entry in site.data.bio.basics.profiles %}
<p class="ui no-bottom"><a href="{{ entry.url }}"> <i class="large {{ entry.network | downcase }} icon "></i>{{ entry.username }}</a></p>
{% endfor %}
================================================
FILE: _includes/bio-publications-1.html
================================================
<!-- Used by theme-bio-builtin-1 -->
{% if site.data.bio.publications %}
<div class="row">
<div class="two wide column">
<h3 class="ui left aligned header no-bottom">Publications</h3>
</div>
<div class="fourteen wide column no-bottom">
{% for entry in site.data.bio.publications %}
<div class="ui grid">
<div class="sixteen wide column no-bottom">
<p class="ui no-bottom">
<b>{{ entry.name }}</b>{% if entry.author and entry.author != "" %}, {{ entry.author }}{% endif %}, <em>{{ entry.publisher }}</em>, {{ entry.releaseDate }}
{% if entry.website %}
<p class="ui no-bottom"><a href="{{ entry.website }}">{{ entry.website | remove: "http://" | remove: "https://" }}</a></p>
{% endif %}
</p>
<p class="ui no-bottom">{{ entry.summary }}</p>
</div>
</div>
{% endfor %}
</div>
</div>
{% endif %}
================================================
FILE: _includes/bio-publications-2.html
================================================
<!-- Used by theme-bio-builtin-2 -->
{% assign hasJournal = false %}
{% assign hasConference = false %}
{% assign hasWorkshop = false %}
{% assign hasTechReport = false %}
{% assign hasThesis = false %}
{% for entry in site.data.bio.publications %}
{% if entry.type == "journal" %}
{% assign hasJournal = true %}
{% elsif entry.type == "conference" %}
{% assign hasConference = true %}
{% elsif entry.type == "workshop" %}
{% assign hasWorkshop = true %}
{% elsif entry.type == "techreport" %}
{% assign hasTechreport = true %}
{% elsif entry.type == "thesis" %}
{% assign hasThesis = true %}
{% endif %}
{% endfor %}
{% if hasThesis %}
<div class="sixteen wide column no-bottom">
<h3 class="ui left aligned header no-bottom">Thesis</h3>
<hr style="margin: 0px;">
</div>
<div class="sixteen wide column no-bottom">
{% for entry in site.data.bio.publications %}
{% if entry.type == "thesis" %}
<p class="ui no-bottom">
<b>{{ entry.name }}</b>{% if entry.author and entry.author != "" %}, {{ entry.author }}{% endif %}, <em>{{ entry.publisher }}</em>, {{ entry.releaseDate }}
{% if entry.website %}
<p class="ui no-bottom"><a href="{{ entry.website }}">{{ entry.website | remove: "http://" | remove: "https://" }}</a></p>
{% endif %}
</p>
<p class="ui no-bottom">{{ entry.summary }}</p>
{% endif %}
{% endfor %}
</div>
{% endif %}
{% if hasJournal %}
<div class="sixteen wide column no-bottom">
<h3 class="ui left aligned header no-bottom">Journal articles</h3>
<hr style="margin: 0px;">
</div>
<div class="sixteen wide column no-bottom">
{% for entry in site.data.bio.publications %}
{% if entry.type == "journal" %}
<p class="ui no-bottom">
<b>{{ entry.name }}</b>{% if entry.author and entry.author != "" %}, {{ entry.author }}{% endif %}, <em>{{ entry.publisher }}</em>, {{ entry.releaseDate }}
{% if entry.website %}
<p class="ui no-bottom"><a href="{{ entry.website }}">{{ entry.website | remove: "http://" | remove: "https://" }}</a></p>
{% endif %}
</p>
<p class="ui no-bottom">{{ entry.summary }}</p>
{% endif %}
{% endfor %}
</div>
{% endif %}
{% if hasConference %}
<div class="sixteen wide column no-bottom">
<h3 class="ui left aligned header no-bottom">Conference Proceedings</h3>
<hr style="margin: 0px;">
</div>
<div class="sixteen wide column no-bottom">
{% for entry in site.data.bio.publications %}
{% if entry.type == "conference" %}
<p class="ui no-bottom">
<b>{{ entry.name }}</b>{% if entry.author and entry.author != "" %}, {{ entry.author }}{% endif %}, <em>{{ entry.publisher }}</em>, {{ entry.releaseDate }}
{% if entry.website %}
<p class="ui no-bottom"><a href="{{ entry.website }}">{{ entry.website | remove: "http://" | remove: "https://" }}</a></p>
{% endif %}
</p>
<p class="ui no-bottom">{{ entry.summary }}</p>
{% endif %}
{% endfor %}
</div>
{% endif %}
{% if hasWorkshop %}
<div class="sixteen wide column no-bottom">
<h3 class="ui left aligned header no-bottom">Workshop Proceedings</h3>
<hr style="margin: 0px;">
</div>
<div class="sixteen wide column no-bottom">
{% for entry in site.data.bio.publications %}
{% if entry.type == "workshop" %}
<p class="ui no-bottom">
<b>{{ entry.name }}</b>{% if entry.author and entry.author != "" %}, {{ entry.author }}{% endif %}, <em>{{ entry.publisher }}</em>, {{ entry.releaseDate }}
{% if entry.website %}
<p class="ui no-bottom"><a href="{{ entry.website }}">{{ entry.website | remove: "http://" | remove: "https://" }}</a></p>
{% endif %}
</p>
<p class="ui no-bottom">{{ entry.summary }}</p>
{% endif %}
{% endfor %}
</div>
{% endif %}
{% if hasTechreport %}
<div class="sixteen wide column no-bottom">
<h3 class="ui left aligned header no-bottom">Technical Reports</h3>
<hr style="margin: 0px;">
</div>
<div class="sixteen wide column no-bottom">
{% for entry in site.data.bio.publications %}
{% if entry.type == "techreport" %}
<p class="ui no-bottom">
<b>{{ entry.name }}</b>{% if entry.author and entry.author != "" %}, {{ entry.author }}{% endif %}, <em>{{ entry.publisher }}</em>, {{ entry.releaseDate }}
{% if entry.website %}
<p class="ui no-bottom"><a href="{{ entry.website }}">{{ entry.website | remove: "http://" | remove: "https://" }}</a></p>
{% endif %}
</p>
<p class="ui no-bottom">{{ entry.summary }}</p>
{% endif %}
{% endfor %}
</div>
{% endif %}
================================================
FILE: _includes/bio-references-1.html
================================================
<!-- Used by theme-bio-builtin-1 -->
{% if site.data.bio.references %}
<div class="row">
<div class="two wide column">
<h3 class="ui left aligned header no-bottom">References</h3>
</div>
<div class="fourteen wide column no-bottom">
<p class="ui no-bottom">
{% for entry in site.data.bio.references %}
{{ entry.name }}
{% if entry.reference and entry.reference.size > 0 %}
<em>{{ entry.reference }}</em>
{% endif %}
{% endfor %}
</p>
</div>
</div>
{% endif %}
================================================
FILE: _includes/bio-skills-1.html
================================================
<!-- Used by theme-bio-builtin-1 -->
{% if site.data.bio.skills %}
<div class="row">
<div class="two wide column">
<h3 class="ui left aligned header no-bottom">Skills</h3>
</div>
<div class="fourteen wide column no-bottom">
<p class="ui no-bottom">
{% for entry in site.data.bio.skills %}
<p class="ui no-bottom">
<b>{{ entry.name }}:</b>
{% for keyword in entry.keywords %}
{{ keyword }}{% if forloop.last != true %}, {% endif %}
{% endfor %}
</p>
{% endfor %}
</div>
</div>
{% endif %}
================================================
FILE: _includes/bio-volunteer-1.html
================================================
<!-- Used by theme-bio-builtin-1 -->
{% if site.data.bio.volunteer %}
<div class="row">
<div class="two wide column">
<h3 class="ui left aligned header no-bottom">Activities</h3>
</div>
<div class="fourteen wide column no-bottom">
{% for entry in site.data.bio.volunteer %}
<div class="ui grid">
<div class="twelve wide column no-bottom">
<p class="ui no-bottom">
<b>
{{ entry.position }}{% if entry.organization and (entry.organization != "") %}, {{ entry.organization }}{% endif %}
</b>
</p>
<p class="ui no-bottom"><a href="{{ entry.website }}">{{ entry.website | remove: "http://" | remove: "https://" }}</a></p>
<p class="ui no-bottom">{{ entry.summary }}</p>
{% if entry.highlights %}
<ul style="margin: 0px;">
{% for highlight in entry.highlights %}
<li>{{ highlight }}</li>
{% endfor %}
</ul>
{% endif %}
</div>
<div class="four wide right aligned column no-bottom">
<p class="ui no-bottom"><b>
{% if entry.startDate %}
{{ entry.startDate | slice: 0,4 }}
{% endif %}
{% if entry.startDate and entry.startDate != '' and entry.endDate and entry.endDate != '' %}
-
{% endif %}
{% if entry.endDate %}
{% if entry.endDate != "Present" %}
{{ entry.endDate | slice: 0,4 }}
{% else %}
{{ entry.endDate }}
{% endif %}
{% endif %}
</b></p>
</div>
</div>
{% endfor %}
</div>
</div>
{% endif %}
================================================
FILE: _includes/bio-volunteer-2.html
================================================
<!-- Used by theme-bio-builtin-2 -->
{% if site.data.bio.volunteer %}
<div class="sixteen wide column no-bottom">
<h3 class="ui left aligned header no-bottom">Professional Activities</h3>
<hr style="margin: 0px;">
</div>
{% for entry in site.data.bio.volunteer %}
<div class="twelve wide column no-bottom">
<p class="ui no-bottom">
<b>
{{ entry.position }}{% if entry.organization and (entry.organization != "") %}, {{ entry.organization }}{% endif %}
</b>
</p>
<p class="ui no-bottom"><a href="{{ entry.website }}">{{ entry.website | remove: "http://" | remove: "https://" }}</a></p>
</div>
<div class="four wide right aligned column no-bottom">
<p class="ui no-bottom"><b>
{% if entry.startDate %}
{{ entry.startDate | slice: 0,4 }}
{% endif %}
{% if entry.startDate and entry.startDate != '' and entry.endDate and entry.endDate != '' %}
-
{% endif %}
{% if entry.endDate %}
{% if entry.endDate != "Present" %}
{{ entry.endDate | slice: 0,4 }}
{% else %}
{{ entry.endDate }}
{% endif %}
{% endif %}
</b></p>
</div>
<div style="padding-top: 0px;" class="sixteen wide column no-bottom">
<p class="ui no-bottom">{{ entry.summary }}</p>
{% if entry.highlights %}
<ul style="margin: 0px;">
{% for highlight in entry.highlights %}
<li>{{ highlight }}</li>
{% endfor %}
</ul>
{% endif %}
</div>
{% endfor %}
{% endif %}
================================================
FILE: _includes/bio-work-1.html
================================================
<!-- Used by theme-bio-builtin-1 -->
{% if site.data.bio.work %}
<div class="row">
<div class="two wide column">
<h3 class="ui left aligned header no-bottom">Work</h3>
</div>
<div class="fourteen wide column no-bottom">
{% for entry in site.data.bio.work %}
<div class="ui grid">
<div class="twelve wide column no-bottom">
<p class="ui no-bottom"><b>{{ entry.position }}, {{ entry.company }}</b></p>
<p class="ui no-bottom"><a href="{{ entry.website }}">{{ entry.website | remove: "http://" | remove: "https://"
}}</a></p>
<p class="ui no-bottom">{{ entry.summary }}</p>
{% if entry.highlights %}
<ul style="margin: 0px;">
{% for highlight in entry.highlights %}
<li>{{ highlight }}</li>
{% endfor %}
</ul>
{% endif %}
</div>
<div class="four wide right aligned column no-bottom">
<p class="ui no-bottom"><b>
{% if entry.startDate %}
{{ entry.startDate | slice: 0,4 }}
{% endif %}
{% if entry.startDate and entry.endDate %}
-
{% endif %}
{% if entry.endDate %}
{% if entry.endDate != "Present" %}
{{ entry.endDate | slice: 0,4 }}
{% else %}
{{ entry.endDate }}
{% endif %}
{% endif %}
</b></p>
</div>
</div>
{% endfor %}
</div>
</div>
{% endif %}
================================================
FILE: _includes/bio-work-2.html
================================================
<!-- Used by theme-bio-builtin-2 -->
{% if site.data.bio.work %}
<div class="sixteen wide column no-bottom">
<h3 class="ui left aligned header no-bottom">Professional Experience</h3>
<hr style="margin: 0px;">
</div>
{% for entry in site.data.bio.work %}
<div class="twelve wide column no-bottom">
<p class="ui no-bottom"><b>{{ entry.position }}, {{ entry.company }}</b></p>
<p class="ui no-bottom"><a href="{{ entry.website }}">{{ entry.website | remove: "http://" | remove: "https://" }}</a></p>
</div>
<div class="four wide right aligned column no-bottom">
<p class="ui no-bottom"><b>
{% if entry.startDate %}
{{ entry.startDate | slice: 0,4 }}
{% endif %}
{% if entry.startDate and entry.endDate %}
-
{% endif %}
{% if entry.endDate %}
{% if entry.endDate != "Present" %}
{{ entry.endDate | slice: 0,4 }}
{% else %}
{{ entry.endDate }}
{% endif %}
{% endif %}
</b></p>
</div>
<div style="padding-top: 0px;" class="sixteen wide column no-bottom">
<p class="ui no-bottom">{{ entry.summary }}</p>
{% if entry.highlights %}
<ul style="margin: 0px;">
{% for highlight in entry.highlights %}
<li>{{ highlight }}</li>
{% endfor %}
</ul>
{% endif %}
</div>
{% endfor %}
{% endif %}
================================================
FILE: _includes/essay-card-1a.html
================================================
<!-- Used by theme-essays-builtin-1 -->
<a class="card" href="{{ site.baseurl}}{{ include.page.url }}">
<div class="content">
<span class="header">{{ include.page.title }}</span>
<div class="meta">
<span class="date">{{ include.page.date | date_to_string }}</span>
</div>
<div class="description">
{{ include.page.content | markdownify | strip_html | truncatewords: 40 }}
</div>
</div>
<div class="extra content">
<div class="ui mini labels">
{% for label in include.page.labels %}
<div class="ui basic label">{{ label }}</div>
{% endfor %}
</div>
</div>
</a>
================================================
FILE: _includes/essay-card.html
================================================
<!-- Used by theme-essays-builtin-1 -->
<div class="card">
<div class="content">
<span class="header">{{ include.page.title }}</span>
<div class="meta">
<span class="date">{{ include.page.date | date_to_string }}</span>
</div>
<div class="description">
{{ include.page.content | markdownify | strip_html | truncatewords: 40 }}
</div>
</div>
<div class="extra content">
<div class="ui mini labels">
{% for label in include.page.labels %}
<div class="ui basic label">{{ label }}</div>
{% endfor %}
</div>
</div>
<a class="ui bottom attached button" href="{{ site.baseurl}}{{ include.page.url }}">Read More</a>
</div>
================================================
FILE: _includes/essay-row.html
================================================
<!-- Used by theme-essays-builtin-2 -->
<div class="row">
<div style="text-align: center" class="three wide column">
<p style="margin-top: 10px" class="ui red label">{{ include.page.date | date_to_string }}</p>
</div>
<div class="ten wide column">
<h2 class="header">{{ include.page.title }}</h2>
<p>{{ include.page.content | markdownify | strip_html | truncatewords: 40 }}</p>
<p>
<div style="text-align: center" class="ui mini labels">
{% for label in include.page.labels %}
<div class="ui basic label">{{ label }}</div>
{% endfor %}
</div>
</p>
<div style="text-align: center">
<a class="ui basic button" href="{{ site.baseurl}}{{ include.page.url }}">Read More</a>
</div>
<hr style="margin-top: 20px">
</div>
</div>
================================================
FILE: _includes/footer.html
================================================
<!-- Always create iframes to embed videos if present. See: http://semantic-ui.com/modules/embed.html -->
<script>
$('.ui.embed').embed();
</script>
================================================
FILE: _includes/head.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">
<meta name="mobile-web-app-capable" content="yes">
<title>
{% if page.title %}
{{ page.title }} |
{% endif %}
{{ site.title }}
</title>
<!-- Load Javascript and CSS for Semantic UI -->
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<script src="{{ site.baseurl }}/css/semantic-ui/semantic.min.js"></script>
<link rel="stylesheet" href="{{ site.baseurl }}/css/semantic-ui/semantic.min.css">
<!-- Load Techfolio CSS customizations -->
<link rel="stylesheet" type="text/css" href="{{ site.baseurl}}/css/stylesheet-default.css">
<link rel="stylesheet" type="text/css" href="{{ site.baseurl}}/css/stylesheet-customizations.css">
<link rel="stylesheet" type="text/css" href="{{ site.baseurl}}/css/print-default.css" media="print">
<link rel="stylesheet" type="text/css" href="{{ site.baseurl}}/css/print-customizations.css" media="print">
<!-- Load a rouge theme from the sample themes in css/rouge.
See https://benhur07b.github.io/2017/03/25/add-syntax-highlighting-to-your-jekyll-site-with-rouge.html
-->
<link rel="stylesheet" type="text/css" href="{{ site.baseurl}}/css/rouge/{{ site.rouge-theme}}.css">
<!-- Load MathJax if 'mathjax: true' is found in your _config.yml. -->
{% if site.mathjax %}
<script type="text/javascript"
src="//cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
{% endif %}
</head>
================================================
FILE: _includes/header.html
================================================
<!-- if you want a global header, put the code here. -->
================================================
FILE: _includes/home-network-links.html
================================================
<!-- Used by theme-home-builtin-1,2,3 -->
{% for profile in site.data.bio.basics.profiles %}
<a href="{{ profile.url }}"> <i class="big {{ profile.network | downcase }} icon icon-color"></i> </a>
{% endfor %}
{% if site.data.bio.basics.email %}
<a href="mailto:{{ site.data.bio.basics.email }}"> <i class="big mail square icon icon-color"></i> </a>
{% endif %}
================================================
FILE: _includes/menubar.html
================================================
<!-- Used by all builtin themes. Now we list number of essays and projects. -->
{% assign essay_pages = site.pages | where: "type", "essay" | where_exp: "page", "page.draft != true" %}
{% assign project_pages = site.pages | where: "type", "project" | where_exp: "page", "page.draft != true" %}
{% assign num_essays = essay_pages.size %}
{% assign num_projects = project_pages.size %}
<div class="nonprintable">
<nav class="ui stackable menu">
<a href="{{ site.baseurl}}/" class="brand item">
<img class="ui avatar image" src="{{ site.data.bio.basics.picture }}"><span>{{ site.data.bio.basics.name }}</span>
</a>
{% if num_projects > 0 %}
<a href="{{ site.baseurl }}/projects" class=" {% if include.active == "projects" %} active {% endif %}item">Projects ({{ num_projects }})</a>
{% endif %}
{% if num_essays > 0 %}
<a href="{{ site.baseurl }}/essays" class=" {% if include.active == "essays" %} active {% endif %} item">Essays ({{ num_essays }})</a>
{% endif %}
<a href="{{ site.baseurl }}/bio" class=" {% if include.active == "bio" %} active {% endif %} item">{{ site.bio-page-label }}</a>
</nav>
</div>
================================================
FILE: _includes/project-card-1a.html
================================================
<!-- Used by theme-projects-builtin-1a, entire card is the link. -->
<a class="card" href="{% if page.projecturl %}{{ page.projecturl }}{% else %}{{ site.baseurl}}{{ include.page.url }}{% endif %}">
{% if include.page.image %}
<div class="image">
<img src="{{ site.baseurl }}/{{ include.page.image }}">
</div>
{% endif %}
<div class="content">
<span class="header">{{ include.page.title }}</span>
<div class="meta">
<span class="date">{{ include.page.date }}</span>
</div>
<div class="description">
{{ include.page.summary }}
</div>
</div>
<div class="extra content">
<div class="ui mini labels">
{% for label in include.page.labels %}
<div class="ui basic label">{{ label }}</div>
{% endfor %}
</div>
</div>
</a>
================================================
FILE: _includes/project-card.html
================================================
<!-- Used by theme-projects-builtin-1 -->
<div class="card">
{% if include.page.image %}
<div class="image">
<img src="{{ site.baseurl }}/{{ include.page.image }}">
</div>
{% endif %}
<div class="content">
<span class="header">{{ include.page.title }}</span>
<div class="meta">
<span class="date">{{ include.page.date }}</span>
</div>
<div class="description">
{{ include.page.summary }}
</div>
</div>
<div class="extra content">
<div class="ui mini labels">
{% for label in include.page.labels %}
<div class="ui basic label">{{ label }}</div>
{% endfor %}
</div>
</div>
{% if page.projecturl %}
<a class="ui bottom attached button" href="{{ page.projecturl }}">Read More</a>
{% else %}
<a class="ui bottom attached button" href="{{ site.baseurl}}{{ include.page.url }}">Read More</a>
{% endif %}
</div>
================================================
FILE: _includes/project-row.html
================================================
<!-- Used by theme-projects-builtin-2 -->
<div class="row">
<div style="text-align: center" class="three wide column">
{% if include.page.image %}
<img class="ui middle aligned medium circular image" src="{{ site.baseurl }}/{{ include.page.image }}">
{% endif %}
</div>
<div class="six wide column">
<h2 class="header no-bottom">{{ include.page.title }}</h2>
<p class="">{{ include.page.date }}</p>
<p>{{ include.page.summary }}</p>
<p>
<div style="text-align: center" class="ui mini labels">
{% for label in include.page.labels %}
<div class="ui basic label">{{ label }}</div>
{% endfor %}
</div>
</p>
<div style="text-align: center">
{% if page.projecturl %}
<a class="ui basic button" href="{{ page.projecturl }}">Read More</a>
{% else %}
<a class="ui basic button" href="{{ site.baseurl}}{{ include.page.url }}">Read More</a>
{% endif %}
</div>
<hr style="margin-top: 20px">
</div>
</div>
================================================
FILE: _includes/theme-bio-builtin-1.html
================================================
<div style="margin-top: 10px; " class="ui stackable grid container">
<div class="sixteen wide column no-bottom">
<h2 class="ui center aligned header no-bottom">{{ site.data.bio.basics.name }}</h2>
</div>
<div class="eight wide left aligned column">
{% include bio-network-links.html %}
</div>
<div class="eight wide right aligned column">
{% include bio-address.html %}
</div>
</div>
<div style="margin-bottom: 20px" class="ui stackable grid container">
{% include bio-interests-1.html %}
{% include bio-skills-1.html %}
{% include bio-education-1.html %}
{% include bio-work-1.html %}
{% include bio-volunteer-1.html %}
{% include bio-publications-1.html %}
{% include bio-awards-1.html %}
{% include bio-references-1.html %}
</div>
================================================
FILE: _includes/theme-bio-builtin-2.html
================================================
<div style="margin-top: 10px; margin-bottom: 20px" class="ui stackable grid container">
<div class="sixteen wide column no-bottom">
<h2 class="ui center aligned header no-bottom">{{ site.data.bio.basics.name }}</h2>
</div>
<div class="eight wide left aligned column">
{% include bio-network-links.html %}
</div>
<div class="eight wide right aligned column">
{% include bio-address.html %}
</div>
{% include bio-education-2.html %}
{% include bio-work-2.html %}
{% include bio-volunteer-2.html %}
{% include bio-publications-2.html %}
{% include bio-awards-2.html %}
</div>
================================================
FILE: _includes/theme-essays-builtin-1.html
================================================
<div style="padding-top: 20px" class="ui container ">
<div class="ui stackable centered four cards">
{% assign essay_pages = site.pages | where: "type", "essay" | sort: "date" | reverse %}
{% for page in essay_pages %}
{% unless page.draft %}
{% include essay-card.html page=page %}
{% endunless %}
{% endfor %}
</div>
</div>
================================================
FILE: _includes/theme-essays-builtin-1a.html
================================================
<div style="padding-top: 20px" class="ui container ">
<div class="ui stackable centered four cards">
{% assign essay_pages = site.pages | where: "type", "essay" | sort: "date" | reverse %}
{% for page in essay_pages %}
{% unless page.draft %}
{% include essay-card-1a.html page=page %}
{% endunless %}
{% endfor %}
</div>
</div>
================================================
FILE: _includes/theme-essays-builtin-2.html
================================================
<div style="padding-top: 20px" class="ui four column centered stackable grid container">
{% assign essay_pages = site.pages | where: "type", "essay" | sort: "date" | reverse %}
{% for page in essay_pages %}
{% unless page.draft %}
{% include essay-row.html page=page %}
{% endunless %}
{% endfor %}
</div>
================================================
FILE: _includes/theme-home-builtin-1.html
================================================
<!-- Home page design with small circular image bisecting card. -->
{% assign essay_pages = site.pages | where: "type", "essay" | where_exp: "page", "page.draft != true" %}
{% assign project_pages = site.pages | where: "type", "project" | where_exp: "page", "page.draft != true" %}
{% assign num_essays = essay_pages.size %}
{% assign num_projects = project_pages.size %}
<div style="height: 100%; margin-top: -75px" class="ui middle aligned grid ">
<div class="column">
<div style="position: relative; top: 75px; z-index: 1" class="ui fluid centered small circular image">
<img src="{{ site.data.bio.basics.picture }}">
</div>
<div style="max-width: 500px; padding-top: 75px; margin-top: 0px" class="ui fluid centered card">
<div class="center aligned content">
<span class="header">{{ site.data.bio.basics.name }}</span>
<div class="meta">
<span class="date">{{ site.data.bio.basics.label }}</span>
</div>
<div class="left aligned description">
{{ site.data.bio.basics.summary }}
</div>
</div>
<div class="center aligned content">
<div class="description">
Interests:
{% for interest in site.data.bio.interests %}
{{ interest.name }}{% if forloop.last != true %}, {% endif %}
{% endfor %}
</div>
</div>
<div class="center aligned extra content">
{% include home-network-links.html %}
</div>
<div class="center aligned content">
<a href="{{ site.baseurl}}/projects/">
<button class="ui basic button">Projects ({{ num_projects }})</button>
</a>
<a href="{{ site.baseurl}}/essays/">
<button class="ui basic button">Essays ({{ num_essays }})</button>
</a>
<a href="{{ site.baseurl}}/bio/">
<button class="ui basic button">{{ site.bio-page-label }}</button>
</a>
</div>
</div>
</div>
</div>
================================================
FILE: _includes/theme-home-builtin-2.html
================================================
<!-- Home page design with large image to left of bio info. -->
{% assign essay_pages = site.pages | where: "type", "essay" | where_exp: "page", "page.draft != true" %}
{% assign project_pages = site.pages | where: "type", "project" | where_exp: "page", "page.draft != true" %}
{% assign num_essays = essay_pages.size %}
{% assign num_projects = project_pages.size %}
<div style="height: 100%;" class="ui middle aligned two column centered stackable grid container">
<div style="text-align: center" class="column">
<div class="ui rounded image">
<img style="max-width: 300px" src="{{ site.data.bio.basics.picture }}">
</div>
</div>
<div class="column">
<h2 class="header no-bottom">{{ site.data.bio.basics.name }}</h2>
<p class="">{{ site.data.bio.basics.label }}</p>
<p class="">
{{ site.data.bio.basics.summary }}
</p>
<p>Interests:
{% for interest in site.data.bio.interests %}
{{ interest.name }}{% if forloop.last != true %}, {% endif %}
{% endfor %}
</p>
<p style="text-align: center">
{% include home-network-links.html %}
</p>
<p style="text-align: center">
<a href="{{ site.baseurl}}/projects/">
<button class="ui basic button">Projects ({{ num_projects }})</button>
</a>
<a href="{{ site.baseurl}}/essays/">
<button class="ui basic button">Essays ({{ num_essays }})</button>
</a>
<a href="{{ site.baseurl}}/bio/">
<button class="ui basic button">{{ site.bio-page-label }}</button>
</a>
</p>
</div>
</div>
================================================
FILE: _includes/theme-home-builtin-3.html
================================================
<!-- Home page design with card including image -->
{% assign essay_pages = site.pages | where: "type", "essay" | where_exp: "page", "page.draft != true" %}
{% assign project_pages = site.pages | where: "type", "project" | where_exp: "page", "page.draft != true" %}
{% assign num_essays = essay_pages.size %}
{% assign num_projects = project_pages.size %}
<div style="height: 100%" class="ui middle aligned grid ">
<div class="column">
<div style="max-width: 400px; margin-top: 0px" class="ui fluid centered card">
<div class="image">
<img src="{{ site.data.bio.basics.picture }}">
</div>
<div class="center aligned content">
<span class="header">{{ site.data.bio.basics.name }}</span>
<div class="meta">
<span class="date">{{ site.data.bio.basics.label }}</span>
</div>
<div class="left aligned description">
{{ site.data.bio.basics.summary }}
</div>
</div>
<div class="center aligned content">
<div class="description">
Interests:
{% for interest in site.data.bio.interests %}
{{ interest.name }}{% if forloop.last != true %}, {% endif %}
{% endfor %}
</div>
</div>
<div class="center aligned extra content">
{% include home-network-links.html %}
</div>
<div class="center aligned content">
<a href="{{ site.baseurl}}/projects/">
<button class="ui basic button">Projects ({{ num_projects }})</button>
</a>
<a href="{{ site.baseurl}}/essays/">
<button class="ui basic button">Essays ({{ num_essays }})</button>
</a>
<a href="{{ site.baseurl}}/bio/">
<button class="ui basic button">{{ site.bio-page-label }}</button>
</a>
</div>
</div>
</div>
</div>
================================================
FILE: _includes/theme-projects-builtin-1.html
================================================
<div style="padding-top: 20px" class="ui container ">
<div class="ui stackable centered four cards">
{% assign project_pages = site.pages | where: "type", "project" | sort: "date" | reverse %}
{% for page in project_pages %}
{% unless page.draft %}
{% include project-card.html page=page %}
{% endunless %}
{% endfor %}
</div>
</div>
================================================
FILE: _includes/theme-projects-builtin-1a.html
================================================
<!-- Like theme-projects-builtin-1, but uses project-card-2.html (i.e. entire card is a link). -->
<div style="padding-top: 20px" class="ui container ">
<div class="ui stackable centered four cards">
{% assign project_pages = site.pages | where: "type", "project" | sort: "date" | reverse %}
{% for page in project_pages %}
{% unless page.draft %}
{% include project-card-1a.html page=page %}
{% endunless %}
{% endfor %}
</div>
</div>
================================================
FILE: _includes/theme-projects-builtin-2.html
================================================
<div style="padding-top: 20px" class="ui four column centered stackable grid container">
{% assign project_pages = site.pages | where: "type", "project" | sort: "title" %}
{% for page in project_pages %}
{% unless page.draft %}
{% include project-row.html page=page %}
{% endunless %}
{% endfor %}
</div>
================================================
FILE: _layouts/bio.html
================================================
---
layout: default
---
{% include menubar.html active="bio"%}
{{ content }}
================================================
FILE: _layouts/default.html
================================================
<!DOCTYPE html>
<html>
{% include head.html %}
<body>
{{ content }}
{% include footer.html %}
</body>
</html>
================================================
FILE: _layouts/essay.html
================================================
---
layout: essays
---
<div style="margin-top: 20px; margin-bottom: 20px" class="ui text container">
<h1>{{ page.title }}</h1>
<span class="date">{{ page.date | date_to_string }}</span>
<hr>
{{ content }}
</div>
================================================
FILE: _layouts/essays.html
================================================
---
layout: default
---
{% include menubar.html active="essays" %}
{{ content }}
================================================
FILE: _layouts/missingpage.html
================================================
---
layout: default
---
{% include menubar.html active="" %}
<div style="padding-top: 20px" class="ui container ">
<p>I'm sorry, that URL could not be found. Perhaps you were looking for one of the following:</p>
<h3>Essays</h3>
<ul>
{% assign essay_pages = site.pages | where: "type", "essay" | sort: "date" | reverse %}
{% for page in essay_pages %}
<li><a href="{{ site.baseurl }}{{ page.url }}">{{ page.title }}</a></li>
{% endfor %}
</ul>
<h3>Projects</h3>
<ul>
{% assign project_pages = site.pages | where: "type", "project" | sort: "title" %}
{% for page in project_pages %}
<li><a href="{{ site.baseurl }}{{ page.url }}">{{ page.title }}</a></li>
{% endfor %}
</ul>
</div>
================================================
FILE: _layouts/project.html
================================================
---
layout: projects
---
<div style="margin-top: 20px; margin-bottom: 20px" class="ui text container">
<h1>{{ page.title }}</h1>
{{ content }}
</div>
================================================
FILE: _layouts/projects.html
================================================
---
layout: default
---
{% include menubar.html active="projects" %}
{{ content }}
================================================
FILE: bio/index.html
================================================
---
layout: bio
---
{% include {{ site.theme-bio }} %}
================================================
FILE: css/print-customizations.scss
================================================
---
# Provide front matter so Jekyll processes this file as SASS.
---
// Put your custom CSS for printing pages here.
================================================
FILE: css/print-default.scss
================================================
---
# Provide front matter so Jekyll processes this file as SASS.
---
@charset "utf-8";
// Used to remove menubar from page when printing.
.nonprintable {
display: none;
}
// Make text smaller, remove spacing between list items when printing.
@media print {
p, a, li {
font-size: 12px;
}
h1, h2.ui.header, h3.ui.header {
font-size: 14px;
}
a {
color: black;
}
ul li {
padding: 0px;
margin: 0px;
}
}
================================================
FILE: css/rouge/base16.css
================================================
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight, .highlight .w {
color: #303030;
}
.highlight .err {
color: #151515;
background-color: #ac4142;
}
.highlight .c, .highlight .cd, .highlight .cm, .highlight .c1, .highlight .cs {
color: #505050;
}
.highlight .cp {
color: #f4bf75;
}
.highlight .nt {
color: #f4bf75;
}
.highlight .o, .highlight .ow {
color: #d0d0d0;
}
.highlight .p, .highlight .pi {
color: #d0d0d0;
}
.highlight .gi {
color: #90a959;
}
.highlight .gd {
color: #ac4142;
}
.highlight .gh {
color: #6a9fb5;
background-color: #151515;
font-weight: bold;
}
.highlight .k, .highlight .kn, .highlight .kp, .highlight .kr, .highlight .kv {
color: #aa759f;
}
.highlight .kc {
color: #d28445;
}
.highlight .kt {
color: #d28445;
}
.highlight .kd {
color: #d28445;
}
.highlight .s, .highlight .sb, .highlight .sc, .highlight .sd, .highlight .s2, .highlight .sh, .highlight .sx, .highlight .s1 {
color: #90a959;
}
.highlight .sr {
color: #75b5aa;
}
.highlight .si {
color: #8f5536;
}
.highlight .se {
color: #8f5536;
}
.highlight .nn {
color: #f4bf75;
}
.highlight .nc {
color: #f4bf75;
}
.highlight .no {
color: #f4bf75;
}
.highlight .na {
color: #6a9fb5;
}
.highlight .m, .highlight .mf, .highlight .mh, .highlight .mi, .highlight .il, .highlight .mo, .highlight .mb, .highlight .mx {
color: #90a959;
}
.highlight .ss {
color: #90a959;
}
================================================
FILE: css/rouge/base16.dark.css
================================================
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight, .highlight .w {
color: #d0d0d0;
background-color: #151515;
}
.highlight .err {
color: #151515;
background-color: #ac4142;
}
.highlight .c, .highlight .cd, .highlight .cm, .highlight .c1, .highlight .cs {
color: #505050;
}
.highlight .cp {
color: #f4bf75;
}
.highlight .nt {
color: #f4bf75;
}
.highlight .o, .highlight .ow {
color: #d0d0d0;
}
.highlight .p, .highlight .pi {
color: #d0d0d0;
}
.highlight .gi {
color: #90a959;
}
.highlight .gd {
color: #ac4142;
}
.highlight .gh {
color: #6a9fb5;
background-color: #151515;
font-weight: bold;
}
.highlight .k, .highlight .kn, .highlight .kp, .highlight .kr, .highlight .kv {
color: #aa759f;
}
.highlight .kc {
color: #d28445;
}
.highlight .kt {
color: #d28445;
}
.highlight .kd {
color: #d28445;
}
.highlight .s, .highlight .sb, .highlight .sc, .highlight .sd, .highlight .s2, .highlight .sh, .highlight .sx, .highlight .s1 {
color: #90a959;
}
.highlight .sr {
color: #75b5aa;
}
.highlight .si {
color: #8f5536;
}
.highlight .se {
color: #8f5536;
}
.highlight .nn {
color: #f4bf75;
}
.highlight .nc {
color: #f4bf75;
}
.highlight .no {
color: #f4bf75;
}
.highlight .na {
color: #6a9fb5;
}
.highlight .m, .highlight .mf, .highlight .mh, .highlight .mi, .highlight .il, .highlight .mo, .highlight .mb, .highlight .mx {
color: #90a959;
}
.highlight .ss {
color: #90a959;
}
================================================
FILE: css/rouge/base16.light.css
================================================
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight, .highlight .w {
color: #303030;
}
.highlight .err {
color: #151515;
background-color: #ac4142;
}
.highlight .c, .highlight .cd, .highlight .cm, .highlight .c1, .highlight .cs {
color: #505050;
}
.highlight .cp {
color: #f4bf75;
}
.highlight .nt {
color: #f4bf75;
}
.highlight .o, .highlight .ow {
color: #d0d0d0;
}
.highlight .p, .highlight .pi {
color: #d0d0d0;
}
.highlight .gi {
color: #90a959;
}
.highlight .gd {
color: #ac4142;
}
.highlight .gh {
color: #6a9fb5;
background-color: #151515;
font-weight: bold;
}
.highlight .k, .highlight .kn, .highlight .kp, .highlight .kr, .highlight .kv {
color: #aa759f;
}
.highlight .kc {
color: #d28445;
}
.highlight .kt {
color: #d28445;
}
.highlight .kd {
color: #d28445;
}
.highlight .s, .highlight .sb, .highlight .sc, .highlight .sd, .highlight .s2, .highlight .sh, .highlight .sx, .highlight .s1 {
color: #90a959;
}
.highlight .sr {
color: #75b5aa;
}
.highlight .si {
color: #8f5536;
}
.highlight .se {
color: #8f5536;
}
.highlight .nn {
color: #f4bf75;
}
.highlight .nc {
color: #f4bf75;
}
.highlight .no {
color: #f4bf75;
}
.highlight .na {
color: #6a9fb5;
}
.highlight .m, .highlight .mf, .highlight .mh, .highlight .mi, .highlight .il, .highlight .mo, .highlight .mb, .highlight .mx {
color: #90a959;
}
.highlight .ss {
color: #90a959;
}
================================================
FILE: css/rouge/base16.solarized.css
================================================
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight, .highlight .w {
color: #586e75;
}
.highlight .err {
color: #002b36;
background-color: #dc322f;
}
.highlight .c, .highlight .cd, .highlight .cm, .highlight .c1, .highlight .cs {
color: #657b83;
}
.highlight .cp {
color: #b58900;
}
.highlight .nt {
color: #b58900;
}
.highlight .o, .highlight .ow {
color: #93a1a1;
}
.highlight .p, .highlight .pi {
color: #93a1a1;
}
.highlight .gi {
color: #859900;
}
.highlight .gd {
color: #dc322f;
}
.highlight .gh {
color: #268bd2;
background-color: #002b36;
font-weight: bold;
}
.highlight .k, .highlight .kn, .highlight .kp, .highlight .kr, .highlight .kv {
color: #6c71c4;
}
.highlight .kc {
color: #cb4b16;
}
.highlight .kt {
color: #cb4b16;
}
.highlight .kd {
color: #cb4b16;
}
.highlight .s, .highlight .sb, .highlight .sc, .highlight .sd, .highlight .s2, .highlight .sh, .highlight .sx, .highlight .s1 {
color: #859900;
}
.highlight .sr {
color: #2aa198;
}
.highlight .si {
color: #d33682;
}
.highlight .se {
color: #d33682;
}
.highlight .nn {
color: #b58900;
}
.highlight .nc {
color: #b58900;
}
.highlight .no {
color: #b58900;
}
.highlight .na {
color: #268bd2;
}
.highlight .m, .highlight .mf, .highlight .mh, .highlight .mi, .highlight .il, .highlight .mo, .highlight .mb, .highlight .mx {
color: #859900;
}
.highlight .ss {
color: #859900;
}
================================================
FILE: css/rouge/colorful.css
================================================
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight, .highlight .w {
color: #bbbbbb;
background-color: #000;
}
.highlight .c, .highlight .cd, .highlight .cm, .highlight .c1 {
color: #888;
}
.highlight .cp {
color: #579;
}
.highlight .cs {
color: #cc0000;
font-weight: bold;
}
.highlight .k, .highlight .kc, .highlight .kd, .highlight .kn, .highlight .kr, .highlight .kv {
color: #080;
font-weight: bold;
}
.highlight .kp {
color: #038;
}
.highlight .kt {
color: #339;
}
.highlight .o {
color: #333;
}
.highlight .ow {
color: #000;
font-weight: bold;
}
.highlight .nb, .highlight .bp {
color: #007020;
}
.highlight .nf {
color: #06B;
font-weight: bold;
}
.highlight .nc {
color: #B06;
font-weight: bold;
}
.highlight .nn {
color: #0e84b5;
font-weight: bold;
}
.highlight .ne {
color: #F00;
font-weight: bold;
}
.highlight .nv {
color: #963;
}
.highlight .vi {
color: #33B;
}
.highlight .vc {
color: #369;
}
.highlight .vg {
color: #d70;
font-weight: bold;
}
.highlight .no {
color: #036;
font-weight: bold;
}
.highlight .nl {
color: #970;
font-weight: bold;
}
.highlight .ni {
color: #800;
font-weight: bold;
}
.highlight .na {
color: #00C;
}
.highlight .nt {
color: #070;
}
.highlight .nd {
color: #555;
font-weight: bold;
}
.highlight .s, .highlight .sb, .highlight .s2, .highlight .sh, .highlight .s1 {
background-color: #fff0f0;
}
.highlight .sc {
color: #04D;
}
.highlight .sd {
color: #D42;
}
.highlight .si {
background-color: #eee;
}
.highlight .se {
color: #666;
font-weight: bold;
}
.highlight .sr {
color: #000;
background-color: #fff0ff;
}
.highlight .ss {
color: #A60;
}
.highlight .sx {
color: #D20;
}
.highlight .m, .highlight .mb, .highlight .mx {
color: #60E;
font-weight: bold;
}
.highlight .mi, .highlight .il {
color: #00D;
font-weight: bold;
}
.highlight .mf {
color: #60E;
font-weight: bold;
}
.highlight .mh {
color: #058;
font-weight: bold;
}
.highlight .mo {
color: #40E;
font-weight: bold;
}
.highlight .gh {
color: #000080;
font-weight: bold;
}
.highlight .gu {
color: #800080;
font-weight: bold;
}
.highlight .gd {
color: #A00000;
}
.highlight .gi {
color: #00A000;
}
.highlight .gr {
color: #FF0000;
}
.highlight .ge {
font-style: italic;
}
.highlight .gs {
font-weight: bold;
}
.highlight .gp {
color: #c65d09;
font-weight: bold;
}
.highlight .go {
color: #888;
}
.highlight .gt {
color: #04D;
}
.highlight .err {
color: #F00;
background-color: #FAA;
}
================================================
FILE: css/rouge/github.css
================================================
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight .cm {
color: #999988;
font-style: italic;
}
.highlight .cp {
color: #999999;
font-weight: bold;
}
.highlight .c1 {
color: #999988;
font-style: italic;
}
.highlight .cs {
color: #999999;
font-weight: bold;
font-style: italic;
}
.highlight .c, .highlight .cd {
color: #999988;
font-style: italic;
}
.highlight .err {
color: #a61717;
background-color: #e3d2d2;
}
.highlight .gd {
color: #000000;
background-color: #ffdddd;
}
.highlight .ge {
color: #000000;
font-style: italic;
}
.highlight .gr {
color: #aa0000;
}
.highlight .gh {
color: #999999;
}
.highlight .gi {
color: #000000;
background-color: #ddffdd;
}
.highlight .go {
color: #888888;
}
.highlight .gp {
color: #555555;
}
.highlight .gs {
font-weight: bold;
}
.highlight .gu {
color: #aaaaaa;
}
.highlight .gt {
color: #aa0000;
}
.highlight .kc {
color: #000000;
font-weight: bold;
}
.highlight .kd {
color: #000000;
font-weight: bold;
}
.highlight .kn {
color: #000000;
font-weight: bold;
}
.highlight .kp {
color: #000000;
font-weight: bold;
}
.highlight .kr {
color: #000000;
font-weight: bold;
}
.highlight .kt {
color: #445588;
font-weight: bold;
}
.highlight .k, .highlight .kv {
color: #000000;
font-weight: bold;
}
.highlight .mf {
color: #009999;
}
.highlight .mh {
color: #009999;
}
.highlight .il {
color: #009999;
}
.highlight .mi {
color: #009999;
}
.highlight .mo {
color: #009999;
}
.highlight .m, .highlight .mb, .highlight .mx {
color: #009999;
}
.highlight .sb {
color: #d14;
}
.highlight .sc {
color: #d14;
}
.highlight .sd {
color: #d14;
}
.highlight .s2 {
color: #d14;
}
.highlight .se {
color: #d14;
}
.highlight .sh {
color: #d14;
}
.highlight .si {
color: #d14;
}
.highlight .sx {
color: #d14;
}
.highlight .sr {
color: #009926;
}
.highlight .s1 {
color: #d14;
}
.highlight .ss {
color: #990073;
}
.highlight .s {
color: #d14;
}
.highlight .na {
color: #008080;
}
.highlight .bp {
color: #999999;
}
.highlight .nb {
color: #0086B3;
}
.highlight .nc {
color: #445588;
font-weight: bold;
}
.highlight .no {
color: #008080;
}
.highlight .nd {
color: #3c5d5d;
font-weight: bold;
}
.highlight .ni {
color: #800080;
}
.highlight .ne {
color: #990000;
font-weight: bold;
}
.highlight .nf {
color: #990000;
font-weight: bold;
}
.highlight .nl {
color: #990000;
font-weight: bold;
}
.highlight .nn {
color: #555555;
}
.highlight .nt {
color: #000080;
}
.highlight .vc {
color: #008080;
}
.highlight .vg {
color: #008080;
}
.highlight .vi {
color: #008080;
}
.highlight .nv {
color: #008080;
}
.highlight .ow {
color: #000000;
font-weight: bold;
}
.highlight .o {
color: #000000;
font-weight: bold;
}
.highlight .w {
color: #bbbbbb;
}
.highlight {
background-color: #f8f8f8;
}
================================================
FILE: css/rouge/gruvbox.css
================================================
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight, .highlight .w {
color: #fbf1c7;
background-color: #282828;
}
.highlight .err {
color: #fb4934;
background-color: #282828;
font-weight: bold;
}
.highlight .c, .highlight .cd, .highlight .cm, .highlight .c1, .highlight .cs {
color: #928374;
font-style: italic;
}
.highlight .cp {
color: #8ec07c;
}
.highlight .nt {
color: #fb4934;
}
.highlight .o, .highlight .ow {
color: #fbf1c7;
}
.highlight .p, .highlight .pi {
color: #fbf1c7;
}
.highlight .gi {
color: #b8bb26;
background-color: #282828;
}
.highlight .gd {
color: #fb4934;
background-color: #282828;
}
.highlight .gh {
color: #b8bb26;
font-weight: bold;
}
.highlight .k, .highlight .kn, .highlight .kp, .highlight .kr, .highlight .kv {
color: #fb4934;
}
.highlight .kc {
color: #d3869b;
}
.highlight .kt {
color: #fabd2f;
}
.highlight .kd {
color: #fe8019;
}
.highlight .s, .highlight .sb, .highlight .sc, .highlight .sd, .highlight .s2, .highlight .sh, .highlight .sx, .highlight .s1 {
color: #b8bb26;
font-style: italic;
}
.highlight .si {
color: #b8bb26;
font-style: italic;
}
.highlight .sr {
color: #b8bb26;
font-style: italic;
}
.highlight .se {
color: #fe8019;
}
.highlight .nn {
color: #8ec07c;
}
.highlight .nc {
color: #8ec07c;
}
.highlight .no {
color: #d3869b;
}
.highlight .na {
color: #b8bb26;
}
.highlight .m, .highlight .mf, .highlight .mh, .highlight .mi, .highlight .il, .highlight .mo, .highlight .mb, .highlight .mx {
color: #d3869b;
}
.highlight .ss {
color: #83a598;
}
================================================
FILE: css/rouge/igorpro.css
================================================
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight, .highlight .w {
color: #444444;
}
.highlight .cp {
color: #CC00A3;
}
.highlight .cs {
color: #CC00A3;
}
.highlight .c, .highlight .cd, .highlight .cm, .highlight .c1 {
color: #FF0000;
}
.highlight .kc {
color: #C34E00;
}
.highlight .kd {
color: #0000FF;
}
.highlight .kr {
color: #007575;
}
.highlight .k, .highlight .kn, .highlight .kp, .highlight .kt, .highlight .kv {
color: #0000FF;
}
.highlight .s, .highlight .sb, .highlight .sc, .highlight .sd, .highlight .s2, .highlight .se, .highlight .sh, .highlight .si, .highlight .sx, .highlight .sr, .highlight .s1, .highlight .ss {
color: #009C00;
}
.highlight .nb, .highlight .bp {
color: #C34E00;
}
================================================
FILE: css/rouge/molokai.css
================================================
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight .c, .highlight .cd {
color: #5e5d83;
font-style: italic;
}
.highlight .cm {
color: #5e5d83;
font-style: italic;
}
.highlight .c1 {
color: #5e5d83;
font-style: italic;
}
.highlight .cp {
color: #465457;
font-weight: bold;
}
.highlight .cs {
color: #465457;
font-weight: bold;
font-style: italic;
}
.highlight .err {
color: #f8f8f2;
background-color: #403d3d;
}
.highlight .gi {
color: #a6e22e;
}
.highlight .gd {
color: #f92672;
}
.highlight .ge {
color: #1b1d1e;
font-style: italic;
}
.highlight .gr {
color: #f92672;
}
.highlight .gt {
color: #f92672;
}
.highlight .gh {
color: #403d3d;
}
.highlight .go {
color: #403d3d;
}
.highlight .gp {
color: #66d9ef;
}
.highlight .gs {
font-weight: bold;
}
.highlight .gu {
color: #465457;
}
.highlight .k, .highlight .kv {
color: #66d9ef;
font-weight: bold;
}
.highlight .kc {
color: #66d9ef;
font-weight: bold;
}
.highlight .kd {
color: #66d9ef;
font-weight: bold;
}
.highlight .kp {
color: #66d9ef;
font-weight: bold;
}
.highlight .kr {
color: #66d9ef;
font-weight: bold;
}
.highlight .kt {
color: #66d9ef;
font-weight: bold;
}
.highlight .kn {
color: #f92672;
font-weight: bold;
}
.highlight .ow {
color: #f92672;
font-weight: bold;
}
.highlight .o {
color: #f92672;
font-weight: bold;
}
.highlight .mf {
color: #af87ff;
}
.highlight .mh {
color: #af87ff;
}
.highlight .il {
color: #af87ff;
}
.highlight .mi {
color: #af87ff;
}
.highlight .mo {
color: #af87ff;
}
.highlight .m, .highlight .mb, .highlight .mx {
color: #af87ff;
}
.highlight .se {
color: #af87ff;
}
.highlight .sb {
color: #d7d787;
}
.highlight .sc {
color: #d7d787;
}
.highlight .sd {
color: #d7d787;
}
.highlight .s2 {
color: #d7d787;
}
.highlight .sh {
color: #d7d787;
}
.highlight .si {
color: #d7d787;
}
.highlight .sx {
color: #d7d787;
}
.highlight .sr {
color: #d7d787;
}
.highlight .s1 {
color: #d7d787;
}
.highlight .ss {
color: #d7d787;
}
.highlight .s {
color: #d7d787;
}
.highlight .na {
color: #a6e22e;
}
.highlight .nc {
color: #a6e22e;
font-weight: bold;
}
.highlight .nd {
color: #a6e22e;
font-weight: bold;
}
.highlight .ne {
color: #a6e22e;
font-weight: bold;
}
.highlight .nf {
color: #a6e22e;
font-weight: bold;
}
.highlight .no {
color: #66d9ef;
}
.highlight .bp {
color: #f8f8f2;
}
.highlight .nb {
color: #f8f8f2;
}
.highlight .ni {
color: #f8f8f2;
}
.highlight .nn {
color: #f8f8f2;
}
.highlight .vc {
color: #f8f8f2;
}
.highlight .vg {
color: #f8f8f2;
}
.highlight .vi {
color: #f8f8f2;
}
.highlight .nv {
color: #f8f8f2;
}
.highlight .w {
color: #f8f8f2;
}
.highlight .nl {
color: #f8f8f2;
font-weight: bold;
}
.highlight .nt {
color: #f92672;
}
.highlight {
color: #f8f8f2;
background-color: #1b1d1e;
}
================================================
FILE: css/rouge/monokai.css
================================================
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight .c, .highlight .cd {
color: #75715e;
font-style: italic;
}
.highlight .cm {
color: #75715e;
font-style: italic;
}
.highlight .c1 {
color: #75715e;
font-style: italic;
}
.highlight .cp {
color: #75715e;
font-weight: bold;
}
.highlight .cs {
color: #75715e;
font-weight: bold;
font-style: italic;
}
.highlight .err {
color: #960050;
background-color: #1e0010;
}
.highlight .gi {
color: #ffffff;
background-color: #324932;
}
.highlight .gd {
color: #ffffff;
background-color: #493131;
}
.highlight .ge {
color: #000000;
font-style: italic;
}
.highlight .gr {
color: #aa0000;
}
.highlight .gt {
color: #aa0000;
}
.highlight .gh {
color: #999999;
}
.highlight .go {
color: #888888;
}
.highlight .gp {
color: #555555;
}
.highlight .gs {
font-weight: bold;
}
.highlight .gu {
color: #aaaaaa;
}
.highlight .k, .highlight .kv {
color: #66d9ef;
font-weight: bold;
}
.highlight .kc {
color: #66d9ef;
font-weight: bold;
}
.highlight .kd {
color: #66d9ef;
font-weight: bold;
}
.highlight .kp {
color: #66d9ef;
font-weight: bold;
}
.highlight .kr {
color: #66d9ef;
font-weight: bold;
}
.highlight .kt {
color: #66d9ef;
font-weight: bold;
}
.highlight .kn {
color: #f92672;
font-weight: bold;
}
.highlight .ow {
color: #f92672;
font-weight: bold;
}
.highlight .o {
color: #f92672;
font-weight: bold;
}
.highlight .mf {
color: #ae81ff;
}
.highlight .mh {
color: #ae81ff;
}
.highlight .il {
color: #ae81ff;
}
.highlight .mi {
color: #ae81ff;
}
.highlight .mo {
color: #ae81ff;
}
.highlight .m, .highlight .mb, .highlight .mx {
color: #ae81ff;
}
.highlight .se {
color: #ae81ff;
}
.highlight .sb {
color: #e6db74;
}
.highlight .sc {
color: #e6db74;
}
.highlight .sd {
color: #e6db74;
}
.highlight .s2 {
color: #e6db74;
}
.highlight .sh {
color: #e6db74;
}
.highlight .si {
color: #e6db74;
}
.highlight .sx {
color: #e6db74;
}
.highlight .sr {
color: #e6db74;
}
.highlight .s1 {
color: #e6db74;
}
.highlight .ss {
color: #e6db74;
}
.highlight .s {
color: #e6db74;
}
.highlight .na {
color: #a6e22e;
}
.highlight .nc {
color: #a6e22e;
font-weight: bold;
}
.highlight .nd {
color: #a6e22e;
font-weight: bold;
}
.highlight .ne {
color: #a6e22e;
font-weight: bold;
}
.highlight .nf {
color: #a6e22e;
font-weight: bold;
}
.highlight .no {
color: #66d9ef;
}
.highlight .bp {
color: #f8f8f2;
}
.highlight .nb {
color: #f8f8f2;
}
.highlight .ni {
color: #f8f8f2;
}
.highlight .nn {
color: #f8f8f2;
}
.highlight .vc {
color: #f8f8f2;
}
.highlight .vg {
color: #f8f8f2;
}
.highlight .vi {
color: #f8f8f2;
}
.highlight .nv {
color: #f8f8f2;
}
.highlight .w {
color: #f8f8f2;
}
.highlight .nl {
color: #f8f8f2;
font-weight: bold;
}
.highlight .nt {
color: #f92672;
}
.highlight {
color: #f8f8f2;
background-color: #49483e;
}
================================================
FILE: css/rouge/thankful_eyes.css
================================================
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight {
color: #faf6e4;
background-color: #122b3b;
}
.highlight .gl {
color: #dee5e7;
background-color: #4e5d62;
}
.highlight .gp {
color: #a8e1fe;
font-weight: bold;
}
.highlight .c, .highlight .cd, .highlight .cm, .highlight .c1, .highlight .cs {
color: #6c8b9f;
font-style: italic;
}
.highlight .cp {
color: #b2fd6d;
font-weight: bold;
font-style: italic;
}
.highlight .err {
color: #fefeec;
background-color: #cc0000;
}
.highlight .gr {
color: #cc0000;
font-weight: bold;
font-style: italic;
}
.highlight .k, .highlight .kd, .highlight .kv {
color: #f6dd62;
font-weight: bold;
}
.highlight .o, .highlight .ow {
color: #4df4ff;
font-weight: bold;
}
.highlight .p, .highlight .pi {
color: #4df4ff;
}
.highlight .gd {
color: #cc0000;
}
.highlight .gi {
color: #b2fd6d;
}
.highlight .ge {
font-style: italic;
}
.highlight .gs {
font-weight: bold;
}
.highlight .gt {
color: #dee5e7;
background-color: #4e5d62;
}
.highlight .kc {
color: #f696db;
font-weight: bold;
}
.highlight .kn {
color: #ffb000;
font-weight: bold;
}
.highlight .kp {
color: #ffb000;
font-weight: bold;
}
.highlight .kr {
color: #ffb000;
font-weight: bold;
}
.highlight .gh {
color: #ffb000;
font-weight: bold;
}
.highlight .gu {
color: #ffb000;
font-weight: bold;
}
.highlight .kt {
color: #b2fd6d;
font-weight: bold;
}
.highlight .no {
color: #b2fd6d;
font-weight: bold;
}
.highlight .nc {
color: #b2fd6d;
font-weight: bold;
}
.highlight .nd {
color: #b2fd6d;
font-weight: bold;
}
.highlight .nn {
color: #b2fd6d;
font-weight: bold;
}
.highlight .bp {
color: #b2fd6d;
font-weight: bold;
}
.highlight .ne {
color: #b2fd6d;
font-weight: bold;
}
.highlight .nl {
color: #ffb000;
font-weight: bold;
}
.highlight .nt {
color: #ffb000;
font-weight: bold;
}
.highlight .m, .highlight .mf, .highlight .mh, .highlight .mi, .highlight .il, .highlight .mo, .highlight .mb, .highlight .mx {
color: #f696db;
font-weight: bold;
}
.highlight .ld {
color: #f696db;
font-weight: bold;
}
.highlight .ss {
color: #f696db;
font-weight: bold;
}
.highlight .s, .highlight .sb, .highlight .sd, .highlight .s2, .highlight .sh, .highlight .sx, .highlight .sr, .highlight .s1 {
color: #fff0a6;
font-weight: bold;
}
.highlight .se {
color: #4df4ff;
font-weight: bold;
}
.highlight .sc {
color: #4df4ff;
font-weight: bold;
}
.highlight .si {
color: #4df4ff;
font-weight: bold;
}
.highlight .nb {
font-weight: bold;
}
.highlight .ni {
color: #999999;
font-weight: bold;
}
.highlight .w {
color: #BBBBBB;
}
.highlight .go {
color: #BBBBBB;
}
.highlight .nf {
color: #a8e1fe;
}
.highlight .py {
color: #a8e1fe;
}
.highlight .na {
color: #a8e1fe;
}
.highlight .nv, .highlight .vc, .highlight .vg, .highlight .vi {
color: #a8e1fe;
font-weight: bold;
}
================================================
FILE: css/rouge/tulip.css
================================================
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight {
color: #FFFFFF;
background-color: #231529;
}
.highlight .c, .highlight .cd, .highlight .cm, .highlight .c1, .highlight .cs {
color: #6D6E70;
font-style: italic;
}
.highlight .cp {
color: #41ff5b;
font-weight: bold;
font-style: italic;
}
.highlight .err {
color: #FFFFFF;
background-color: #CC0000;
}
.highlight .gr {
color: #FFFFFF;
background-color: #CC0000;
}
.highlight .k, .highlight .kd, .highlight .kv {
color: #FFF02A;
font-weight: bold;
}
.highlight .o, .highlight .ow {
color: #41ff5b;
}
.highlight .p, .highlight .pi {
color: #41ff5b;
}
.highlight .gd {
color: #CC0000;
}
.highlight .gi {
color: #3FB34F;
}
.highlight .ge {
font-style: italic;
}
.highlight .gs {
font-weight: bold;
}
.highlight .gt {
color: #FFFFFF;
background-color: #766DAF;
}
.highlight .gl {
color: #FFFFFF;
background-color: #766DAF;
}
.highlight .kc {
color: #9f93e6;
font-weight: bold;
}
.highlight .kn {
color: #FFFFFF;
font-weight: bold;
}
.highlight .kp {
color: #FFFFFF;
font-weight: bold;
}
.highlight .kr {
color: #FFFFFF;
font-weight: bold;
}
.highlight .gh {
color: #FFFFFF;
font-weight: bold;
}
.highlight .gu {
color: #FFFFFF;
font-weight: bold;
}
.highlight .kt {
color: #FAAF4C;
font-weight: bold;
}
.highlight .no {
color: #FAAF4C;
font-weight: bold;
}
.highlight .nc {
color: #FAAF4C;
font-weight: bold;
}
.highlight .nd {
color: #FAAF4C;
font-weight: bold;
}
.highlight .nn {
color: #FAAF4C;
font-weight: bold;
}
.highlight .bp {
color: #FAAF4C;
font-weight: bold;
}
.highlight .ne {
color: #FAAF4C;
font-weight: bold;
}
.highlight .nl {
color: #9f93e6;
font-weight: bold;
}
.highlight .nt {
color: #9f93e6;
font-weight: bold;
}
.highlight .m, .highlight .mf, .highlight .mh, .highlight .mi, .highlight .il, .highlight .mo, .highlight .mb, .highlight .mx {
color: #9f93e6;
font-weight: bold;
}
.highlight .ld {
color: #9f93e6;
font-weight: bold;
}
.highlight .ss {
color: #9f93e6;
font-weight: bold;
}
.highlight .s, .highlight .sb, .highlight .sd, .highlight .s2, .highlight .sh, .highlight .sx, .highlight .sr, .highlight .s1 {
color: #fff0a6;
font-weight: bold;
}
.highlight .se {
color: #FAAF4C;
font-weight: bold;
}
.highlight .sc {
color: #FAAF4C;
font-weight: bold;
}
.highlight .si {
color: #FAAF4C;
font-weight: bold;
}
.highlight .nb {
font-weight: bold;
}
.highlight .ni {
color: #999999;
font-weight: bold;
}
.highlight .w {
color: #BBBBBB;
}
.highlight .nf {
color: #41ff5b;
}
.highlight .py {
color: #41ff5b;
}
.highlight .na {
color: #41ff5b;
}
.highlight .nv, .highlight .vc, .highlight .vg, .highlight .vi {
color: #41ff5b;
font-weight: bold;
}
================================================
FILE: css/semantic-ui/components/accordion.css
================================================
/*!
* # Semantic UI 2.2.4 - Accordion
* http://github.com/semantic-org/semantic-ui/
*
*
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
/*******************************
Accordion
*******************************/
.ui.accordion,
.ui.accordion .accordion {
max-width: 100%;
}
.ui.accordion .accordion {
margin: 1em 0em 0em;
padding: 0em;
}
/* Title */
.ui.accordion .title,
.ui.accordion .accordion .title {
cursor: pointer;
}
/* Default Styling */
.ui.accordion .title:not(.ui) {
padding: 0.5em 0em;
font-family: 'Open Sans', 'Helvetica Neue', Arial, Helvetica, sans-serif;
font-size: 1em;
color: rgba(0, 0, 0, 0.87);
}
/* Content */
.ui.accordion .title ~ .content,
.ui.accordion .accordion .title ~ .content {
display: none;
}
/* Default Styling */
.ui.accordion:not(.styled) .title ~ .content:not(.ui),
.ui.accordion:not(.styled) .accordion .title ~ .content:not(.ui) {
margin: '';
padding: 0.5em 0em 1em;
}
.ui.accordion:not(.styled) .title ~ .content:not(.ui):last-child {
padding-bottom: 0em;
}
/* Arrow */
.ui.accordion .title .dropdown.icon,
.ui.accordion .accordion .title .dropdown.icon {
display: inline-block;
float: none;
opacity: 1;
width: 1.25em;
height: 1em;
margin: 0em 0.25rem 0em 0rem;
padding: 0em;
font-size: 1em;
-webkit-transition: opacity 0.1s ease, -webkit-transform 0.1s ease;
transition: opacity 0.1s ease, -webkit-transform 0.1s ease;
transition: transform 0.1s ease, opacity 0.1s ease;
transition: transform 0.1s ease, opacity 0.1s ease, -webkit-transform 0.1s ease;
vertical-align: baseline;
-webkit-transform: none;
transform: none;
}
/*--------------
Coupling
---------------*/
/* Menu */
.ui.accordion.menu .item .title {
display: block;
padding: 0em;
}
.ui.accordion.menu .item .title > .dropdown.icon {
float: right;
margin: 0.21425em 0em 0em 1em;
-webkit-transform: rotate(180deg);
transform: rotate(180deg);
}
/* Header */
.ui.accordion .ui.header .dropdown.icon {
font-size: 1em;
margin: 0em 0.25rem 0em 0rem;
}
/*******************************
States
*******************************/
.ui.accordion .active.title .dropdown.icon,
.ui.accordion .accordion .active.title .dropdown.icon {
-webkit-transform: rotate(90deg);
transform: rotate(90deg);
}
.ui.accordion.menu .item .active.title > .dropdown.icon {
-webkit-transform: rotate(90deg);
transform: rotate(90deg);
}
/*******************************
Types
*******************************/
/*--------------
Styled
---------------*/
.ui.styled.accordion {
width: 600px;
}
.ui.styled.accordion,
.ui.styled.accordion .accordion {
border-radius: 0.28571429rem;
background: #FFFFFF;
box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15);
}
.ui.styled.accordion .title,
.ui.styled.accordion .accordion .title {
margin: 0em;
padding: 0.75em 1em;
color: rgba(0, 0, 0, 0.4);
font-weight: bold;
border-top: 1px solid rgba(34, 36, 38, 0.15);
-webkit-transition: background 0.1s ease, color 0.1s ease;
transition: background 0.1s ease, color 0.1s ease;
}
.ui.styled.accordion > .title:first-child,
.ui.styled.accordion .accordion .title:first-child {
border-top: none;
}
/* Content */
.ui.styled.accordion .content,
.ui.styled.accordion .accordion .content {
margin: 0em;
padding: 0.5em 1em 1.5em;
}
.ui.styled.accordion .accordion .content {
padding: 0em;
padding: 0.5em 1em 1.5em;
}
/* Hover */
.ui.styled.accordion .title:hover,
.ui.styled.accordion .active.title,
.ui.styled.accordion .accordion .title:hover,
.ui.styled.accordion .accordion .active.title {
background: transparent;
color: rgba(0, 0, 0, 0.87);
}
.ui.styled.accordion .accordion .title:hover,
.ui.styled.accordion .accordion .active.title {
background: transparent;
color: rgba(0, 0, 0, 0.87);
}
/* Active */
.ui.styled.accordion .active.title {
background: transparent;
color: rgba(0, 0, 0, 0.95);
}
.ui.styled.accordion .accordion .active.title {
background: transparent;
color: rgba(0, 0, 0, 0.95);
}
/*******************************
States
*******************************/
/*--------------
Active
---------------*/
.ui.accordion .active.content,
.ui.accordion .accordion .active.content {
display: block;
}
/*******************************
Variations
*******************************/
/*--------------
Fluid
---------------*/
.ui.fluid.accordion,
.ui.fluid.accordion .accordion {
width: 100%;
}
/*--------------
Inverted
---------------*/
.ui.inverted.accordion .title:not(.ui) {
color: rgba(255, 255, 255, 0.9);
}
/*******************************
Theme Overrides
*******************************/
@font-face {
font-family: 'Accordion';
src: url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMggjB5AAAAC8AAAAYGNtYXAPfOIKAAABHAAAAExnYXNwAAAAEAAAAWgAAAAIZ2x5Zryj6HgAAAFwAAAAyGhlYWT/0IhHAAACOAAAADZoaGVhApkB5wAAAnAAAAAkaG10eAJuABIAAAKUAAAAGGxvY2EAjABWAAACrAAAAA5tYXhwAAgAFgAAArwAAAAgbmFtZfC1n04AAALcAAABPHBvc3QAAwAAAAAEGAAAACAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADw2gHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAKAAgAAgACAAEAIPDa//3//wAAAAAAIPDZ//3//wAB/+MPKwADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQASAEkAtwFuABMAADc0PwE2FzYXFh0BFAcGJwYvASY1EgaABQgHBQYGBQcIBYAG2wcGfwcBAQcECf8IBAcBAQd/BgYAAAAAAQAAAEkApQFuABMAADcRNDc2MzIfARYVFA8BBiMiJyY1AAUGBwgFgAYGgAUIBwYFWwEACAUGBoAFCAcFgAYGBQcAAAABAAAAAQAAqWYls18PPPUACwIAAAAAAM/9o+4AAAAAz/2j7gAAAAAAtwFuAAAACAACAAAAAAAAAAEAAAHg/+AAAAIAAAAAAAC3AAEAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAQAAAAC3ABIAtwAAAAAAAAAKABQAHgBCAGQAAAABAAAABgAUAAEAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAADgCuAAEAAAAAAAEADAAAAAEAAAAAAAIADgBAAAEAAAAAAAMADAAiAAEAAAAAAAQADABOAAEAAAAAAAUAFgAMAAEAAAAAAAYABgAuAAEAAAAAAAoANABaAAMAAQQJAAEADAAAAAMAAQQJAAIADgBAAAMAAQQJAAMADAAiAAMAAQQJAAQADABOAAMAAQQJAAUAFgAMAAMAAQQJAAYADAA0AAMAAQQJAAoANABaAHIAYQB0AGkAbgBnAFYAZQByAHMAaQBvAG4AIAAxAC4AMAByAGEAdABpAG4AZ3JhdGluZwByAGEAdABpAG4AZwBSAGUAZwB1AGwAYQByAHIAYQB0AGkAbgBnAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format('truetype'), url(data:application/font-woff;charset=utf-8;base64,d09GRk9UVE8AAASwAAoAAAAABGgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABDRkYgAAAA9AAAAS0AAAEtFpovuE9TLzIAAAIkAAAAYAAAAGAIIweQY21hcAAAAoQAAABMAAAATA984gpnYXNwAAAC0AAAAAgAAAAIAAAAEGhlYWQAAALYAAAANgAAADb/0IhHaGhlYQAAAxAAAAAkAAAAJAKZAedobXR4AAADNAAAABgAAAAYAm4AEm1heHAAAANMAAAABgAAAAYABlAAbmFtZQAAA1QAAAE8AAABPPC1n05wb3N0AAAEkAAAACAAAAAgAAMAAAEABAQAAQEBB3JhdGluZwABAgABADr4HAL4GwP4GAQeCgAZU/+Lix4KABlT/4uLDAeLa/iU+HQFHQAAAHkPHQAAAH4RHQAAAAkdAAABJBIABwEBBw0PERQZHnJhdGluZ3JhdGluZ3UwdTF1MjB1RjBEOXVGMERBAAACAYkABAAGAQEEBwoNVp38lA78lA78lA77lA773Z33bxWLkI2Qj44I9xT3FAWOj5CNkIuQi4+JjoePiI2Gi4YIi/uUBYuGiYeHiIiHh4mGi4aLho2Ijwj7FPcUBYeOiY+LkAgO+92L5hWL95QFi5CNkI6Oj4+PjZCLkIuQiY6HCPcU+xQFj4iNhouGi4aJh4eICPsU+xQFiIeGiYaLhouHjYePiI6Jj4uQCA74lBT4lBWLDAoAAAAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADw2gHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAKAAgAAgACAAEAIPDa//3//wAAAAAAIPDZ//3//wAB/+MPKwADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAEAADfYOJZfDzz1AAsCAAAAAADP/aPuAAAAAM/9o+4AAAAAALcBbgAAAAgAAgAAAAAAAAABAAAB4P/gAAACAAAAAAAAtwABAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAEAAAAAtwASALcAAAAAUAAABgAAAAAADgCuAAEAAAAAAAEADAAAAAEAAAAAAAIADgBAAAEAAAAAAAMADAAiAAEAAAAAAAQADABOAAEAAAAAAAUAFgAMAAEAAAAAAAYABgAuAAEAAAAAAAoANABaAAMAAQQJAAEADAAAAAMAAQQJAAIADgBAAAMAAQQJAAMADAAiAAMAAQQJAAQADABOAAMAAQQJAAUAFgAMAAMAAQQJAAYADAA0AAMAAQQJAAoANABaAHIAYQB0AGkAbgBnAFYAZQByAHMAaQBvAG4AIAAxAC4AMAByAGEAdABpAG4AZ3JhdGluZwByAGEAdABpAG4AZwBSAGUAZwB1AGwAYQByAHIAYQB0AGkAbgBnAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format('woff');
font-weight: normal;
font-style: normal;
}
/* Dropdown Icon */
.ui.accordion .title .dropdown.icon,
.ui.accordion .accordion .title .dropdown.icon {
font-family: Accordion;
line-height: 1;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
font-weight: normal;
font-style: normal;
text-align: center;
}
.ui.accordion .title .dropdown.icon:before,
.ui.accordion .accordion .title .dropdown.icon:before {
content: '\f0da' /*rtl:'\f0d9'*/;
}
/*******************************
User Overrides
*******************************/
================================================
FILE: css/semantic-ui/components/accordion.js
================================================
/*!
* # Semantic UI 2.2.4 - Accordion
* http://github.com/semantic-org/semantic-ui/
*
*
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
;(function ($, window, document, undefined) {
"use strict";
window = (typeof window != 'undefined' && window.Math == Math)
? window
: (typeof self != 'undefined' && self.Math == Math)
? self
: Function('return this')()
;
$.fn.accordion = function(parameters) {
var
$allModules = $(this),
time = new Date().getTime(),
performance = [],
query = arguments[0],
methodInvoked = (typeof query == 'string'),
queryArguments = [].slice.call(arguments, 1),
requestAnimationFrame = window.requestAnimationFrame
|| window.mozRequestAnimationFrame
|| window.webkitRequestAnimationFrame
|| window.msRequestAnimationFrame
|| function(callback) { setTimeout(callback, 0); },
returnedValue
;
$allModules
.each(function() {
var
settings = ( $.isPlainObject(parameters) )
? $.extend(true, {}, $.fn.accordion.settings, parameters)
: $.extend({}, $.fn.accordion.settings),
className = settings.className,
namespace = settings.namespace,
selector = settings.selector,
error = settings.error,
eventNamespace = '.' + namespace,
moduleNamespace = 'module-' + namespace,
moduleSelector = $allModules.selector || '',
$module = $(this),
$title = $module.find(selector.title),
$content = $module.find(selector.content),
element = this,
instance = $module.data(moduleNamespace),
observer,
module
;
module = {
initialize: function() {
module.debug('Initializing', $module);
module.bind.events();
if(settings.observeChanges) {
module.observeChanges();
}
module.instantiate();
},
instantiate: function() {
instance = module;
$module
.data(moduleNamespace, module)
;
},
destroy: function() {
module.debug('Destroying previous instance', $module);
$module
.off(eventNamespace)
.removeData(moduleNamespace)
;
},
refresh: function() {
$title = $module.find(selector.title);
$content = $module.find(selector.content);
},
observeChanges: function() {
if('MutationObserver' in window) {
observer = new MutationObserver(function(mutations) {
module.debug('DOM tree modified, updating selector cache');
module.refresh();
});
observer.observe(element, {
childList : true,
subtree : true
});
module.debug('Setting up mutation observer', observer);
}
},
bind: {
events: function() {
module.debug('Binding delegated events');
$module
.on(settings.on + eventNamespace, selector.trigger, module.event.click)
;
}
},
event: {
click: function() {
module.toggle.call(this);
}
},
toggle: function(query) {
var
$activeTitle = (query !== undefined)
? (typeof query === 'number')
? $title.eq(query)
: $(query).closest(selector.title)
: $(this).closest(selector.title),
$activeContent = $activeTitle.next($content),
isAnimating = $activeContent.hasClass(className.animating),
isActive = $activeContent.hasClass(className.active),
isOpen = (isActive && !isAnimating),
isOpening = (!isActive && isAnimating)
;
module.debug('Toggling visibility of content', $activeTitle);
if(isOpen || isOpening) {
if(settings.collapsible) {
module.close.call($activeTitle);
}
else {
module.debug('Cannot close accordion content collapsing is disabled');
}
}
else {
module.open.call($activeTitle);
}
},
open: function(query) {
var
$activeTitle = (query !== undefined)
? (typeof query === 'number')
? $title.eq(query)
: $(query).closest(selector.title)
: $(this).closest(selector.title),
$activeContent = $activeTitle.next($content),
isAnimating = $activeContent.hasClass(className.animating),
isActive = $activeContent.hasClass(className.active),
isOpen = (isActive || isAnimating)
;
if(isOpen) {
module.debug('Accordion already open, skipping', $activeContent);
return;
}
module.debug('Opening accordion content', $activeTitle);
settings.onOpening.call($activeContent);
if(settings.exclusive) {
module.closeOthers.call($activeTitle);
}
$activeTitle
.addClass(className.active)
;
$activeContent
.stop(true, true)
.addClass(className.animating)
;
if(settings.animateChildren) {
if($.fn.transition !== undefined && $module.transition('is supported')) {
$activeContent
.children()
.transition({
animation : 'fade in',
queue : false,
useFailSafe : true,
debug : settings.debug,
verbose : settings.verbose,
duration : settings.duration
})
;
}
else {
$activeContent
.children()
.stop(true, true)
.animate({
opacity: 1
}, settings.duration, module.resetOpacity)
;
}
}
$activeContent
.slideDown(settings.duration, settings.easing, function() {
$activeContent
.removeClass(className.animating)
.addClass(className.active)
;
module.reset.display.call(this);
settings.onOpen.call(this);
settings.onChange.call(this);
})
;
},
close: function(query) {
var
$activeTitle = (query !== undefined)
? (typeof query === 'number')
? $title.eq(query)
: $(query).closest(selector.title)
: $(this).closest(selector.title),
$activeContent = $activeTitle.next($content),
isAnimating = $activeContent.hasClass(className.animating),
isActive = $activeContent.hasClass(className.active),
isOpening = (!isActive && isAnimating),
isClosing = (isActive && isAnimating)
;
if((isActive || isOpening) && !isClosing) {
module.debug('Closing accordion content', $activeContent);
settings.onClosing.call($activeContent);
$activeTitle
.removeClass(className.active)
;
$activeContent
.stop(true, true)
.addClass(className.animating)
;
if(settings.animateChildren) {
if($.fn.transition !== undefined && $module.transition('is supported')) {
$activeContent
.children()
.transition({
animation : 'fade out',
queue : false,
useFailSafe : true,
debug : settings.debug,
verbose : settings.verbose,
duration : settings.duration
})
;
}
else {
$activeContent
.children()
.stop(true, true)
.animate({
opacity: 0
}, settings.duration, module.resetOpacity)
;
}
}
$activeContent
.slideUp(settings.duration, settings.easing, function() {
$activeContent
.removeClass(className.animating)
.removeClass(className.active)
;
module.reset.display.call(this);
settings.onClose.call(this);
settings.onChange.call(this);
})
;
}
},
closeOthers: function(index) {
var
$activeTitle = (index !== undefined)
? $title.eq(index)
: $(this).closest(selector.title),
$parentTitles = $activeTitle.parents(selector.content).prev(selector.title),
$activeAccordion = $activeTitle.closest(selector.accordion),
activeSelector = selector.title + '.' + className.active + ':visible',
activeContent = selector.content + '.' + className.active + ':visible',
$openTitles,
$nestedTitles,
$openContents
;
if(settings.closeNested) {
$openTitles = $activeAccordion.find(activeSelector).not($parentTitles);
$openContents = $openTitles.next($content);
}
else {
$openTitles = $activeAccordion.find(activeSelector).not($parentTitles);
$nestedTitles = $activeAccordion.find(activeContent).find(activeSelector).not($parentTitles);
$openTitles = $openTitles.not($nestedTitles);
$openContents = $openTitles.next($content);
}
if( ($openTitles.length > 0) ) {
module.debug('Exclusive enabled, closing other content', $openTitles);
$openTitles
.removeClass(className.active)
;
$openContents
.removeClass(className.animating)
.stop(true, true)
;
if(settings.animateChildren) {
if($.fn.transition !== undefined && $module.transition('is supported')) {
$openContents
.children()
.transition({
animation : 'fade out',
useFailSafe : true,
debug : settings.debug,
verbose : settings.verbose,
duration : settings.duration
})
;
}
else {
$openContents
.children()
.stop(true, true)
.animate({
opacity: 0
}, settings.duration, module.resetOpacity)
;
}
}
$openContents
.slideUp(settings.duration , settings.easing, function() {
$(this).removeClass(className.active);
module.reset.display.call(this);
})
;
}
},
reset: {
display: function() {
module.verbose('Removing inline display from element', this);
$(this).css('display', '');
if( $(this).attr('style') === '') {
$(this)
.attr('style', '')
.removeAttr('style')
;
}
},
opacity: function() {
module.verbose('Removing inline opacity from element', this);
$(this).css('opacity', '');
if( $(this).attr('style') === '') {
$(this)
.attr('style', '')
.removeAttr('style')
;
}
},
},
setting: function(name, value) {
module.debug('Changing setting', name, value);
if( $.isPlainObject(name) ) {
$.extend(true, settings, name);
}
else if(value !== undefined) {
if($.isPlainObject(settings[name])) {
$.extend(true, settings[name], value);
}
else {
settings[name] = value;
}
}
else {
return settings[name];
}
},
internal: function(name, value) {
module.debug('Changing internal', name, value);
if(value !== undefined) {
if( $.isPlainObject(name) ) {
$.extend(true, module, name);
}
else {
module[name] = value;
}
}
else {
return module[name];
}
},
debug: function() {
if(!settings.silent && settings.debug) {
if(settings.performance) {
module.performance.log(arguments);
}
else {
module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':');
module.debug.apply(console, arguments);
}
}
},
verbose: function() {
if(!settings.silent && settings.verbose && settings.debug) {
if(settings.performance) {
module.performance.log(arguments);
}
else {
module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':');
module.verbose.apply(console, arguments);
}
}
},
error: function() {
if(!settings.silent) {
module.error = Function.prototype.bind.call(console.error, console, settings.name + ':');
module.error.apply(console, arguments);
}
},
performance: {
log: function(message) {
var
currentTime,
executionTime,
previousTime
;
if(settings.performance) {
currentTime = new Date().getTime();
previousTime = time || currentTime;
executionTime = currentTime - previousTime;
time = currentTime;
performance.push({
'Name' : message[0],
'Arguments' : [].slice.call(message, 1) || '',
'Element' : element,
'Execution Time' : executionTime
});
}
clearTimeout(module.performance.timer);
module.performance.timer = setTimeout(module.performance.display, 500);
},
display: function() {
var
title = settings.name + ':',
totalTime = 0
;
time = false;
clearTimeout(module.performance.timer);
$.each(performance, function(index, data) {
totalTime += data['Execution Time'];
});
title += ' ' + totalTime + 'ms';
if(moduleSelector) {
title += ' \'' + moduleSelector + '\'';
}
if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) {
console.groupCollapsed(title);
if(console.table) {
console.table(performance);
}
else {
$.each(performance, function(index, data) {
console.log(data['Name'] + ': ' + data['Execution Time']+'ms');
});
}
console.groupEnd();
}
performance = [];
}
},
invoke: function(query, passedArguments, context) {
var
object = instance,
maxDepth,
found,
response
;
passedArguments = passedArguments || queryArguments;
context = element || context;
if(typeof query == 'string' && object !== undefined) {
query = query.split(/[\. ]/);
maxDepth = query.length - 1;
$.each(query, function(depth, value) {
var camelCaseValue = (depth != maxDepth)
? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1)
: query
;
if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) {
object = object[camelCaseValue];
}
else if( object[camelCaseValue] !== undefined ) {
found = object[camelCaseValue];
return false;
}
else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) {
object = object[value];
}
else if( object[value] !== undefined ) {
found = object[value];
return false;
}
else {
module.error(error.method, query);
return false;
}
});
}
if ( $.isFunction( found ) ) {
response = found.apply(context, passedArguments);
}
else if(found !== undefined) {
response = found;
}
if($.isArray(returnedValue)) {
returnedValue.push(response);
}
else if(returnedValue !== undefined) {
returnedValue = [returnedValue, response];
}
else if(response !== undefined) {
returnedValue = response;
}
return found;
}
};
if(methodInvoked) {
if(instance === undefined) {
module.initialize();
}
module.invoke(query);
}
else {
if(instance !== undefined) {
instance.invoke('destroy');
}
module.initialize();
}
})
;
return (returnedValue !== undefined)
? returnedValue
: this
;
};
$.fn.accordion.settings = {
name : 'Accordion',
namespace : 'accordion',
silent : false,
debug : false,
verbose : false,
performance : true,
on : 'click', // event on title that opens accordion
observeChanges : true, // whether accordion should automatically refresh on DOM insertion
exclusive : true, // whether a single accordion content panel should be open at once
collapsible : true, // whether accordion content can be closed
closeNested : false, // whether nested content should be closed when a panel is closed
animateChildren : true, // whether children opacity should be animated
duration : 350, // duration of animation
easing : 'easeOutQuad', // easing equation for animation
onOpening : function(){}, // callback before open animation
onOpen : function(){}, // callback after open animation
onClosing : function(){}, // callback before closing animation
onClose : function(){}, // callback after closing animation
onChange : function(){}, // callback after closing or opening animation
error: {
method : 'The method you called is not defined'
},
className : {
active : 'active',
animating : 'animating'
},
selector : {
accordion : '.accordion',
title : '.title',
trigger : '.title',
content : '.content'
}
};
// Adds easing
$.extend( $.easing, {
easeOutQuad: function (x, t, b, c, d) {
return -c *(t/=d)*(t-2) + b;
}
});
})( jQuery, window, document );
================================================
FILE: css/semantic-ui/components/ad.css
================================================
/*!
* # Semantic UI 2.2.4 - Ad
* http://github.com/semantic-org/semantic-ui/
*
*
* Copyright 2013 Contributors
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
/*******************************
Advertisement
*******************************/
.ui.ad {
display: block;
overflow: hidden;
margin: 1em 0em;
}
.ui.ad:first-child {
margin: 0em;
}
.ui.ad:last-child {
margin: 0em;
}
.ui.ad iframe {
margin: 0em;
padding: 0em;
border: none;
overflow: hidden;
}
/*--------------
Common
---------------*/
/* Leaderboard */
.ui.leaderboard.ad {
width: 728px;
height: 90px;
}
/* Medium Rectangle */
.ui[class*="medium rectangle"].ad {
width: 300px;
height: 250px;
}
/* Large Rectangle */
.ui[class*="large rectangle"].ad {
width: 336px;
height: 280px;
}
/* Half Page */
.ui[class*="half page"].ad {
width: 300px;
height: 600px;
}
/*--------------
Square
---------------*/
/* Square */
.ui.square.ad {
width: 250px;
height: 250px;
}
/* Small Square */
.ui[class*="small square"].ad {
width: 200px;
height: 200px;
}
/*--------------
Rectangle
---------------*/
/* Small Rectangle */
.ui[class*="small rectangle"].ad {
width: 180px;
height: 150px;
}
/* Vertical Rectangle */
.ui[class*="vertical rectangle"].ad {
width: 240px;
height: 400px;
}
/*--------------
Button
---------------*/
.ui.button.ad {
width: 120px;
height: 90px;
}
.ui[class*="square button"].ad {
width: 125px;
height: 125px;
}
.ui[class*="small button"].ad {
width: 120px;
height: 60px;
}
/*--------------
Skyscrapers
---------------*/
/* Skyscraper */
.ui.skyscraper.ad {
width: 120px;
height: 600px;
}
/* Wide Skyscraper */
.ui[class*="wide skyscraper"].ad {
width: 160px;
}
/*--------------
Banners
---------------*/
/* Banner */
.ui.banner.ad {
width: 468px;
height: 60px;
}
/* Vertical Banner */
.ui[class*="vertical banner"].ad {
width: 120px;
height: 240px;
}
/* Top Banner */
.ui[class*="top banner"].ad {
width: 930px;
height: 180px;
}
/* Half Banner */
.ui[class*="half banner"].ad {
width: 234px;
height: 60px;
}
/*--------------
Boards
---------------*/
/* Leaderboard */
.ui[class*="large leaderboard"].ad {
width: 970px;
height: 90px;
}
/* Billboard */
.ui.billboard.ad {
width: 970px;
height: 250px;
}
/*--------------
Panorama
---------------*/
/* Panorama */
.ui.panorama.ad {
width: 980px;
height: 120px;
}
/*--------------
Netboard
---------------*/
/* Netboard */
.ui.netboard.ad {
width: 580px;
height: 400px;
}
/*--------------
Mobile
---------------*/
/* Large Mobile Banner */
.ui[class*="large mobile banner"].ad {
width: 320px;
height: 100px;
}
/* Mobile Leaderboard */
.ui[class*="mobile leaderboard"].ad {
width: 320px;
height: 50px;
}
/*******************************
Types
*******************************/
/* Mobile Sizes */
.ui.mobile.ad {
display: none;
}
@media only screen and (max-width: 767px) {
.ui.mobile.ad {
display: block;
}
}
/*******************************
Variations
*******************************/
.ui.centered.ad {
margin-left: auto;
margin-right: auto;
}
.ui.test.ad {
position: relative;
background: #545454;
}
.ui.test.ad:after {
position: absolute;
top: 50%;
left: 50%;
width: 100%;
text-align: center;
-webkit-transform: translateX(-50%) translateY(-50%);
transform: translateX(-50%) translateY(-50%);
content: 'Ad';
color: #FFFFFF;
font-size: 1em;
font-weight: bold;
}
.ui.mobile.test.ad:after {
font-size: 0.85714286em;
}
.ui.test.ad[data-text]:after {
content: attr(data-text);
}
/*******************************
Theme Overrides
*******************************/
/*******************************
User Variable Overrides
*******************************/
================================================
FILE: css/semantic-ui/components/api.js
================================================
/*!
* # Semantic UI 2.2.4 - API
* http://github.com/semantic-org/semantic-ui/
*
*
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
;(function ($, window, document, undefined) {
"use strict";
var
window = (typeof window != 'undefined' && window.Math == Math)
? window
: (typeof self != 'undefined' && self.Math == Math)
? self
: Function('return this')()
;
$.api = $.fn.api = function(parameters) {
var
// use window context if none specified
$allModules = $.isFunction(this)
? $(window)
: $(this),
moduleSelector = $allModules.selector || '',
time = new Date().getTime(),
performance = [],
query = arguments[0],
methodInvoked = (typeof query == 'string'),
queryArguments = [].slice.call(arguments, 1),
returnedValue
;
$allModules
.each(function() {
var
settings = ( $.isPlainObject(parameters) )
? $.extend(true, {}, $.fn.api.settings, parameters)
: $.extend({}, $.fn.api.settings),
// internal aliases
namespace = settings.namespace,
metadata = settings.metadata,
selector = settings.selector,
error = settings.error,
className = settings.className,
// define namespaces for modules
eventNamespace = '.' + namespace,
moduleNamespace = 'module-' + namespace,
// element that creates request
$module = $(this),
$form = $module.closest(selector.form),
// context used for state
$context = (settings.stateContext)
? $(settings.stateContext)
: $module,
// request details
ajaxSettings,
requestSettings,
url,
data,
requestStartTime,
// standard module
element = this,
context = $context[0],
instance = $module.data(moduleNamespace),
module
;
module = {
initialize: function() {
if(!methodInvoked) {
module.bind.events();
}
module.instantiate();
},
instantiate: function() {
module.verbose('Storing instance of module', module);
instance = module;
$module
.data(moduleNamespace, instance)
;
},
destroy: function() {
module.verbose('Destroying previous module for', element);
$module
.removeData(moduleNamespace)
.off(eventNamespace)
;
},
bind: {
events: function() {
var
triggerEvent = module.get.event()
;
if( triggerEvent ) {
module.verbose('Attaching API events to element', triggerEvent);
$module
.on(triggerEvent + eventNamespace, module.event.trigger)
;
}
else if(settings.on == 'now') {
module.debug('Querying API endpoint immediately');
module.query();
}
}
},
decode: {
json: function(response) {
if(response !== undefined && typeof response == 'string') {
try {
response = JSON.parse(response);
}
catch(e) {
// isnt json string
}
}
return response;
}
},
read: {
cachedResponse: function(url) {
var
response
;
if(window.Storage === undefined) {
module.error(error.noStorage);
return;
}
response = sessionStorage.getItem(url);
module.debug('Using cached response', url, response);
response = module.decode.json(response);
return response;
}
},
write: {
cachedResponse: function(url, response) {
if(response && response === '') {
module.debug('Response empty, not caching', response);
return;
}
if(window.Storage === undefined) {
module.error(error.noStorage);
return;
}
if( $.isPlainObject(response) ) {
response = JSON.stringify(response);
}
sessionStorage.setItem(url, response);
module.verbose('Storing cached response for url', url, response);
}
},
query: function() {
if(module.is.disabled()) {
module.debug('Element is disabled API request aborted');
return;
}
if(module.is.loading()) {
if(settings.interruptRequests) {
module.debug('Interrupting previous request');
module.abort();
}
else {
module.debug('Cancelling request, previous request is still pending');
return;
}
}
// pass element metadata to url (value, text)
if(settings.defaultData) {
$.extend(true, settings.urlData, module.get.defaultData());
}
// Add form content
if(settings.serializeForm) {
settings.data = module.add.formData(settings.data);
}
// call beforesend and get any settings changes
requestSettings = module.get.settings();
// check if before send cancelled request
if(requestSettings === false) {
module.cancelled = true;
module.error(error.beforeSend);
return;
}
else {
module.cancelled = false;
}
// get url
url = module.get.templatedURL();
if(!url && !module.is.mocked()) {
module.error(error.missingURL);
return;
}
// replace variables
url = module.add.urlData( url );
// missing url parameters
if( !url && !module.is.mocked()) {
return;
}
requestSettings.url = settings.base + url;
// look for jQuery ajax parameters in settings
ajaxSettings = $.extend(true, {}, settings, {
type : settings.method || settings.type,
data : data,
url : settings.base + url,
beforeSend : settings.beforeXHR,
success : function() {},
failure : function() {},
complete : function() {}
});
module.debug('Querying URL', ajaxSettings.url);
module.verbose('Using AJAX settings', ajaxSettings);
if(settings.cache === 'local' && module.read.cachedResponse(url)) {
module.debug('Response returned from local cache');
module.request = module.create.request();
module.request.resolveWith(context, [ module.read.cachedResponse(url) ]);
return;
}
if( !settings.throttle ) {
module.debug('Sending request', data, ajaxSettings.method);
module.send.request();
}
else {
if(!settings.throttleFirstRequest && !module.timer) {
module.debug('Sending request', data, ajaxSettings.method);
module.send.request();
module.timer = setTimeout(function(){}, settings.throttle);
}
else {
module.debug('Throttling request', settings.throttle);
clearTimeout(module.timer);
module.timer = setTimeout(function() {
if(module.timer) {
delete module.timer;
}
module.debug('Sending throttled request', data, ajaxSettings.method);
module.send.request();
}, settings.throttle);
}
}
},
should: {
removeError: function() {
return ( settings.hideError === true || (settings.hideError === 'auto' && !module.is.form()) );
}
},
is: {
disabled: function() {
return ($module.filter(selector.disabled).length > 0);
},
expectingJSON: function() {
return settings.dataType === 'json' || settings.dataType === 'jsonp';
},
form: function() {
return $module.is('form') || $context.is('form');
},
mocked: function() {
return (settings.mockResponse || settings.mockResponseAsync || settings.response || settings.responseAsync);
},
input: function() {
return $module.is('input');
},
loading: function() {
return (module.request)
? (module.request.state() == 'pending')
: false
;
},
abortedRequest: function(xhr) {
if(xhr && xhr.readyState !== undefined && xhr.readyState === 0) {
module.verbose('XHR request determined to be aborted');
return true;
}
else {
module.verbose('XHR request was not aborted');
return false;
}
},
validResponse: function(response) {
if( (!module.is.expectingJSON()) || !$.isFunction(settings.successTest) ) {
module.verbose('Response is not JSON, skipping validation', settings.successTest, response);
return true;
}
module.debug('Checking JSON returned success', settings.successTest, response);
if( settings.successTest(response) ) {
module.debug('Response passed success test', response);
return true;
}
else {
module.debug('Response failed success test', response);
return false;
}
}
},
was: {
cancelled: function() {
return (module.cancelled || false);
},
succesful: function() {
return (module.request && module.request.state() == 'resolved');
},
failure: function() {
return (module.request && module.request.state() == 'rejected');
},
complete: function() {
return (module.request && (module.request.state() == 'resolved' || module.request.state() == 'rejected') );
}
},
add: {
urlData: function(url, urlData) {
var
requiredVariables,
optionalVariables
;
if(url) {
requiredVariables = url.match(settings.regExp.required);
optionalVariables = url.match(settings.regExp.optional);
urlData = urlData || settings.urlData;
if(requiredVariables) {
module.debug('Looking for required URL variables', requiredVariables);
$.each(requiredVariables, function(index, templatedString) {
var
// allow legacy {$var} style
variable = (templatedString.indexOf('$') !== -1)
? templatedString.substr(2, templatedString.length - 3)
: templatedString.substr(1, templatedString.length - 2),
value = ($.isPlainObject(urlData) && urlData[variable] !== undefined)
? urlData[variable]
: ($module.data(variable) !== undefined)
? $module.data(variable)
: ($context.data(variable) !== undefined)
? $context.data(variable)
: urlData[variable]
;
// remove value
if(value === undefined) {
module.error(error.requiredParameter, variable, url);
url = false;
return false;
}
else {
module.verbose('Found required variable', variable, value);
value = (settings.encodeParameters)
? module.get.urlEncodedValue(value)
: value
;
url = url.replace(templatedString, value);
}
});
}
if(optionalVariables) {
module.debug('Looking for optional URL variables', requiredVariables);
$.each(optionalVariables, function(index, templatedString) {
var
// allow legacy {/$var} style
variable = (templatedString.indexOf('$') !== -1)
? templatedString.substr(3, templatedString.length - 4)
: templatedString.substr(2, templatedString.length - 3),
value = ($.isPlainObject(urlData) && urlData[variable] !== undefined)
? urlData[variable]
: ($module.data(variable) !== undefined)
? $module.data(variable)
: ($context.data(variable) !== undefined)
? $context.data(variable)
: urlData[variable]
;
// optional replacement
if(value !== undefined) {
module.verbose('Optional variable Found', variable, value);
url = url.replace(templatedString, value);
}
else {
module.verbose('Optional variable not found', variable);
// remove preceding slash if set
if(url.indexOf('/' + templatedString) !== -1) {
url = url.replace('/' + templatedString, '');
}
else {
url = url.replace(templatedString, '');
}
}
});
}
}
return url;
},
formData: function(data) {
var
canSerialize = ($.fn.serializeObject !== undefined),
formData = (canSerialize)
? $form.serializeObject()
: $form.serialize(),
hasOtherData
;
data = data || settings.data;
hasOtherData = $.isPlainObject(data);
if(hasOtherData) {
if(canSerialize) {
module.debug('Extending existing data with form data', data, formData);
data = $.extend(true, {}, data, formData);
}
else {
module.error(error.missingSerialize);
module.debug('Cant extend data. Replacing data with form data', data, formData);
data = formData;
}
}
else {
module.debug('Adding form data', formData);
data = formData;
}
return data;
}
},
send: {
request: function() {
module.set.loading();
module.request = module.create.request();
if( module.is.mocked() ) {
module.mockedXHR = module.create.mockedXHR();
}
else {
module.xhr = module.create.xhr();
}
settings.onRequest.call(context, module.request, module.xhr);
}
},
event: {
trigger: function(event) {
module.query();
if(event.type == 'submit' || event.type == 'click') {
event.preventDefault();
}
},
xhr: {
always: function() {
// nothing special
},
done: function(response, textStatus, xhr) {
var
context = this,
elapsedTime = (new Date().getTime() - requestStartTime),
timeLeft = (settings.loadingDuration - elapsedTime),
translatedResponse = ( $.isFunction(settings.onResponse) )
? module.is.expectingJSON()
? settings.onResponse.call(context, $.extend(true, {}, response))
: settings.onResponse.call(context, response)
: false
;
timeLeft = (timeLeft > 0)
? timeLeft
: 0
;
if(translatedResponse) {
module.debug('Modified API response in onResponse callback', settings.onResponse, translatedResponse, response);
response = translatedResponse;
}
if(timeLeft > 0) {
module.debug('Response completed early delaying state change by', timeLeft);
}
setTimeout(function() {
if( module.is.validResponse(response) ) {
module.request.resolveWith(context, [response, xhr]);
}
else {
module.request.rejectWith(context, [xhr, 'invalid']);
}
}, timeLeft);
},
fail: function(xhr, status, httpMessage) {
var
context = this,
elapsedTime = (new Date().getTime() - requestStartTime),
timeLeft = (settings.loadingDuration - elapsedTime)
;
timeLeft = (timeLeft > 0)
? timeLeft
: 0
;
if(timeLeft > 0) {
module.debug('Response completed early delaying state change by', timeLeft);
}
setTimeout(function() {
if( module.is.abortedRequest(xhr) ) {
module.request.rejectWith(context, [xhr, 'aborted', httpMessage]);
}
else {
module.request.rejectWith(context, [xhr, 'error', status, httpMessage]);
}
}, timeLeft);
}
},
request: {
done: function(response, xhr) {
module.debug('Successful API Response', response);
if(settings.cache === 'local' && url) {
module.write.cachedResponse(url, response);
module.debug('Saving server response locally', module.cache);
}
settings.onSuccess.call(context, response, $module, xhr);
},
complete: function(firstParameter, secondParameter) {
var
xhr,
response
;
// have to guess callback parameters based on request success
if( module.was.succesful() ) {
response = firstParameter;
xhr = secondParameter;
}
else {
xhr = firstParameter;
response = module.get.responseFromXHR(xhr);
}
module.remove.loading();
settings.onComplete.call(context, response, $module, xhr);
},
fail: function(xhr, status, httpMessage) {
var
// pull response from xhr if available
response = module.get.responseFromXHR(xhr),
errorMessage = module.get.errorFromRequest(response, status, httpMessage)
;
if(status == 'aborted') {
module.debug('XHR Aborted (Most likely caused by page navigation or CORS Policy)', status, httpMessage);
settings.onAbort.call(context, status, $module, xhr);
return true;
}
else if(status == 'invalid') {
module.debug('JSON did not pass success test. A server-side error has most likely occurred', response);
}
else if(status == 'error') {
if(xhr !== undefined) {
module.debug('XHR produced a server error', status, httpMessage);
// make sure we have an error to display to console
if( xhr.status != 200 && httpMessage !== undefined && httpMessage !== '') {
module.error(error.statusMessage + httpMessage, ajaxSettings.url);
}
settings.onError.call(context, errorMessage, $module, xhr);
}
}
if(settings.errorDuration && status !== 'aborted') {
module.debug('Adding error state');
module.set.error();
if( module.should.removeError() ) {
setTimeout(module.remove.error, settings.errorDuration);
}
}
module.debug('API Request failed', errorMessage, xhr);
settings.onFailure.call(context, response, $module, xhr);
}
}
},
create: {
request: function() {
// api request promise
return $.Deferred()
.always(module.event.request.complete)
.done(module.event.request.done)
.fail(module.event.request.fail)
;
},
mockedXHR: function () {
var
// xhr does not simulate these properties of xhr but must return them
textStatus = false,
status = false,
httpMessage = false,
responder = settings.mockResponse || settings.response,
asyncResponder = settings.mockResponseAsync || settings.responseAsync,
asyncCallback,
response,
mockedXHR
;
mockedXHR = $.Deferred()
.always(module.event.xhr.complete)
.done(module.event.xhr.done)
.fail(module.event.xhr.fail)
;
if(responder) {
if( $.isFunction(responder) ) {
module.debug('Using specified synchronous callback', responder);
response = responder.call(context, requestSettings);
}
else {
module.debug('Using settings specified response', responder);
response = responder;
}
// simulating response
mockedXHR.resolveWith(context, [ response, textStatus, { responseText: response }]);
}
else if( $.isFunction(asyncResponder) ) {
asyncCallback = function(response) {
module.debug('Async callback returned response', response);
if(response) {
mockedXHR.resolveWith(context, [ response, textStatus, { responseText: response }]);
}
else {
mockedXHR.rejectWith(context, [{ responseText: response }, status, httpMessage]);
}
};
module.debug('Using specified async response callback', asyncResponder);
asyncResponder.call(context, requestSettings, asyncCallback);
}
return mockedXHR;
},
xhr: function() {
var
xhr
;
// ajax request promise
xhr = $.ajax(ajaxSettings)
.always(module.event.xhr.always)
.done(module.event.xhr.done)
.fail(module.event.xhr.fail)
;
module.verbose('Created server request', xhr, ajaxSettings);
return xhr;
}
},
set: {
error: function() {
module.verbose('Adding error state to element', $context);
$context.addClass(className.error);
},
loading: function() {
module.verbose('Adding loading state to element', $context);
$context.addClass(className.loading);
requestStartTime = new Date().getTime();
}
},
remove: {
error: function() {
module.verbose('Removing error state from element', $context);
$context.removeClass(className.error);
},
loading: function() {
module.verbose('Removing loading state from element', $context);
$context.removeClass(className.loading);
}
},
get: {
responseFromXHR: function(xhr) {
return $.isPlainObject(xhr)
? (module.is.expectingJSON())
? module.decode.json(xhr.responseText)
: xhr.responseText
: false
;
},
errorFromRequest: function(response, status, httpMessage) {
return ($.isPlainObject(response) && response.error !== undefined)
? response.error // use json error message
: (settings.error[status] !== undefined) // use server error message
? settings.error[status]
: httpMessage
;
},
request: function() {
return module.request || false;
},
xhr: function() {
return module.xhr || false;
},
settings: function() {
var
runSettings
;
runSettings = settings.beforeSend.call(context, settings);
if(runSettings) {
if(runSettings.success !== undefined) {
module.debug('Legacy success callback detected', runSettings);
module.error(error.legacyParameters, runSettings.success);
runSettings.onSuccess = runSettings.success;
}
if(runSettings.failure !== undefined) {
module.debug('Legacy failure callback detected', runSettings);
module.error(error.legacyParameters, runSettings.failure);
runSettings.onFailure = runSettings.failure;
}
if(runSettings.complete !== undefined) {
module.debug('Legacy complete callback detected', runSettings);
module.error(error.legacyParameters, runSettings.complete);
runSettings.onComplete = runSettings.complete;
}
}
if(runSettings === undefined) {
module.error(error.noReturnedValue);
}
if(runSettings === false) {
return runSettings;
}
return (runSettings !== undefined)
? $.extend(true, {}, runSettings)
: $.extend(true, {}, settings)
;
},
urlEncodedValue: function(value) {
var
decodedValue = window.decodeURIComponent(value),
encodedValue = window.encodeURIComponent(value),
alreadyEncoded = (decodedValue !== value)
;
if(alreadyEncoded) {
module.debug('URL value is already encoded, avoiding double encoding', value);
return value;
}
module.verbose('Encoding value using encodeURIComponent', value, encodedValue);
return encodedValue;
},
defaultData: function() {
var
data = {}
;
if( !$.isWindow(element) ) {
if( module.is.input() ) {
data.value = $module.val();
}
else if( module.is.form() ) {
}
else {
data.text = $module.text();
}
}
return data;
},
event: function() {
if( $.isWindow(element) || settings.on == 'now' ) {
module.debug('API called without element, no events attached');
return false;
}
else if(settings.on == 'auto') {
if( $module.is('input') ) {
return (element.oninput !== undefined)
? 'input'
: (element.onpropertychange !== undefined)
? 'propertychange'
: 'keyup'
;
}
else if( $module.is('form') ) {
return 'submit';
}
else {
return 'click';
}
}
else {
return settings.on;
}
},
templatedURL: function(action) {
action = action || $module.data(metadata.action) || settings.action || false;
url = $module.data(metadata.url) || settings.url || false;
if(url) {
module.debug('Using specified url', url);
return url;
}
if(action) {
module.debug('Looking up url for action', action, settings.api);
if(settings.api[action] === undefined && !module.is.mocked()) {
module.error(error.missingAction, settings.action, settings.api);
return;
}
url = settings.api[action];
}
else if( module.is.form() ) {
url = $module.attr('action') || $context.attr('action') || false;
module.debug('No url or action specified, defaulting to form action', url);
}
return url;
}
},
abort: function() {
var
xhr = module.get.xhr()
;
if( xhr && xhr.state() !== 'resolved') {
module.debug('Cancelling API request');
xhr.abort();
}
},
// reset state
reset: function() {
module.remove.error();
module.remove.loading();
},
setting: function(name, value) {
module.debug('Changing setting', name, value);
if( $.isPlainObject(name) ) {
$.extend(true, settings, name);
}
else if(value !== undefined) {
if($.isPlainObject(settings[name])) {
$.extend(true, settings[name], value);
}
else {
settings[name] = value;
}
}
else {
return settings[name];
}
},
internal: function(name, value) {
if( $.isPlainObject(name) ) {
$.extend(true, module, name);
}
else if(value !== undefined) {
module[name] = value;
}
else {
return module[name];
}
},
debug: function() {
if(!settings.silent && settings.debug) {
if(settings.performance) {
module.performance.log(arguments);
}
else {
module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':');
module.debug.apply(console, arguments);
}
}
},
verbose: function() {
if(!settings.silent && settings.verbose && settings.debug) {
if(settings.performance) {
module.performance.log(arguments);
}
else {
module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':');
module.verbose.apply(console, arguments);
}
}
},
error: function() {
if(!settings.silent) {
module.error = Function.prototype.bind.call(console.error, console, settings.name + ':');
module.error.apply(console, arguments);
}
},
performance: {
log: function(message) {
var
currentTime,
executionTime,
previousTime
;
if(settings.performance) {
currentTime = new Date().getTime();
previousTime = time || currentTime;
executionTime = currentTime - previousTime;
time = currentTime;
performance.push({
'Name' : message[0],
'Arguments' : [].slice.call(message, 1) || '',
//'Element' : element,
'Execution Time' : executionTime
});
}
clearTimeout(module.performance.timer);
module.performance.timer = setTimeout(module.performance.display, 500);
},
display: function() {
var
title = settings.name + ':',
totalTime = 0
;
time = false;
clearTimeout(module.performance.timer);
$.each(performance, function(index, data) {
totalTime += data['Execution Time'];
});
title += ' ' + totalTime + 'ms';
if(moduleSelector) {
title += ' \'' + moduleSelector + '\'';
}
if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) {
console.groupCollapsed(title);
if(console.table) {
console.table(performance);
}
else {
$.each(performance, function(index, data) {
console.log(data['Name'] + ': ' + data['Execution Time']+'ms');
});
}
console.groupEnd();
}
performance = [];
}
},
invoke: function(query, passedArguments, context) {
var
object = instance,
maxDepth,
found,
response
;
passedArguments = passedArguments || queryArguments;
context = element || context;
if(typeof query == 'string' && object !== undefined) {
query = query.split(/[\. ]/);
maxDepth = query.length - 1;
$.each(query, function(depth, value) {
var camelCaseValue = (depth != maxDepth)
? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1)
: query
;
if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) {
object = object[camelCaseValue];
}
else if( object[camelCaseValue] !== undefined ) {
found = object[camelCaseValue];
return false;
}
else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) {
object = object[value];
}
else if( object[value] !== undefined ) {
found = object[value];
return false;
}
else {
module.error(error.method, query);
return false;
}
});
}
if ( $.isFunction( found ) ) {
response = found.apply(context, passedArguments);
}
else if(found !== undefined) {
response = found;
}
if($.isArray(returnedValue)) {
returnedValue.push(response);
}
else if(returnedValue !== undefined) {
returnedValue = [returnedValue, response];
}
else if(response !== undefined) {
returnedValue = response;
}
return found;
}
};
if(methodInvoked) {
if(instance === undefined) {
module.initialize();
}
module.invoke(query);
}
else {
if(instance !== undefined) {
instance.invoke('destroy');
}
module.initialize();
}
})
;
return (returnedValue !== undefined)
? returnedValue
: this
;
};
$.api.settings = {
name : 'API',
namespace : 'api',
debug : false,
verbose : false,
performance : true,
// object containing all templates endpoints
api : {},
// whether to cache responses
cache : true,
// whether new requests should abort previous requests
interruptRequests : true,
// event binding
on : 'auto',
// context for applying state classes
stateContext : false,
// duration for loading state
loadingDuration : 0,
// whether to hide errors after a period of time
hideError : 'auto',
// duration for error state
errorDuration : 2000,
// whether parameters should be encoded with encodeURIComponent
encodeParameters : true,
// API action to use
action : false,
// templated URL to use
url : false,
// base URL to apply to all endpoints
base : '',
// data that will
urlData : {},
// whether to add default data to url data
defaultData : true,
// whether to serialize closest form
serializeForm : false,
// how long to wait before request should occur
throttle : 0,
// whether to throttle first request or only repeated
throttleFirstRequest : true,
// standard ajax settings
method : 'get',
data : {},
dataType : 'json',
// mock response
mockResponse : false,
mockResponseAsync : false,
// aliases for mock
response : false,
responseAsync : false,
// callbacks before request
beforeSend : function(settings) { return settings; },
beforeXHR : function(xhr) {},
onRequest : function(promise, xhr) {},
// after request
onResponse : false, // function(response) { },
// response was successful, if JSON passed validation
onSuccess : function(response, $module) {},
// request finished without aborting
onComplete : function(response, $module) {},
// failed JSON success test
onFailure : function(response, $module) {},
// server error
onError : function(errorMessage, $module) {},
// request aborted
onAbort : function(errorMessage, $module) {},
successTest : false,
// errors
error : {
beforeSend : 'The before send function has aborted the request',
error : 'There was an error with your request',
exitConditions : 'API Request Aborted. Exit conditions met',
JSONParse : 'JSON could not be parsed during error handling',
legacyParameters : 'You are using legacy API success callback names',
method : 'The method you called is not defined',
missingAction : 'API action used but no url was defined',
missingSerialize : 'jquery-serialize-object is required to add form data to an existing data object',
missingURL : 'No URL specified for api event',
noReturnedValue : 'The beforeSend callback must return a settings object, beforeSend ignored.',
noStorage : 'Caching responses locally requires session storage',
parseError : 'There was an error parsing your request',
requiredParameter : 'Missing a required URL parameter: ',
statusMessage : 'Server gave an error: ',
timeout : 'Your request timed out'
},
regExp : {
required : /\{\$*[A-z0-9]+\}/g,
optional : /\{\/\$*[A-z0-9]+\}/g,
},
className: {
loading : 'loading',
error : 'error'
},
selector: {
disabled : '.disabled',
form : 'form'
},
metadata: {
action : 'action',
url : 'url'
}
};
})( jQuery, window, document );
================================================
FILE: css/semantic-ui/components/breadcrumb.css
================================================
/*!
* # Semantic UI 2.2.4 - Breadcrumb
* http://github.com/semantic-org/semantic-ui/
*
*
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
/*******************************
Breadcrumb
*******************************/
.ui.breadcrumb {
line-height: 1;
display: inline-block;
margin: 0em 0em;
vertical-align: middle;
}
.ui.breadcrumb:first-child {
margin-top: 0em;
}
.ui.breadcrumb:last-child {
margin-bottom: 0em;
}
/*******************************
Content
*******************************/
/* Divider */
.ui.breadcrumb .divider {
display: inline-block;
opacity: 0.7;
margin: 0em 0.21428571rem 0em;
font-size: 0.92857143em;
color: rgba(0, 0, 0, 0.4);
vertical-align: baseline;
}
/* Link */
.ui.breadcrumb a {
color: #4183C4;
}
.ui.breadcrumb a:hover {
color: #1e70bf;
}
/* Icon Divider */
.ui.breadcrumb .icon.divider {
font-size: 0.85714286em;
vertical-align: baseline;
}
/* Section */
.ui.breadcrumb a.section {
cursor: pointer;
}
.ui.breadcrumb .section {
display: inline-block;
margin: 0em;
padding: 0em;
}
/* Loose Coupling */
.ui.breadcrumb.segment {
display: inline-block;
padding: 0.78571429em 1em;
}
/*******************************
States
*******************************/
.ui.breadcrumb .active.section {
font-weight: bold;
}
/*******************************
Variations
*******************************/
.ui.mini.breadcrumb {
font-size: 0.78571429rem;
}
.ui.tiny.breadcrumb {
font-size: 0.85714286rem;
}
.ui.small.breadcrumb {
font-size: 0.92857143rem;
}
.ui.breadcrumb {
font-size: 1rem;
}
.ui.large.breadcrumb {
font-size: 1.14285714rem;
}
.ui.big.breadcrumb {
font-size: 1.28571429rem;
}
.ui.huge.breadcrumb {
font-size: 1.42857143rem;
}
.ui.massive.breadcrumb {
font-size: 1.71428571rem;
}
/*******************************
Theme Overrides
*******************************/
/*******************************
Site Overrides
*******************************/
================================================
FILE: css/semantic-ui/components/button.css
================================================
/*!
* # Semantic UI 2.2.4 - Button
* http://github.com/semantic-org/semantic-ui/
*
*
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
/*******************************
Button
*******************************/
.ui.button {
cursor: pointer;
display: inline-block;
min-height: 1em;
outline: none;
border: none;
vertical-align: baseline;
background: #E0E1E2 none;
color: rgba(0, 0, 0, 0.6);
font-family: 'Open Sans', 'Helvetica Neue', Arial, Helvetica, sans-serif;
margin: 0em 0.25em 0em 0em;
padding: 0.78571429em 1.5em 0.78571429em;
text-transform: none;
text-shadow: none;
font-weight: bold;
line-height: 1em;
font-style: normal;
text-align: center;
text-decoration: none;
border-radius: 0.28571429rem;
box-shadow: 0px 0px 0px 1px transparent inset, 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-transition: opacity 0.1s ease, background-color 0.1s ease, color 0.1s ease, box-shadow 0.1s ease, background 0.1s ease;
transition: opacity 0.1s ease, background-color 0.1s ease, color 0.1s ease, box-shadow 0.1s ease, background 0.1s ease;
will-change: '';
-webkit-tap-highlight-color: transparent;
}
/*******************************
States
*******************************/
/*--------------
Hover
---------------*/
.ui.button:hover {
background-color: #CACBCD;
background-image: none;
box-shadow: 0px 0px 0px 1px transparent inset, 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
color: rgba(0, 0, 0, 0.8);
}
.ui.button:hover .icon {
opacity: 0.85;
}
/*--------------
Focus
---------------*/
.ui.button:focus {
background-color: #CACBCD;
color: rgba(0, 0, 0, 0.8);
background-image: '' !important;
box-shadow: '' !important;
}
.ui.button:focus .icon {
opacity: 0.85;
}
/*--------------
Down
---------------*/
.ui.button:active,
.ui.active.button:active {
background-color: #BABBBC;
background-image: '';
color: rgba(0, 0, 0, 0.9);
box-shadow: 0px 0px 0px 1px transparent inset, none;
}
/*--------------
Active
---------------*/
.ui.active.button {
background-color: #C0C1C2;
background-image: none;
box-shadow: 0px 0px 0px 1px transparent inset;
color: rgba(0, 0, 0, 0.95);
}
.ui.active.button:hover {
background-color: #C0C1C2;
background-image: none;
color: rgba(0, 0, 0, 0.95);
}
.ui.active.button:active {
background-color: #C0C1C2;
background-image: none;
}
/*--------------
Loading
---------------*/
/* Specificity hack */
.ui.loading.loading.loading.loading.loading.loading.button {
position: relative;
cursor: default;
text-shadow: none !important;
color: transparent !important;
opacity: 1;
pointer-events: auto;
-webkit-transition: all 0s linear, opacity 0.1s ease;
transition: all 0s linear, opacity 0.1s ease;
}
.ui.loading.button:before {
position: absolute;
content: '';
top: 50%;
left: 50%;
margin: -0.64285714em 0em 0em -0.64285714em;
width: 1.28571429em;
height: 1.28571429em;
border-radius: 500rem;
border: 0.2em solid rgba(0, 0, 0, 0.15);
}
.ui.loading.button:after {
position: absolute;
content: '';
top: 50%;
left: 50%;
margin: -0.64285714em 0em 0em -0.64285714em;
width: 1.28571429em;
height: 1.28571429em;
-webkit-animation: button-spin 0.6s linear;
animation: button-spin 0.6s linear;
-webkit-animation-iteration-count: infinite;
animation-iteration-count: infinite;
border-radius: 500rem;
border-color: #FFFFFF transparent transparent;
border-style: solid;
border-width: 0.2em;
box-shadow: 0px 0px 0px 1px transparent;
}
.ui.labeled.icon.loading.button .icon {
background-color: transparent;
box-shadow: none;
}
@-webkit-keyframes button-spin {
from {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
to {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@keyframes button-spin {
from {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
to {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
.ui.basic.loading.button:not(.inverted):before {
border-color: rgba(0, 0, 0, 0.1);
}
.ui.basic.loading.button:not(.inverted):after {
border-top-color: #767676;
}
/*-------------------
Disabled
--------------------*/
.ui.buttons .disabled.button,
.ui.disabled.button,
.ui.button:disabled,
.ui.disabled.button:hover,
.ui.disabled.active.button {
cursor: default;
opacity: 0.45 !important;
background-image: none !important;
box-shadow: none !important;
pointer-events: none !important;
}
/* Basic Group With Disabled */
.ui.basic.buttons .ui.disabled.button {
border-color: rgba(34, 36, 38, 0.5);
}
/*******************************
Types
*******************************/
/*-------------------
Animated
--------------------*/
.ui.animated.button {
position: relative;
overflow: hidden;
padding-right: 0em !important;
vertical-align: middle;
z-index: 1;
}
.ui.animated.button .content {
will-change: transform, opacity;
}
.ui.animated.button .visible.content {
position: relative;
margin-right: 1.5em;
}
.ui.animated.button .hidden.content {
position: absolute;
width: 100%;
}
/* Horizontal */
.ui.animated.button .visible.content,
.ui.animated.button .hidden.content {
-webkit-transition: right 0.3s ease 0s;
transition: right 0.3s ease 0s;
}
.ui.animated.button .visible.content {
left: auto;
right: 0%;
}
.ui.animated.button .hidden.content {
top: 50%;
left: auto;
right: -100%;
margin-top: -0.5em;
}
.ui.animated.button:focus .visible.content,
.ui.animated.button:hover .visible.content {
left: auto;
right: 200%;
}
.ui.animated.button:focus .hidden.content,
.ui.animated.button:hover .hidden.content {
left: auto;
right: 0%;
}
/* Vertical */
.ui.vertical.animated.button .visible.content,
.ui.vertical.animated.button .hidden.content {
-webkit-transition: top 0.3s ease, -webkit-transform 0.3s ease;
transition: top 0.3s ease, -webkit-transform 0.3s ease;
transition: top 0.3s ease, transform 0.3s ease;
transition: top 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
}
.ui.vertical.animated.button .visible.content {
-webkit-transform: translateY(0%);
transform: translateY(0%);
right: auto;
}
.ui.vertical.animated.button .hidden.content {
top: -50%;
left: 0%;
right: auto;
}
.ui.vertical.animated.button:focus .visible.content,
.ui.vertical.animated.button:hover .visible.content {
-webkit-transform: translateY(200%);
transform: translateY(200%);
right: auto;
}
.ui.vertical.animated.button:focus .hidden.content,
.ui.vertical.animated.button:hover .hidden.content {
top: 50%;
right: auto;
}
/* Fade */
.ui.fade.animated.button .visible.content,
.ui.fade.animated.button .hidden.content {
-webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
transition: opacity 0.3s ease, transform 0.3s ease;
transition: opacity 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
}
.ui.fade.animated.button .visible.content {
left: auto;
right: auto;
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
}
.ui.fade.animated.button .hidden.content {
opacity: 0;
left: 0%;
right: auto;
-webkit-transform: scale(1.5);
transform: scale(1.5);
}
.ui.fade.animated.button:focus .visible.content,
.ui.fade.animated.button:hover .visible.content {
left: auto;
right: auto;
opacity: 0;
-webkit-transform: scale(0.75);
transform: scale(0.75);
}
.ui.fade.animated.button:focus .hidden.content,
.ui.fade.animated.button:hover .hidden.content {
left: 0%;
right: auto;
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
}
/*-------------------
Inverted
--------------------*/
.ui.inverted.button {
box-shadow: 0px 0px 0px 2px #FFFFFF inset !important;
background: transparent none;
color: #FFFFFF;
text-shadow: none !important;
}
/* Group */
.ui.inverted.buttons .button {
margin: 0px 0px 0px -2px;
}
.ui.inverted.buttons .button:first-child {
margin-left: 0em;
}
.ui.inverted.vertical.buttons .button {
margin: 0px 0px -2px 0px;
}
.ui.inverted.vertical.buttons .button:first-child {
margin-top: 0em;
}
/* States */
/* Hover */
.ui.inverted.button:hover {
background: #FFFFFF;
box-shadow: 0px 0px 0px 2px #FFFFFF inset !important;
color: rgba(0, 0, 0, 0.8);
}
/* Active / Focus */
.ui.inverted.button:focus,
.ui.inverted.button.active {
background: #FFFFFF;
box-shadow: 0px 0px 0px 2px #FFFFFF inset !important;
color: rgba(0, 0, 0, 0.8);
}
/* Active Focus */
.ui.inverted.button.active:focus {
background: #DCDDDE;
box-shadow: 0px 0px 0px 2px #DCDDDE inset !important;
color: rgba(0, 0, 0, 0.8);
}
/*-------------------
Labeled Button
--------------------*/
.ui.labeled.button:not(.icon) {
display: -webkit-inline-box;
display: -ms-inline-flexbox;
display: inline-flex;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
background: none !important;
padding: 0px !important;
border: none !important;
box-shadow: none !important;
}
.ui.labeled.button > .button {
margin: 0px;
}
.ui.labeled.button > .label {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
margin: 0px 0px 0px -1px !important;
padding: '';
font-size: 1em;
border-color: rgba(34, 36, 38, 0.15);
}
/* Tag */
.ui.labeled.button > .tag.label:before {
width: 1.85em;
height: 1.85em;
}
/* Right */
.ui.labeled.button:not([class*="left labeled"]) > .button {
border-top-right-radius: 0px;
border-bottom-right-radius: 0px;
}
.ui.labeled.button:not([class*="left labeled"]) > .label {
border-top-left-radius: 0px;
border-bottom-left-radius: 0px;
}
/* Left Side */
.ui[class*="left labeled"].button > .button {
border-top-left-radius: 0px;
border-bottom-left-radius: 0px;
}
.ui[class*="left labeled"].button > .label {
border-top-right-radius: 0px;
border-bottom-right-radius: 0px;
}
/*-------------------
Social
--------------------*/
/* Facebook */
.ui.facebook.button {
background-color: #3B5998;
color: #FFFFFF;
text-shadow: none;
background-image: none;
box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.facebook.button:hover {
background-color: #304d8a;
color: #FFFFFF;
text-shadow: none;
}
.ui.facebook.button:active {
background-color: #2d4373;
color: #FFFFFF;
text-shadow: none;
}
/* Twitter */
.ui.twitter.button {
background-color: #55ACEE;
color: #FFFFFF;
text-shadow: none;
background-image: none;
box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.twitter.button:hover {
background-color: #35a2f4;
color: #FFFFFF;
text-shadow: none;
}
.ui.twitter.button:active {
background-color: #2795e9;
color: #FFFFFF;
text-shadow: none;
}
/* Google Plus */
.ui.google.plus.button {
background-color: #DD4B39;
color: #FFFFFF;
text-shadow: none;
background-image: none;
box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.google.plus.button:hover {
background-color: #e0321c;
color: #FFFFFF;
text-shadow: none;
}
.ui.google.plus.button:active {
background-color: #c23321;
color: #FFFFFF;
text-shadow: none;
}
/* Linked In */
.ui.linkedin.button {
background-color: #1F88BE;
color: #FFFFFF;
text-shadow: none;
}
.ui.linkedin.button:hover {
background-color: #147baf;
color: #FFFFFF;
text-shadow: none;
}
.ui.linkedin.button:active {
background-color: #186992;
color: #FFFFFF;
text-shadow: none;
}
/* YouTube */
.ui.youtube.button {
background-color: #CC181E;
color: #FFFFFF;
text-shadow: none;
background-image: none;
box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.youtube.button:hover {
background-color: #bd0d13;
color: #FFFFFF;
text-shadow: none;
}
.ui.youtube.button:active {
background-color: #9e1317;
color: #FFFFFF;
text-shadow: none;
}
/* Instagram */
.ui.instagram.button {
background-color: #49769C;
color: #FFFFFF;
text-shadow: none;
background-image: none;
box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.instagram.button:hover {
background-color: #3d698e;
color: #FFFFFF;
text-shadow: none;
}
.ui.instagram.button:active {
background-color: #395c79;
color: #FFFFFF;
text-shadow: none;
}
/* Pinterest */
.ui.pinterest.button {
background-color: #BD081C;
color: #FFFFFF;
text-shadow: none;
background-image: none;
box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.pinterest.button:hover {
background-color: #ac0013;
color: #FFFFFF;
text-shadow: none;
}
.ui.pinterest.button:active {
background-color: #8c0615;
color: #FFFFFF;
text-shadow: none;
}
/* VK */
.ui.vk.button {
background-color: #4D7198;
color: #FFFFFF;
background-image: none;
box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.vk.button:hover {
background-color: #41648a;
color: #FFFFFF;
}
.ui.vk.button:active {
background-color: #3c5876;
color: #FFFFFF;
}
/*--------------
Icon
---------------*/
.ui.button > .icon:not(.button) {
height: 0.85714286em;
opacity: 0.8;
margin: 0em 0.42857143em 0em -0.21428571em;
-webkit-transition: opacity 0.1s ease;
transition: opacity 0.1s ease;
vertical-align: '';
color: '';
}
.ui.button:not(.icon) > .icon:not(.button):not(.dropdown) {
margin: 0em 0.42857143em 0em -0.21428571em;
}
.ui.button:not(.icon) > .right.icon:not(.button):not(.dropdown) {
margin: 0em -0.21428571em 0em 0.42857143em;
}
/*******************************
Variations
*******************************/
/*-------------------
Floated
--------------------*/
.ui[class*="left floated"].buttons,
.ui[class*="left floated"].button {
float: left;
margin-left: 0em;
margin-right: 0.25em;
}
.ui[class*="right floated"].buttons,
.ui[class*="right floated"].button {
float: right;
margin-right: 0em;
margin-left: 0.25em;
}
/*-------------------
Compact
--------------------*/
.ui.compact.buttons .button,
.ui.compact.button {
padding: 0.58928571em 1.125em 0.58928571em;
}
.ui.compact.icon.buttons .button,
.ui.compact.icon.button {
padding: 0.58928571em 0.58928571em 0.58928571em;
}
.ui.compact.labeled.icon.buttons .button,
.ui.compact.labeled.icon.button {
padding: 0.58928571em 3.69642857em 0.58928571em;
}
/*-------------------
Sizes
--------------------*/
.ui.mini.buttons .button,
.ui.mini.buttons .or,
.ui.mini.button {
font-size: 0.78571429rem;
}
.ui.tiny.buttons .button,
.ui.tiny.buttons .or,
.ui.tiny.button {
font-size: 0.85714286rem;
}
.ui.small.buttons .button,
.ui.small.buttons .or,
.ui.small.button {
font-size: 0.92857143rem;
}
.ui.buttons .button,
.ui.buttons .or,
.ui.button {
font-size: 1rem;
}
.ui.large.buttons .button,
.ui.large.buttons .or,
.ui.large.button {
font-size: 1.14285714rem;
}
.ui.big.buttons .button,
.ui.big.buttons .or,
.ui.big.button {
font-size: 1.28571429rem;
}
.ui.huge.buttons .button,
.ui.huge.buttons .or,
.ui.huge.button {
font-size: 1.42857143rem;
}
.ui.massive.buttons .button,
.ui.massive.buttons .or,
.ui.massive.button {
font-size: 1.71428571rem;
}
/*--------------
Icon Only
---------------*/
.ui.icon.buttons .button,
.ui.icon.button {
padding: 0.78571429em 0.78571429em 0.78571429em;
}
.ui.icon.buttons .button > .icon,
.ui.icon.button > .icon {
opacity: 0.9;
margin: 0em;
vertical-align: top;
}
/*-------------------
Basic
--------------------*/
.ui.basic.buttons .button,
.ui.basic.button {
background: transparent none !important;
color: rgba(0, 0, 0, 0.6) !important;
font-weight: normal;
border-radius: 0.28571429rem;
text-transform: none;
text-shadow: none !important;
box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset;
}
.ui.basic.buttons {
box-shadow: none;
border: 1px solid rgba(34, 36, 38, 0.15);
border-radius: 0.28571429rem;
}
.ui.basic.buttons .button {
border-radius: 0em;
}
.ui.basic.buttons .button:hover,
.ui.basic.button:hover {
background: #FFFFFF !important;
color: rgba(0, 0, 0, 0.8) !important;
box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.35) inset, 0px 0px 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.basic.buttons .button:focus,
.ui.basic.button:focus {
background: #FFFFFF !important;
color: rgba(0, 0, 0, 0.8) !important;
box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.35) inset, 0px 0px 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.basic.buttons .button:active,
.ui.basic.button:active {
background: #F8F8F8 !important;
color: rgba(0, 0, 0, 0.9) !important;
box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.15) inset, 0px 1px 4px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.basic.buttons .active.button,
.ui.basic.active.button {
background: rgba(0, 0, 0, 0.05) !important;
box-shadow: '' !important;
color: rgba(0, 0, 0, 0.95);
box-shadow: rgba(34, 36, 38, 0.35);
}
.ui.basic.buttons .active.button:hover,
.ui.basic.active.button:hover {
background-color: rgba(0, 0, 0, 0.05);
}
/* Vertical */
.ui.basic.buttons .button:hover {
box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.35) inset, 0px 0px 0px 0px rgba(34, 36, 38, 0.15) inset inset;
}
.ui.basic.buttons .button:active {
box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.15) inset, 0px 1px 4px 0px rgba(34, 36, 38, 0.15) inset inset;
}
.ui.basic.buttons .active.button {
box-shadow: rgba(34, 36, 38, 0.35) inset;
}
/* Standard Basic Inverted */
.ui.basic.inverted.buttons .button,
.ui.basic.inverted.button {
background-color: transparent !important;
color: #F9FAFB !important;
box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
}
.ui.basic.inverted.buttons .button:hover,
.ui.basic.inverted.button:hover {
color: #FFFFFF !important;
box-shadow: 0px 0px 0px 2px #ffffff inset !important;
}
.ui.basic.inverted.buttons .button:focus,
.ui.basic.inverted.button:focus {
color: #FFFFFF !important;
box-shadow: 0px 0px 0px 2px #ffffff inset !important;
}
.ui.basic.inverted.buttons .button:active,
.ui.basic.inverted.button:active {
background-color: rgba(255, 255, 255, 0.08) !important;
color: #FFFFFF !important;
box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.9) inset !important;
}
.ui.basic.inverted.buttons .active.button,
.ui.basic.inverted.active.button {
background-color: rgba(255, 255, 255, 0.08);
color: #FFFFFF;
text-shadow: none;
box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.7) inset;
}
.ui.basic.inverted.buttons .active.button:hover,
.ui.basic.inverted.active.button:hover {
background-color: rgba(255, 255, 255, 0.15);
box-shadow: 0px 0px 0px 2px #ffffff inset !important;
}
/* Basic Group */
.ui.basic.buttons .button {
border-left: 1px solid rgba(34, 36, 38, 0.15);
box-shadow: none;
}
.ui.basic.vertical.buttons .button {
border-left: none;
}
.ui.basic.vertical.buttons .button {
border-left-width: 0px;
border-top: 1px solid rgba(34, 36, 38, 0.15);
}
.ui.basic.vertical.buttons .button:first-child {
border-top-width: 0px;
}
/*--------------
Labeled Icon
---------------*/
.ui.labeled.icon.buttons .button,
.ui.labeled.icon.button {
position: relative;
padding-left: 4.07142857em !important;
padding-right: 1.5em !important;
}
/* Left Labeled */
.ui.labeled.icon.buttons > .button > .icon,
.ui.labeled.icon.button > .icon {
position: absolute;
height: 100%;
line-height: 1;
border-radius: 0px;
border-top-left-radius: inherit;
border-bottom-left-radius: inherit;
text-align: center;
margin: 0em;
width: 2.57142857em;
background-color: rgba(0, 0, 0, 0.05);
color: '';
box-shadow: -1px 0px 0px 0px transparent inset;
}
/* Left Labeled */
.ui.labeled.icon.buttons > .button > .icon,
.ui.labeled.icon.button > .icon {
top: 0em;
left: 0em;
}
/* Right Labeled */
.ui[class*="right labeled"].icon.button {
padding-right: 4.07142857em !important;
padding-left: 1.5em !important;
}
.ui[class*="right labeled"].icon.button > .icon {
left: auto;
right: 0em;
border-radius: 0px;
border-top-right-radius: inherit;
border-bottom-right-radius: inherit;
box-shadow: 1px 0px 0px 0px transparent inset;
}
.ui.labeled.icon.buttons > .button > .icon:before,
.ui.labeled.icon.button > .icon:before,
.ui.labeled.icon.buttons > .button > .icon:after,
.ui.labeled.icon.button > .icon:after {
display: block;
position: absolute;
width: 100%;
top: 50%;
text-align: center;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}
.ui.labeled.icon.buttons .button > .icon {
border-radius: 0em;
}
.ui.labeled.icon.buttons .button:first-child > .icon {
border-top-left-radius: 0.28571429rem;
border-bottom-left-radius: 0.28571429rem;
}
.ui.labeled.icon.buttons .button:last-child > .icon {
border-top-right-radius: 0.28571429rem;
border-bottom-right-radius: 0.28571429rem;
}
.ui.vertical.labeled.icon.buttons .button:first-child > .icon {
border-radius: 0em;
border-top-left-radius: 0.28571429rem;
}
.ui.vertical.labeled.icon.buttons .button:last-child > .icon {
border-radius: 0em;
border-bottom-left-radius: 0.28571429rem;
}
/* Fluid Labeled */
.ui.fluid[class*="left labeled"].icon.button,
.ui.fluid[class*="right labeled"].icon.button {
padding-left: 1.5em !important;
padding-right: 1.5em !important;
}
/*--------------
Toggle
---------------*/
/* Toggle (Modifies active state to give affordances) */
.ui.toggle.buttons .active.button,
.ui.buttons .button.toggle.active,
.ui.button.toggle.active {
background-color: #21BA45 !important;
box-shadow: none !important;
text-shadow: none;
color: #FFFFFF !important;
}
.ui.button.toggle.active:hover {
background-color: #16ab39 !important;
text-shadow: none;
color: #FFFFFF !important;
}
/*--------------
Circular
---------------*/
.ui.circular.button {
border-radius: 10em;
}
.ui.circular.button > .icon {
width: 1em;
vertical-align: baseline;
}
/*-------------------
Or Buttons
--------------------*/
.ui.buttons .or {
position: relative;
width: 0.3em;
height: 2.57142857em;
z-index: 3;
}
.ui.buttons .or:before {
position: absolute;
text-align: center;
border-radius: 500rem;
content: 'or';
top: 50%;
left: 50%;
background-color: #FFFFFF;
text-shadow: none;
margin-top: -0.89285714em;
margin-left: -0.89285714em;
width: 1.78571429em;
height: 1.78571429em;
line-height: 1.78571429em;
color: rgba(0, 0, 0, 0.4);
font-style: normal;
font-weight: bold;
box-shadow: 0px 0px 0px 1px transparent inset;
}
.ui.buttons .or[data-text]:before {
content: attr(data-text);
}
/* Fluid Or */
.ui.fluid.buttons .or {
width: 0em !important;
}
.ui.fluid.buttons .or:after {
display: none;
}
/*-------------------
Attached
--------------------*/
/* Singular */
.ui.attached.button {
position: relative;
display: block;
margin: 0em;
border-radius: 0em;
box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.15) !important;
}
/* Top / Bottom */
.ui.attached.top.button {
border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}
.ui.attached.bottom.button {
border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}
/* Left / Right */
.ui.left.attached.button {
display: inline-block;
border-left: none;
text-align: right;
padding-right: 0.75em;
border-radius: 0.28571429rem 0em 0em 0.28571429rem;
}
.ui.right.attached.button {
display: inline-block;
text-align: left;
padding-left: 0.75em;
border-radius: 0em 0.28571429rem 0.28571429rem 0em;
}
/* Plural */
.ui.attached.buttons {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
border-radius: 0em;
width: auto !important;
z-index: 2;
margin-left: -1px;
margin-right: -1px;
}
.ui.attached.buttons .button {
margin: 0em;
}
.ui.attached.buttons .button:first-child {
border-radius: 0em;
}
.ui.attached.buttons .button:last-child {
border-radius: 0em;
}
/* Top / Bottom */
.ui[class*="top attached"].buttons {
margin-bottom: -1px;
border-radius: 0.28571429rem 0.28571429rem 0em 0em;
}
.ui[class*="top attached"].buttons .button:first-child {
border-radius: 0.28571429rem 0em 0em 0em;
}
.ui[class*="top attached"].buttons .button:last-child {
border-radius: 0em 0.28571429rem 0em 0em;
}
.ui[class*="bottom attached"].buttons {
margin-top: -1px;
border-radius: 0em 0em 0.28571429rem 0.28571429rem;
}
.ui[class*="bottom attached"].buttons .button:first-child {
border-radius: 0em 0em 0em 0.28571429rem;
}
.ui[class*="bottom attached"].buttons .button:last-child {
border-radius: 0em 0em 0.28571429rem 0em;
}
/* Left / Right */
.ui[class*="left attached"].buttons {
display: -webkit-inline-box;
display: -ms-inline-flexbox;
display: inline-flex;
margin-right: 0em;
margin-left: -1px;
border-radius: 0em 0.28571429rem 0.28571429rem 0em;
}
.ui[class*="left attached"].buttons .button:first-child {
margin-left: -1px;
border-radius: 0em 0.28571429rem 0em 0em;
}
.ui[class*="left attached"].buttons .button:last-child {
margin-left: -1px;
border-radius: 0em 0em 0.28571429rem 0em;
}
.ui[class*="right attached"].buttons {
display: -webkit-inline-box;
display: -ms-inline-flexbox;
display: inline-flex;
margin-left: 0em;
margin-right: -1px;
border-radius: 0.28571429rem 0em 0em 0.28571429rem;
}
.ui[class*="right attached"].buttons .button:first-child {
margin-left: -1px;
border-radius: 0.28571429rem 0em 0em 0em;
}
.ui[class*="right attached"].buttons .button:last-child {
margin-left: -1px;
border-radius: 0em 0em 0em 0.28571429rem;
}
/*-------------------
Fluid
--------------------*/
.ui.fluid.buttons,
.ui.fluid.button {
width: 100%;
}
.ui.fluid.button {
display: block;
}
.ui.two.buttons {
width: 100%;
}
.ui.two.buttons > .button {
width: 50%;
}
.ui.three.buttons {
width: 100%;
}
.ui.three.buttons > .button {
width: 33.333%;
}
.ui.four.buttons {
width: 100%;
}
.ui.four.buttons > .button {
width: 25%;
}
.ui.five.buttons {
width: 100%;
}
.ui.five.buttons > .button {
width: 20%;
}
.ui.six.buttons {
width: 100%;
}
.ui.six.buttons > .button {
width: 16.666%;
}
.ui.seven.buttons {
width: 100%;
}
.ui.seven.buttons > .button {
width: 14.285%;
}
.ui.eight.buttons {
width: 100%;
}
.ui.eight.buttons > .button {
width: 12.500%;
}
.ui.nine.buttons {
width: 100%;
}
.ui.nine.buttons > .button {
width: 11.11%;
}
.ui.ten.buttons {
width: 100%;
}
.ui.ten.buttons > .button {
width: 10%;
}
.ui.eleven.buttons {
width: 100%;
}
.ui.eleven.buttons > .button {
width: 9.09%;
}
.ui.twelve.buttons {
width: 100%;
}
.ui.twelve.buttons > .button {
width: 8.3333%;
}
/* Fluid Vertical Buttons */
.ui.fluid.vertical.buttons,
.ui.fluid.vertical.buttons > .button {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
width: auto;
}
.ui.two.vertical.buttons > .button {
height: 50%;
}
.ui.three.vertical.buttons > .button {
height: 33.333%;
}
.ui.four.vertical.buttons > .button {
height: 25%;
}
.ui.five.vertical.buttons > .button {
height: 20%;
}
.ui.six.vertical.buttons > .button {
height: 16.666%;
}
.ui.seven.vertical.buttons > .button {
height: 14.285%;
}
.ui.eight.vertical.buttons > .button {
height: 12.500%;
}
.ui.nine.vertical.buttons > .button {
height: 11.11%;
}
.ui.ten.vertical.buttons > .button {
height: 10%;
}
.ui.eleven.vertical.buttons > .button {
height: 9.09%;
}
.ui.twelve.vertical.buttons > .button {
height: 8.3333%;
}
/*-------------------
Colors
--------------------*/
/*--- Black ---*/
.ui.black.buttons .button,
.ui.black.button {
background-color: #1B1C1D;
color: #FFFFFF;
text-shadow: none;
background-image: none;
}
.ui.black.button {
box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.black.buttons .button:hover,
.ui.black.button:hover {
background-color: #27292a;
color: #FFFFFF;
text-shadow: none;
}
.ui.black.buttons .button:focus,
.ui.black.button:focus {
background-color: #2f3032;
color: #FFFFFF;
text-shadow: none;
}
.ui.black.buttons .button:active,
.ui.black.button:active {
background-color: #343637;
color: #FFFFFF;
text-shadow: none;
}
.ui.black.buttons .active.button,
.ui.black.buttons .active.button:active,
.ui.black.active.button,
.ui.black.button .active.button:active {
background-color: #0f0f10;
color: #FFFFFF;
text-shadow: none;
}
/* Basic */
.ui.basic.black.buttons .button,
.ui.basic.black.button {
box-shadow: 0px 0px 0px 1px #1B1C1D inset !important;
color: #1B1C1D !important;
}
.ui.basic.black.buttons .button:hover,
.ui.basic.black.button:hover {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #27292a inset !important;
color: #27292a !important;
}
.ui.basic.black.buttons .button:focus,
.ui.basic.black.button:focus {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #2f3032 inset !important;
color: #27292a !important;
}
.ui.basic.black.buttons .active.button,
.ui.basic.black.active.button {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #0f0f10 inset !important;
color: #343637 !important;
}
.ui.basic.black.buttons .button:active,
.ui.basic.black.button:active {
box-shadow: 0px 0px 0px 1px #343637 inset !important;
color: #343637 !important;
}
.ui.buttons:not(.vertical) > .basic.black.button:not(:first-child) {
margin-left: -1px;
}
/* Inverted */
.ui.inverted.black.buttons .button,
.ui.inverted.black.button {
background-color: transparent;
box-shadow: 0px 0px 0px 2px #D4D4D5 inset !important;
color: #FFFFFF;
}
.ui.inverted.black.buttons .button:hover,
.ui.inverted.black.button:hover,
.ui.inverted.black.buttons .button:focus,
.ui.inverted.black.button:focus,
.ui.inverted.black.buttons .button.active,
.ui.inverted.black.button.active,
.ui.inverted.black.buttons .button:active,
.ui.inverted.black.button:active {
box-shadow: none !important;
color: #FFFFFF;
}
.ui.inverted.black.buttons .button:hover,
.ui.inverted.black.button:hover {
background-color: #000000;
}
.ui.inverted.black.buttons .button:focus,
.ui.inverted.black.button:focus {
background-color: #000000;
}
.ui.inverted.black.buttons .active.button,
.ui.inverted.black.active.button {
background-color: #000000;
}
.ui.inverted.black.buttons .button:active,
.ui.inverted.black.button:active {
background-color: #000000;
}
/* Inverted Basic */
.ui.inverted.black.basic.buttons .button,
.ui.inverted.black.buttons .basic.button,
.ui.inverted.black.basic.button {
background-color: transparent;
box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
color: #FFFFFF !important;
}
.ui.inverted.black.basic.buttons .button:hover,
.ui.inverted.black.buttons .basic.button:hover,
.ui.inverted.black.basic.button:hover {
box-shadow: 0px 0px 0px 2px #000000 inset !important;
color: #FFFFFF !important;
}
.ui.inverted.black.basic.buttons .button:focus,
.ui.inverted.black.basic.buttons .button:focus,
.ui.inverted.black.basic.button:focus {
box-shadow: 0px 0px 0px 2px #000000 inset !important;
color: #545454 !important;
}
.ui.inverted.black.basic.buttons .active.button,
.ui.inverted.black.buttons .basic.active.button,
.ui.inverted.black.basic.active.button {
box-shadow: 0px 0px 0px 2px #000000 inset !important;
color: #FFFFFF !important;
}
.ui.inverted.black.basic.buttons .button:active,
.ui.inverted.black.buttons .basic.button:active,
.ui.inverted.black.basic.button:active {
box-shadow: 0px 0px 0px 2px #000000 inset !important;
color: #FFFFFF !important;
}
/*--- Grey ---*/
.ui.grey.buttons .button,
.ui.grey.button {
background-color: #767676;
color: #FFFFFF;
text-shadow: none;
background-image: none;
}
.ui.grey.button {
box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.grey.buttons .button:hover,
.ui.grey.button:hover {
background-color: #838383;
color: #FFFFFF;
text-shadow: none;
}
.ui.grey.buttons .button:focus,
.ui.grey.button:focus {
background-color: #8a8a8a;
color: #FFFFFF;
text-shadow: none;
}
.ui.grey.buttons .button:active,
.ui.grey.button:active {
background-color: #909090;
color: #FFFFFF;
text-shadow: none;
}
.ui.grey.buttons .active.button,
.ui.grey.buttons .active.button:active,
.ui.grey.active.button,
.ui.grey.button .active.button:active {
background-color: #696969;
color: #FFFFFF;
text-shadow: none;
}
/* Basic */
.ui.basic.grey.buttons .button,
.ui.basic.grey.button {
box-shadow: 0px 0px 0px 1px #767676 inset !important;
color: #767676 !important;
}
.ui.basic.grey.buttons .button:hover,
.ui.basic.grey.button:hover {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #838383 inset !important;
color: #838383 !important;
}
.ui.basic.grey.buttons .button:focus,
.ui.basic.grey.button:focus {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #8a8a8a inset !important;
color: #838383 !important;
}
.ui.basic.grey.buttons .active.button,
.ui.basic.grey.active.button {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #696969 inset !important;
color: #909090 !important;
}
.ui.basic.grey.buttons .button:active,
.ui.basic.grey.button:active {
box-shadow: 0px 0px 0px 1px #909090 inset !important;
color: #909090 !important;
}
.ui.buttons:not(.vertical) > .basic.grey.button:not(:first-child) {
margin-left: -1px;
}
/* Inverted */
.ui.inverted.grey.buttons .button,
.ui.inverted.grey.button {
background-color: transparent;
box-shadow: 0px 0px 0px 2px #D4D4D5 inset !important;
color: #FFFFFF;
}
.ui.inverted.grey.buttons .button:hover,
.ui.inverted.grey.button:hover,
.ui.inverted.grey.buttons .button:focus,
.ui.inverted.grey.button:focus,
.ui.inverted.grey.buttons .button.active,
.ui.inverted.grey.button.active,
.ui.inverted.grey.buttons .button:active,
.ui.inverted.grey.button:active {
box-shadow: none !important;
color: rgba(0, 0, 0, 0.6);
}
.ui.inverted.grey.buttons .button:hover,
.ui.inverted.grey.button:hover {
background-color: #cfd0d2;
}
.ui.inverted.grey.buttons .button:focus,
.ui.inverted.grey.button:focus {
background-color: #c7c9cb;
}
.ui.inverted.grey.buttons .active.button,
.ui.inverted.grey.active.button {
background-color: #cfd0d2;
}
.ui.inverted.grey.buttons .button:active,
.ui.inverted.grey.button:active {
background-color: #c2c4c5;
}
/* Inverted Basic */
.ui.inverted.grey.basic.buttons .button,
.ui.inverted.grey.buttons .basic.button,
.ui.inverted.grey.basic.button {
background-color: transparent;
box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
color: #FFFFFF !important;
}
.ui.inverted.grey.basic.buttons .button:hover,
.ui.inverted.grey.buttons .basic.button:hover,
.ui.inverted.grey.basic.button:hover {
box-shadow: 0px 0px 0px 2px #cfd0d2 inset !important;
color: #FFFFFF !important;
}
.ui.inverted.grey.basic.buttons .button:focus,
.ui.inverted.grey.basic.buttons .button:focus,
.ui.inverted.grey.basic.button:focus {
box-shadow: 0px 0px 0px 2px #c7c9cb inset !important;
color: #DCDDDE !important;
}
.ui.inverted.grey.basic.buttons .active.button,
.ui.inverted.grey.buttons .basic.active.button,
.ui.inverted.grey.basic.active.button {
box-shadow: 0px 0px 0px 2px #cfd0d2 inset !important;
color: #FFFFFF !important;
}
.ui.inverted.grey.basic.buttons .button:active,
.ui.inverted.grey.buttons .basic.button:active,
.ui.inverted.grey.basic.button:active {
box-shadow: 0px 0px 0px 2px #c2c4c5 inset !important;
color: #FFFFFF !important;
}
/*--- Brown ---*/
.ui.brown.buttons .button,
.ui.brown.button {
background-color: #A5673F;
color: #FFFFFF;
text-shadow: none;
background-image: none;
}
.ui.brown.button {
box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.brown.buttons .button:hover,
.ui.brown.button:hover {
background-color: #975b33;
color: #FFFFFF;
text-shadow: none;
}
.ui.brown.buttons .button:focus,
.ui.brown.button:focus {
background-color: #90532b;
color: #FFFFFF;
text-shadow: none;
}
.ui.brown.buttons .button:active,
.ui.brown.button:active {
background-color: #805031;
color: #FFFFFF;
text-shadow: none;
}
.ui.brown.buttons .active.button,
.ui.brown.buttons .active.button:active,
.ui.brown.active.button,
.ui.brown.button .active.button:active {
background-color: #995a31;
color: #FFFFFF;
text-shadow: none;
}
/* Basic */
.ui.basic.brown.buttons .button,
.ui.basic.brown.button {
box-shadow: 0px 0px 0px 1px #A5673F inset !important;
color: #A5673F !important;
}
.ui.basic.brown.buttons .button:hover,
.ui.basic.brown.button:hover {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #975b33 inset !important;
color: #975b33 !important;
}
.ui.basic.brown.buttons .button:focus,
.ui.basic.brown.button:focus {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #90532b inset !important;
color: #975b33 !important;
}
.ui.basic.brown.buttons .active.button,
.ui.basic.brown.active.button {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #995a31 inset !important;
color: #805031 !important;
}
.ui.basic.brown.buttons .button:active,
.ui.basic.brown.button:active {
box-shadow: 0px 0px 0px 1px #805031 inset !important;
color: #805031 !important;
}
.ui.buttons:not(.vertical) > .basic.brown.button:not(:first-child) {
margin-left: -1px;
}
/* Inverted */
.ui.inverted.brown.buttons .button,
.ui.inverted.brown.button {
background-color: transparent;
box-shadow: 0px 0px 0px 2px #D67C1C inset !important;
color: #D67C1C;
}
.ui.inverted.brown.buttons .button:hover,
.ui.inverted.brown.button:hover,
.ui.inverted.brown.buttons .button:focus,
.ui.inverted.brown.button:focus,
.ui.inverted.brown.buttons .button.active,
.ui.inverted.brown.button.active,
.ui.inverted.brown.buttons .button:active,
.ui.inverted.brown.button:active {
box-shadow: none !important;
color: #FFFFFF;
}
.ui.inverted.brown.buttons .button:hover,
.ui.inverted.brown.button:hover {
background-color: #c86f11;
}
.ui.inverted.brown.buttons .button:focus,
.ui.inverted.brown.button:focus {
background-color: #c16808;
}
.ui.inverted.brown.buttons .active.button,
.ui.inverted.brown.active.button {
background-color: #cc6f0d;
}
.ui.inverted.brown.buttons .button:active,
.ui.inverted.brown.button:active {
background-color: #a96216;
}
/* Inverted Basic */
.ui.inverted.brown.basic.buttons .button,
.ui.inverted.brown.buttons .basic.button,
.ui.inverted.brown.basic.button {
background-color: transparent;
box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
color: #FFFFFF !important;
}
.ui.inverted.brown.basic.buttons .button:hover,
.ui.inverted.brown.buttons .basic.button:hover,
.ui.inverted.brown.basic.button:hover {
box-shadow: 0px 0px 0px 2px #c86f11 inset !important;
color: #D67C1C !important;
}
.ui.inverted.brown.basic.buttons .button:focus,
.ui.inverted.brown.basic.buttons .button:focus,
.ui.inverted.brown.basic.button:focus {
box-shadow: 0px 0px 0px 2px #c16808 inset !important;
color: #D67C1C !important;
}
.ui.inverted.brown.basic.buttons .active.button,
.ui.inverted.brown.buttons .basic.active.button,
.ui.inverted.brown.basic.active.button {
box-shadow: 0px 0px 0px 2px #cc6f0d inset !important;
color: #D67C1C !important;
}
.ui.inverted.brown.basic.buttons .button:active,
.ui.inverted.brown.buttons .basic.button:active,
.ui.inverted.brown.basic.button:active {
box-shadow: 0px 0px 0px 2px #a96216 inset !important;
color: #D67C1C !important;
}
/*--- Blue ---*/
.ui.blue.buttons .button,
.ui.blue.button {
background-color: #2185D0;
color: #FFFFFF;
text-shadow: none;
background-image: none;
}
.ui.blue.button {
box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.blue.buttons .button:hover,
.ui.blue.button:hover {
background-color: #1678c2;
color: #FFFFFF;
text-shadow: none;
}
.ui.blue.buttons .button:focus,
.ui.blue.button:focus {
background-color: #0d71bb;
color: #FFFFFF;
text-shadow: none;
}
.ui.blue.buttons .button:active,
.ui.blue.button:active {
background-color: #1a69a4;
color: #FFFFFF;
text-shadow: none;
}
.ui.blue.buttons .active.button,
.ui.blue.buttons .active.button:active,
.ui.blue.active.button,
.ui.blue.button .active.button:active {
background-color: #1279c6;
color: #FFFFFF;
text-shadow: none;
}
/* Basic */
.ui.basic.blue.buttons .button,
.ui.basic.blue.button {
box-shadow: 0px 0px 0px 1px #2185D0 inset !important;
color: #2185D0 !important;
}
.ui.basic.blue.buttons .button:hover,
.ui.basic.blue.button:hover {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #1678c2 inset !important;
color: #1678c2 !important;
}
.ui.basic.blue.buttons .button:focus,
.ui.basic.blue.button:focus {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #0d71bb inset !important;
color: #1678c2 !important;
}
.ui.basic.blue.buttons .active.button,
.ui.basic.blue.active.button {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #1279c6 inset !important;
color: #1a69a4 !important;
}
.ui.basic.blue.buttons .button:active,
.ui.basic.blue.button:active {
box-shadow: 0px 0px 0px 1px #1a69a4 inset !important;
color: #1a69a4 !important;
}
.ui.buttons:not(.vertical) > .basic.blue.button:not(:first-child) {
margin-left: -1px;
}
/* Inverted */
.ui.inverted.blue.buttons .button,
.ui.inverted.blue.button {
background-color: transparent;
box-shadow: 0px 0px 0px 2px #54C8FF inset !important;
color: #54C8FF;
}
.ui.inverted.blue.buttons .button:hover,
.ui.inverted.blue.button:hover,
.ui.inverted.blue.buttons .button:focus,
.ui.inverted.blue.button:focus,
.ui.inverted.blue.buttons .button.active,
.ui.inverted.blue.button.active,
.ui.inverted.blue.buttons .button:active,
.ui.inverted.blue.button:active {
box-shadow: none !important;
color: #FFFFFF;
}
.ui.inverted.blue.buttons .button:hover,
.ui.inverted.blue.button:hover {
background-color: #3ac0ff;
}
.ui.inverted.blue.buttons .button:focus,
.ui.inverted.blue.button:focus {
background-color: #2bbbff;
}
.ui.inverted.blue.buttons .active.button,
.ui.inverted.blue.active.button {
background-color: #3ac0ff;
}
.ui.inverted.blue.buttons .button:active,
.ui.inverted.blue.button:active {
background-color: #21b8ff;
}
/* Inverted Basic */
.ui.inverted.blue.basic.buttons .button,
.ui.inverted.blue.buttons .basic.button,
.ui.inverted.blue.basic.button {
background-color: transparent;
box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important;
color: #FFFFFF !important;
}
.ui.inverted.blue.basic.buttons .button:hover,
.ui.inverted.blue.buttons .basic.button:hover,
.ui.inverted.blue.basic.button:hover {
box-shadow: 0px 0px 0px 2px #3ac0ff inset !important;
color: #54C8FF !important;
}
.ui.inverted.blue.basic.buttons .button:focus,
.ui.inverted.blue.basic.buttons .button:focus,
.ui.inverted.blue.basic.button:focus {
box-shadow: 0px 0px 0px 2px #2bbbff inset !important;
color: #54C8FF !important;
}
.ui.inverted.blue.basic.buttons .active.button,
.ui.inverted.blue.buttons .basic.active.button,
.ui.inverted.blue.basic.active.button {
box-shadow: 0px 0px 0px 2px #3ac0ff inset !important;
color: #54C8FF !important;
}
.ui.inverted.blue.basic.buttons .button:active,
.ui.inverted.blue.buttons .basic.button:active,
.ui.inverted.blue.basic.button:active {
box-shadow: 0px 0px 0px 2px #21b8ff inset !important;
color: #54C8FF !important;
}
/*--- Green ---*/
.ui.green.buttons .button,
.ui.green.button {
background-color: #21BA45;
color: #FFFFFF;
text-shadow: none;
background-image: none;
}
.ui.green.button {
box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset;
}
.ui.green.buttons .button:hover,
.ui.green.button:hover {
background-color: #16ab39;
color: #FFFFFF;
text-shadow: none;
}
.ui.green.buttons .button:focus,
.ui.green.button:focus {
background-color: #0ea432;
color: #FFFFFF;
text-shadow: none;
}
.ui.green.buttons .button:active,
.ui.green.button:active {
background-color: #198f35;
color: #FFFFFF;
text-shadow: none;
}
.ui.green.buttons .active.button,
.ui.green.buttons .active.button:active,
.ui.green.active.button,
.ui.green.button .active.button:active {
background-color: #13ae38;
color: #FFFFFF;
text-shadow: none;
}
/* Basic */
.ui.basic.green.buttons .button,
.ui.basic.green.button {
box-shadow: 0px 0px 0px 1px #21BA45 inset !important;
color: #21BA45 !important;
}
.ui.basic.green.buttons .button:hover,
.ui.basic.green.button:hover {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #16ab39 inset !important;
color: #16ab39 !important;
}
.ui.basic.green.buttons .button:focus,
.ui.basic.green.button:focus {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #0ea432 inset !important;
color: #16ab39 !important;
}
.ui.basic.green.buttons .active.button,
.ui.basic.green.active.button {
background: transparent !important;
box-shadow: 0px 0px 0px 1px #13ae38 inset !important;
color: #198f35 !important;
}
.ui.basic.green.buttons .button:active,
.ui.basic.green.button:active {
box-shadow: 0px 0px 0px 1px #198f35 inset !important;
color: #198f35 !important;
}
.ui.buttons:not(.vertical) > .basic.green.button:not(:first-child) {
margin-left: -1px;
}
/* Inverted */
.ui.inverted.green.buttons .button,
.ui.inverted.green.button {
background-color: transparent;
box-shadow: 0px 0px 0px 2px #2ECC40 inset !important;
color: #2ECC40;
}
.ui.inverted.green.buttons .button:hover,
.ui.inverted.green.button:hover,
.ui.inverted.green.buttons .button:focus,
.ui.inverted.green.button:focus,
.ui.inverted.green.buttons .button.active,
.ui.inverted.green.button.active,
.ui.inverted.green.buttons .button:active,
.ui.inverted.green.button:active {
box-shadow: none !important;
color: #FFFFFF;
}
.ui.inverted.green.buttons .button:hover,
.ui.inverted.green.button:hover {
background-color: #22be34;
gitextract_d86l0a0j/
├── .gitignore
├── 404.md
├── LICENSE
├── README.md
├── _config.yml
├── _data/
│ └── bio.json
├── _includes/
│ ├── bio-address.html
│ ├── bio-awards-1.html
│ ├── bio-awards-2.html
│ ├── bio-education-1.html
│ ├── bio-education-2.html
│ ├── bio-interests-1.html
│ ├── bio-network-links.html
│ ├── bio-publications-1.html
│ ├── bio-publications-2.html
│ ├── bio-references-1.html
│ ├── bio-skills-1.html
│ ├── bio-volunteer-1.html
│ ├── bio-volunteer-2.html
│ ├── bio-work-1.html
│ ├── bio-work-2.html
│ ├── essay-card-1a.html
│ ├── essay-card.html
│ ├── essay-row.html
│ ├── footer.html
│ ├── head.html
│ ├── header.html
│ ├── home-network-links.html
│ ├── menubar.html
│ ├── project-card-1a.html
│ ├── project-card.html
│ ├── project-row.html
│ ├── theme-bio-builtin-1.html
│ ├── theme-bio-builtin-2.html
│ ├── theme-essays-builtin-1.html
│ ├── theme-essays-builtin-1a.html
│ ├── theme-essays-builtin-2.html
│ ├── theme-home-builtin-1.html
│ ├── theme-home-builtin-2.html
│ ├── theme-home-builtin-3.html
│ ├── theme-projects-builtin-1.html
│ ├── theme-projects-builtin-1a.html
│ └── theme-projects-builtin-2.html
├── _layouts/
│ ├── bio.html
│ ├── default.html
│ ├── essay.html
│ ├── essays.html
│ ├── missingpage.html
│ ├── project.html
│ └── projects.html
├── bio/
│ └── index.html
├── css/
│ ├── print-customizations.scss
│ ├── print-default.scss
│ ├── rouge/
│ │ ├── base16.css
│ │ ├── base16.dark.css
│ │ ├── base16.light.css
│ │ ├── base16.solarized.css
│ │ ├── colorful.css
│ │ ├── github.css
│ │ ├── gruvbox.css
│ │ ├── igorpro.css
│ │ ├── molokai.css
│ │ ├── monokai.css
│ │ ├── thankful_eyes.css
│ │ └── tulip.css
│ ├── semantic-ui/
│ │ ├── components/
│ │ │ ├── accordion.css
│ │ │ ├── accordion.js
│ │ │ ├── ad.css
│ │ │ ├── api.js
│ │ │ ├── breadcrumb.css
│ │ │ ├── button.css
│ │ │ ├── card.css
│ │ │ ├── checkbox.css
│ │ │ ├── checkbox.js
│ │ │ ├── comment.css
│ │ │ ├── container.css
│ │ │ ├── dimmer.css
│ │ │ ├── dimmer.js
│ │ │ ├── divider.css
│ │ │ ├── dropdown.css
│ │ │ ├── dropdown.js
│ │ │ ├── embed.css
│ │ │ ├── embed.js
│ │ │ ├── feed.css
│ │ │ ├── flag.css
│ │ │ ├── form.css
│ │ │ ├── form.js
│ │ │ ├── grid.css
│ │ │ ├── header.css
│ │ │ ├── icon.css
│ │ │ ├── image.css
│ │ │ ├── input.css
│ │ │ ├── item.css
│ │ │ ├── label.css
│ │ │ ├── list.css
│ │ │ ├── loader.css
│ │ │ ├── menu.css
│ │ │ ├── message.css
│ │ │ ├── modal.css
│ │ │ ├── modal.js
│ │ │ ├── nag.css
│ │ │ ├── nag.js
│ │ │ ├── popup.css
│ │ │ ├── popup.js
│ │ │ ├── progress.css
│ │ │ ├── progress.js
│ │ │ ├── rail.css
│ │ │ ├── rating.css
│ │ │ ├── rating.js
│ │ │ ├── reset.css
│ │ │ ├── reveal.css
│ │ │ ├── search.css
│ │ │ ├── search.js
│ │ │ ├── segment.css
│ │ │ ├── shape.css
│ │ │ ├── shape.js
│ │ │ ├── sidebar.css
│ │ │ ├── sidebar.js
│ │ │ ├── site.css
│ │ │ ├── site.js
│ │ │ ├── state.js
│ │ │ ├── statistic.css
│ │ │ ├── step.css
│ │ │ ├── sticky.css
│ │ │ ├── sticky.js
│ │ │ ├── tab.css
│ │ │ ├── tab.js
│ │ │ ├── table.css
│ │ │ ├── transition.css
│ │ │ ├── transition.js
│ │ │ └── visibility.js
│ │ ├── semantic.css
│ │ └── semantic.js
│ ├── stylesheet-customizations.scss
│ └── stylesheet-default.scss
├── essays/
│ ├── 2015-08-26.md
│ ├── 2015-09-08.md
│ ├── 2016-02-06.md
│ └── index.html
├── index.html
├── js/
│ ├── semantic-ui/
│ │ ├── accordion.js
│ │ ├── api.js
│ │ ├── checkbox.js
│ │ ├── colorize.js
│ │ ├── dimmer.js
│ │ ├── dropdown.js
│ │ ├── embed.js
│ │ ├── form.js
│ │ ├── modal.js
│ │ ├── nag.js
│ │ ├── popup.js
│ │ ├── progress.js
│ │ ├── rating.js
│ │ ├── search.js
│ │ ├── shape.js
│ │ ├── sidebar.js
│ │ ├── site.js
│ │ ├── state.js
│ │ ├── sticky.js
│ │ ├── tab.js
│ │ ├── transition.js
│ │ ├── video.js
│ │ ├── visibility.js
│ │ └── visit.js
│ └── semantic-ui.js
└── projects/
├── index.html
├── project-1.md
├── project-2.md
└── project-3.md
Condensed preview — 169 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (4,644K chars).
[
{
"path": ".gitignore",
"chars": 96,
"preview": "# Created by .ignore support plugin (hsz.mobi)\n\n.idea/\n*.iml\n_site/\n.sass-cache/\n.jekyll-cache/\n"
},
{
"path": "404.md",
"chars": 28,
"preview": "---\nlayout: missingpage\n---\n"
},
{
"path": "LICENSE",
"chars": 1081,
"preview": "The MIT License (MIT)\n\nCopyright (c) 2016 ics-portfolios\n\nPermission is hereby granted, free of charge, to any person ob"
},
{
"path": "README.md",
"chars": 217,
"preview": "# Technical Portfolio\n\nThis repository hosts a technical portfolio built using [TechFolio](http://techfolios.github.io)."
},
{
"path": "_config.yml",
"chars": 942,
"preview": "# Site settings\n\n# REQUIRED CHANGES\n# Edit next line, providing your own name.\ntitle: Molly Maluhia | Professional Portf"
},
{
"path": "_data/bio.json",
"chars": 4468,
"preview": "{\n \"basics\": {\n \"name\": \"Molly Maluhia\",\n \"label\": \"Student\",\n \"picture\": \"https://techfolios.github.io/templa"
},
{
"path": "_includes/bio-address.html",
"chars": 380,
"preview": "<!-- Used by theme-bio-builtin-1,2 -->\n\n<p class=\"ui no-bottom\">{{ site.data.bio.basics.location.address }}</p>\n<p class"
},
{
"path": "_includes/bio-awards-1.html",
"chars": 622,
"preview": "<!-- Used by theme-bio-builtin-1 -->\n\n{% if site.data.bio.awards %}\n<div class=\"row\">\n <div class=\"two wide column\">\n "
},
{
"path": "_includes/bio-awards-2.html",
"chars": 1391,
"preview": "<!-- Used by theme-bio-builtin-2 -->\n\n{% assign hasGrant = false %}\n{% assign hasNonGrant = false %}\n{% for entry in sit"
},
{
"path": "_includes/bio-education-1.html",
"chars": 1256,
"preview": "<!-- Used by theme-bio-builtin-1 -->\n\n\n<div class=\"row\">\n<div class=\"two wide column\">\n <h3 class=\"ui left aligned head"
},
{
"path": "_includes/bio-education-2.html",
"chars": 1141,
"preview": "<!-- Used by theme-bio-builtin-2 -->\n\n<div class=\"sixteen wide column no-bottom\">\n <h3 class=\"ui left aligned header no"
},
{
"path": "_includes/bio-interests-1.html",
"chars": 728,
"preview": "<!-- Used by theme-bio-builtin-1 -->\n\n{% if site.data.bio.interests %}\n<div class=\"row\">\n <div class=\"two wide column\">"
},
{
"path": "_includes/bio-network-links.html",
"chars": 689,
"preview": "<!-- Used by theme-bio-builtin-1,2 -->\n\n{% if site.data.bio.basics.website %}\n <p class=\"ui no-bottom\"><a href=\"{{ site"
},
{
"path": "_includes/bio-publications-1.html",
"chars": 896,
"preview": "<!-- Used by theme-bio-builtin-1 -->\n\n{% if site.data.bio.publications %}\n<div class=\"row\">\n <div class=\"two wide colum"
},
{
"path": "_includes/bio-publications-2.html",
"chars": 4616,
"preview": "<!-- Used by theme-bio-builtin-2 -->\n\n{% assign hasJournal = false %}\n{% assign hasConference = false %}\n{% assign hasWo"
},
{
"path": "_includes/bio-references-1.html",
"chars": 514,
"preview": "<!-- Used by theme-bio-builtin-1 -->\n\n{% if site.data.bio.references %}\n<div class=\"row\">\n <div class=\"two wide column\""
},
{
"path": "_includes/bio-skills-1.html",
"chars": 552,
"preview": "<!-- Used by theme-bio-builtin-1 -->\n\n{% if site.data.bio.skills %}\n<div class=\"row\">\n <div class=\"two wide column\">\n "
},
{
"path": "_includes/bio-volunteer-1.html",
"chars": 1632,
"preview": "<!-- Used by theme-bio-builtin-1 -->\n\n{% if site.data.bio.volunteer %}\n<div class=\"row\">\n <div class=\"two wide column\">"
},
{
"path": "_includes/bio-volunteer-2.html",
"chars": 1519,
"preview": "<!-- Used by theme-bio-builtin-2 -->\n\n{% if site.data.bio.volunteer %}\n<div class=\"sixteen wide column no-bottom\">\n <h3"
},
{
"path": "_includes/bio-work-1.html",
"chars": 1458,
"preview": "<!-- Used by theme-bio-builtin-1 -->\n\n{% if site.data.bio.work %}\n<div class=\"row\">\n <div class=\"two wide column\">\n "
},
{
"path": "_includes/bio-work-2.html",
"chars": 1359,
"preview": "<!-- Used by theme-bio-builtin-2 -->\n\n{% if site.data.bio.work %}\n<div class=\"sixteen wide column no-bottom\">\n <h3 clas"
},
{
"path": "_includes/essay-card-1a.html",
"chars": 629,
"preview": "<!-- Used by theme-essays-builtin-1 -->\n\n<a class=\"card\" href=\"{{ site.baseurl}}{{ include.page.url }}\">\n <div class=\"c"
},
{
"path": "_includes/essay-card.html",
"chars": 688,
"preview": "<!-- Used by theme-essays-builtin-1 -->\n\n<div class=\"card\">\n <div class=\"content\">\n <span class=\"header\">{{ include."
},
{
"path": "_includes/essay-row.html",
"chars": 796,
"preview": "<!-- Used by theme-essays-builtin-2 -->\n\n<div class=\"row\">\n <div style=\"text-align: center\" class=\"three wide column\">\n"
},
{
"path": "_includes/footer.html",
"chars": 152,
"preview": "<!-- Always create iframes to embed videos if present. See: http://semantic-ui.com/modules/embed.html -->\n\n<script>\n $("
},
{
"path": "_includes/head.html",
"chars": 1612,
"preview": "<head>\n <meta charset=\"utf-8\">\n <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n <meta name=\"viewport\" content="
},
{
"path": "_includes/header.html",
"chars": 56,
"preview": "<!-- if you want a global header, put the code here. -->"
},
{
"path": "_includes/home-network-links.html",
"chars": 367,
"preview": "<!-- Used by theme-home-builtin-1,2,3 -->\n\n{% for profile in site.data.bio.basics.profiles %}\n <a href=\"{{ profile.url"
},
{
"path": "_includes/menubar.html",
"chars": 1154,
"preview": "<!-- Used by all builtin themes. Now we list number of essays and projects. -->\n\n{% assign essay_pages = site.pages | wh"
},
{
"path": "_includes/project-card-1a.html",
"chars": 797,
"preview": "<!-- Used by theme-projects-builtin-1a, entire card is the link. -->\n\n\n<a class=\"card\" href=\"{% if page.projecturl %}{{ "
},
{
"path": "_includes/project-card.html",
"chars": 917,
"preview": "<!-- Used by theme-projects-builtin-1 -->\n\n<div class=\"card\">\n {% if include.page.image %}\n <div class=\"image\">\n "
},
{
"path": "_includes/project-row.html",
"chars": 1008,
"preview": "<!-- Used by theme-projects-builtin-2 -->\n\n<div class=\"row\">\n <div style=\"text-align: center\" class=\"three wide column\""
},
{
"path": "_includes/theme-bio-builtin-1.html",
"chars": 778,
"preview": "<div style=\"margin-top: 10px; \" class=\"ui stackable grid container\">\n\n <div class=\"sixteen wide column no-bottom\">\n "
},
{
"path": "_includes/theme-bio-builtin-2.html",
"chars": 610,
"preview": "<div style=\"margin-top: 10px; margin-bottom: 20px\" class=\"ui stackable grid container\">\n\n <div class=\"sixteen wide colu"
},
{
"path": "_includes/theme-essays-builtin-1.html",
"chars": 372,
"preview": "<div style=\"padding-top: 20px\" class=\"ui container \">\n\n <div class=\"ui stackable centered four cards\">\n {% assign es"
},
{
"path": "_includes/theme-essays-builtin-1a.html",
"chars": 375,
"preview": "<div style=\"padding-top: 20px\" class=\"ui container \">\n\n <div class=\"ui stackable centered four cards\">\n {% assign es"
},
{
"path": "_includes/theme-essays-builtin-2.html",
"chars": 326,
"preview": "\n<div style=\"padding-top: 20px\" class=\"ui four column centered stackable grid container\">\n {% assign essay_pages = site"
},
{
"path": "_includes/theme-home-builtin-1.html",
"chars": 1975,
"preview": "<!-- Home page design with small circular image bisecting card. -->\n\n{% assign essay_pages = site.pages | where: \"type\","
},
{
"path": "_includes/theme-home-builtin-2.html",
"chars": 1573,
"preview": "<!-- Home page design with large image to left of bio info. -->\n{% assign essay_pages = site.pages | where: \"type\", \"ess"
},
{
"path": "_includes/theme-home-builtin-3.html",
"chars": 1839,
"preview": "<!-- Home page design with card including image -->\n{% assign essay_pages = site.pages | where: \"type\", \"essay\" | where"
},
{
"path": "_includes/theme-projects-builtin-1.html",
"chars": 370,
"preview": "<div style=\"padding-top: 20px\" class=\"ui container \">\n\n <div class=\"ui stackable centered four cards\">\n {% assign pr"
},
{
"path": "_includes/theme-projects-builtin-1a.html",
"chars": 473,
"preview": "<!-- Like theme-projects-builtin-1, but uses project-card-2.html (i.e. entire card is a link). -->\n\n<div style=\"padding-"
},
{
"path": "_includes/theme-projects-builtin-2.html",
"chars": 326,
"preview": "<div style=\"padding-top: 20px\" class=\"ui four column centered stackable grid container\">\n\n {% assign project_pages = si"
},
{
"path": "_layouts/bio.html",
"chars": 79,
"preview": "---\nlayout: default\n---\n\n{% include menubar.html active=\"bio\"%}\n\n{{ content }}\n"
},
{
"path": "_layouts/default.html",
"chars": 128,
"preview": "<!DOCTYPE html>\n<html>\n\n {% include head.html %}\n\n <body>\n {{ content }}\n {% include footer.html %}\n\n </body>\n\n"
},
{
"path": "_layouts/essay.html",
"chars": 220,
"preview": "---\nlayout: essays\n---\n\n<div style=\"margin-top: 20px; margin-bottom: 20px\" class=\"ui text container\">\n <h1>{{ page.titl"
},
{
"path": "_layouts/essays.html",
"chars": 84,
"preview": "---\nlayout: default\n---\n\n{% include menubar.html active=\"essays\" %}\n\n{{ content }}\n\n"
},
{
"path": "_layouts/missingpage.html",
"chars": 735,
"preview": "---\nlayout: default\n---\n\n{% include menubar.html active=\"\" %}\n\n<div style=\"padding-top: 20px\" class=\"ui container \">\n <"
},
{
"path": "_layouts/project.html",
"chars": 152,
"preview": "---\nlayout: projects\n---\n\n<div style=\"margin-top: 20px; margin-bottom: 20px\" class=\"ui text container\">\n <h1>{{ page.tit"
},
{
"path": "_layouts/projects.html",
"chars": 86,
"preview": "---\nlayout: default\n---\n\n{% include menubar.html active=\"projects\" %}\n\n{{ content }}\n\n"
},
{
"path": "bio/index.html",
"chars": 56,
"preview": "---\nlayout: bio\n---\n\n{% include {{ site.theme-bio }} %}\n"
},
{
"path": "css/print-customizations.scss",
"chars": 118,
"preview": "---\n# Provide front matter so Jekyll processes this file as SASS.\n---\n\n// Put your custom CSS for printing pages here."
},
{
"path": "css/print-default.scss",
"chars": 443,
"preview": "---\n# Provide front matter so Jekyll processes this file as SASS.\n---\n\n@charset \"utf-8\";\n\n// Used to remove menubar from"
},
{
"path": "css/rouge/base16.css",
"chars": 1431,
"preview": ".highlight table td { padding: 5px; }\n.highlight table pre { margin: 0; }\n.highlight, .highlight .w {\n color: #303030;\n"
},
{
"path": "css/rouge/base16.dark.css",
"chars": 1460,
"preview": ".highlight table td { padding: 5px; }\n.highlight table pre { margin: 0; }\n.highlight, .highlight .w {\n color: #d0d0d0;\n"
},
{
"path": "css/rouge/base16.light.css",
"chars": 1431,
"preview": ".highlight table td { padding: 5px; }\n.highlight table pre { margin: 0; }\n.highlight, .highlight .w {\n color: #303030;\n"
},
{
"path": "css/rouge/base16.solarized.css",
"chars": 1431,
"preview": ".highlight table td { padding: 5px; }\n.highlight table pre { margin: 0; }\n.highlight, .highlight .w {\n color: #586e75;\n"
},
{
"path": "css/rouge/colorful.css",
"chars": 2559,
"preview": ".highlight table td { padding: 5px; }\n.highlight table pre { margin: 0; }\n.highlight, .highlight .w {\n color: #bbbbbb;\n"
},
{
"path": "css/rouge/github.css",
"chars": 2903,
"preview": ".highlight table td { padding: 5px; }\n.highlight table pre { margin: 0; }\n.highlight .cm {\n color: #999988;\n font-styl"
},
{
"path": "css/rouge/gruvbox.css",
"chars": 1598,
"preview": ".highlight table td { padding: 5px; }\n.highlight table pre { margin: 0; }\n.highlight, .highlight .w {\n color: #fbf1c7;\n"
},
{
"path": "css/rouge/igorpro.css",
"chars": 756,
"preview": ".highlight table td { padding: 5px; }\n.highlight table pre { margin: 0; }\n.highlight, .highlight .w {\n color: #444444;\n"
},
{
"path": "css/rouge/molokai.css",
"chars": 2893,
"preview": ".highlight table td { padding: 5px; }\n.highlight table pre { margin: 0; }\n.highlight .c, .highlight .cd {\n color: #5e5d"
},
{
"path": "css/rouge/monokai.css",
"chars": 2951,
"preview": ".highlight table td { padding: 5px; }\n.highlight table pre { margin: 0; }\n.highlight .c, .highlight .cd {\n color: #7571"
},
{
"path": "css/rouge/thankful_eyes.css",
"chars": 2930,
"preview": ".highlight table td { padding: 5px; }\n.highlight table pre { margin: 0; }\n.highlight {\n color: #faf6e4;\n background-co"
},
{
"path": "css/rouge/tulip.css",
"chars": 2800,
"preview": ".highlight table td { padding: 5px; }\n.highlight table pre { margin: 0; }\n.highlight {\n color: #FFFFFF;\n background-co"
},
{
"path": "css/semantic-ui/components/accordion.css",
"chars": 8615,
"preview": "/*!\n * # Semantic UI 2.2.4 - Accordion\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT li"
},
{
"path": "css/semantic-ui/components/accordion.js",
"chars": 19989,
"preview": "/*!\n * # Semantic UI 2.2.4 - Accordion\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT li"
},
{
"path": "css/semantic-ui/components/ad.css",
"chars": 3901,
"preview": "/*!\n * # Semantic UI 2.2.4 - Ad\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2013 Contributors\n * R"
},
{
"path": "css/semantic-ui/components/api.js",
"chars": 39785,
"preview": "/*!\n * # Semantic UI 2.2.4 - API\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license\n"
},
{
"path": "css/semantic-ui/components/breadcrumb.css",
"chars": 2042,
"preview": "/*!\n * # Semantic UI 2.2.4 - Breadcrumb\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT l"
},
{
"path": "css/semantic-ui/components/button.css",
"chars": 89674,
"preview": "/*!\n * # Semantic UI 2.2.4 - Button\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licen"
},
{
"path": "css/semantic-ui/components/card.css",
"chars": 20883,
"preview": "/*!\n * # Semantic UI 2.2.4 - Item\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license"
},
{
"path": "css/semantic-ui/components/checkbox.css",
"chars": 15811,
"preview": "/*!\n * # Semantic UI 2.2.4 - Checkbox\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT lic"
},
{
"path": "css/semantic-ui/components/checkbox.js",
"chars": 26081,
"preview": "/*!\n * # Semantic UI 2.2.4 - Checkbox\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT lic"
},
{
"path": "css/semantic-ui/components/comment.css",
"chars": 4757,
"preview": "/*!\n * # Semantic UI 2.2.4 - Comment\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT lice"
},
{
"path": "css/semantic-ui/components/container.css",
"chars": 2957,
"preview": "/*!\n * # Semantic UI 2.2.4 - Container\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT li"
},
{
"path": "css/semantic-ui/components/dimmer.css",
"chars": 4030,
"preview": "/*!\n * # Semantic UI 2.2.4 - Dimmer\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licen"
},
{
"path": "css/semantic-ui/components/dimmer.js",
"chars": 20753,
"preview": "/*!\n * # Semantic UI 2.2.4 - Dimmer\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licen"
},
{
"path": "css/semantic-ui/components/divider.css",
"chars": 7774,
"preview": "/*!\n * # Semantic UI 2.2.4 - Divider\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT lice"
},
{
"path": "css/semantic-ui/components/dropdown.css",
"chars": 33634,
"preview": "/*!\n * # Semantic UI 2.2.4 - Dropdown\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT lic"
},
{
"path": "css/semantic-ui/components/dropdown.js",
"chars": 133553,
"preview": "/*!\n * # Semantic UI 2.2.4 - Dropdown\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT lic"
},
{
"path": "css/semantic-ui/components/embed.css",
"chars": 3003,
"preview": "/*!\n * # Semantic UI 2.2.4 - Video\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/embed.js",
"chars": 19901,
"preview": "/*!\n * # Semantic UI 2.2.4 - Embed\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/feed.css",
"chars": 5584,
"preview": "/*!\n * # Semantic UI 2.2.4 - Feed\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license"
},
{
"path": "css/semantic-ui/components/flag.css",
"chars": 21285,
"preview": "/*!\n * # Semantic UI 2.2.4 - Flag\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license"
},
{
"path": "css/semantic-ui/components/form.css",
"chars": 25685,
"preview": "/*!\n * # Semantic UI 2.2.4 - Form\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license"
},
{
"path": "css/semantic-ui/components/form.js",
"chars": 51240,
"preview": "/*!\n * # Semantic UI 2.2.4 - Form Validation\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the "
},
{
"path": "css/semantic-ui/components/grid.css",
"chars": 69060,
"preview": "/*!\n * # Semantic UI 2.2.4 - Grid\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license"
},
{
"path": "css/semantic-ui/components/header.css",
"chars": 12336,
"preview": "/*!\n * # Semantic UI 2.2.4 - Header\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licen"
},
{
"path": "css/semantic-ui/components/icon.css",
"chars": 52375,
"preview": "/*!\n * # Semantic UI 2.2.4 - Icon\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license"
},
{
"path": "css/semantic-ui/components/image.css",
"chars": 5279,
"preview": "/*!\n * # Semantic UI 2.2.4 - Image\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/input.css",
"chars": 11634,
"preview": "/*!\n * # Semantic UI 2.2.4 - Input\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/item.css",
"chars": 8861,
"preview": "/*!\n * # Semantic UI 2.2.4 - Item\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license"
},
{
"path": "css/semantic-ui/components/label.css",
"chars": 26835,
"preview": "/*!\n * # Semantic UI 2.2.4 - Label\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/list.css",
"chars": 21455,
"preview": "/*!\n * # Semantic UI 2.2.4 - List\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license"
},
{
"path": "css/semantic-ui/components/loader.css",
"chars": 6770,
"preview": "/*!\n * # Semantic UI 2.2.4 - Loader\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licen"
},
{
"path": "css/semantic-ui/components/menu.css",
"chars": 41281,
"preview": "/*\n * # Semantic - Menu\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributor\n * Released u"
},
{
"path": "css/semantic-ui/components/message.css",
"chars": 9540,
"preview": "/*!\n * # Semantic UI 2.2.4 - Message\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT lice"
},
{
"path": "css/semantic-ui/components/modal.css",
"chars": 9889,
"preview": "/*!\n * # Semantic UI 2.2.4 - Modal\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/modal.js",
"chars": 27789,
"preview": "/*!\n * # Semantic UI 2.2.4 - Modal\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/nag.css",
"chars": 2513,
"preview": "/*!\n * # Semantic UI 2.2.4 - Nag\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license\n"
},
{
"path": "css/semantic-ui/components/nag.js",
"chars": 15046,
"preview": "/*!\n * # Semantic UI 2.2.4 - Nag\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license\n"
},
{
"path": "css/semantic-ui/components/popup.css",
"chars": 15541,
"preview": "/*!\n * # Semantic UI 2.2.4 - Popup\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/popup.js",
"chars": 48545,
"preview": "/*!\n * # Semantic UI 2.2.4 - Popup\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/progress.css",
"chars": 10116,
"preview": "/*!\n * # Semantic UI 2.2.4 - Progress Bar\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT"
},
{
"path": "css/semantic-ui/components/progress.js",
"chars": 29651,
"preview": "/*!\n * # Semantic UI 2.2.4 - Progress\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT lic"
},
{
"path": "css/semantic-ui/components/rail.css",
"chars": 2494,
"preview": "/*!\n * # Semantic UI 2.2.4 - Rail\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license"
},
{
"path": "css/semantic-ui/components/rating.css",
"chars": 20433,
"preview": "/*!\n * # Semantic UI 2.2.4 - Rating\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licen"
},
{
"path": "css/semantic-ui/components/rating.js",
"chars": 14361,
"preview": "/*!\n * # Semantic UI 2.2.4 - Rating\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licen"
},
{
"path": "css/semantic-ui/components/reset.css",
"chars": 8441,
"preview": "/*!\n * # Semantic UI 2.2.4 - Reset\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/reveal.css",
"chars": 7699,
"preview": "/*!\n * # Semantic UI 2.2.4 - Reveal\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licen"
},
{
"path": "css/semantic-ui/components/search.css",
"chars": 8835,
"preview": "/*!\n * # Semantic UI 2.2.4 - Search\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licen"
},
{
"path": "css/semantic-ui/components/search.js",
"chars": 45623,
"preview": "/*!\n * # Semantic UI 2.2.4 - Search\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licen"
},
{
"path": "css/semantic-ui/components/segment.css",
"chars": 16069,
"preview": "/*!\n * # Semantic UI 2.2.4 - Segment\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT lice"
},
{
"path": "css/semantic-ui/components/shape.css",
"chars": 3645,
"preview": "/*!\n * # Semantic UI 2.2.4 - Shape\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/shape.js",
"chars": 28952,
"preview": "/*!\n * # Semantic UI 2.2.4 - Shape\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/sidebar.css",
"chars": 15225,
"preview": "/*!\n * # Semantic UI 2.2.4 - Sidebar\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT lice"
},
{
"path": "css/semantic-ui/components/sidebar.js",
"chars": 33473,
"preview": "/*!\n * # Semantic UI 2.2.4 - Sidebar\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT lice"
},
{
"path": "css/semantic-ui/components/site.css",
"chars": 2667,
"preview": "/*!\n * # Semantic UI 2.2.4 - Site\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license"
},
{
"path": "css/semantic-ui/components/site.js",
"chars": 14117,
"preview": "/*!\n * # Semantic UI 2.2.4 - Site\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license"
},
{
"path": "css/semantic-ui/components/state.js",
"chars": 20790,
"preview": "/*!\n * # Semantic UI 2.2.4 - State\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/statistic.css",
"chars": 12717,
"preview": "/*!\n * # Semantic UI 2.2.4 - Statistic\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT li"
},
{
"path": "css/semantic-ui/components/step.css",
"chars": 22316,
"preview": "/*!\n * # Semantic UI 2.2.4 - Step\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license"
},
{
"path": "css/semantic-ui/components/sticky.css",
"chars": 1210,
"preview": "/*!\n * # Semantic UI 2.2.4 - Sticky\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licen"
},
{
"path": "css/semantic-ui/components/sticky.js",
"chars": 30109,
"preview": "/*!\n * # Semantic UI 2.2.4 - Sticky\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licen"
},
{
"path": "css/semantic-ui/components/tab.css",
"chars": 1714,
"preview": "/*!\n * # Semantic UI 2.2.4 - Tab\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license\n"
},
{
"path": "css/semantic-ui/components/tab.js",
"chars": 31804,
"preview": "/*!\n * # Semantic UI 2.2.4 - Tab\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license\n"
},
{
"path": "css/semantic-ui/components/table.css",
"chars": 22816,
"preview": "/*!\n * # Semantic UI 2.2.4 - Table\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT licens"
},
{
"path": "css/semantic-ui/components/transition.css",
"chars": 45390,
"preview": "/*!\n * # Semantic UI 2.2.4 - Transition\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT l"
},
{
"path": "css/semantic-ui/components/transition.js",
"chars": 34711,
"preview": "/*!\n * # Semantic UI 2.2.4 - Transition\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT l"
},
{
"path": "css/semantic-ui/components/visibility.js",
"chars": 41641,
"preview": "/*!\n * # Semantic UI 2.2.4 - Visibility\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT l"
},
{
"path": "css/semantic-ui/semantic.css",
"chars": 742837,
"preview": " /*\n * # Semantic UI - 2.2.4\n * https://github.com/Semantic-Org/Semantic-UI\n * http://www.semantic-ui.com/\n *\n * Copyrig"
},
{
"path": "css/semantic-ui/semantic.js",
"chars": 728154,
"preview": " /*\n * # Semantic UI - 2.2.4\n * https://github.com/Semantic-Org/Semantic-UI\n * http://www.semantic-ui.com/\n *\n * Copyrig"
},
{
"path": "css/stylesheet-customizations.scss",
"chars": 422,
"preview": "---\n# Provide front matter so Jekyll processes this file as SASS.\n---\n\n// Put your custom CSS here if you want to overri"
},
{
"path": "css/stylesheet-default.scss",
"chars": 667,
"preview": "---\n# Provide front matter so Jekyll processes this file as SASS.\n---\n@charset \"utf-8\";\n\n// Default CSS.\n// Don't edit t"
},
{
"path": "essays/2015-08-26.md",
"chars": 1610,
"preview": "---\nlayout: essay\ntype: essay\ntitle: Igniting the fire\n# All dates must be YYYY-MM-DD format!\ndate: 2015-08-26\nlabels:\n "
},
{
"path": "essays/2015-09-08.md",
"chars": 5407,
"preview": "---\nlayout: essay\ntype: essay\ntitle: Smart Questions, Good Answers\n# All dates must be YYYY-MM-DD format!\ndate: 2015-09-"
},
{
"path": "essays/2016-02-06.md",
"chars": 4167,
"preview": "---\nlayout: essay\ntype: essay\ntitle: The difficult things will always be difficult\n# All dates must be YYYY-MM-DD format"
},
{
"path": "essays/index.html",
"chars": 61,
"preview": "---\nlayout: essays\n---\n\n{% include {{ site.theme-essays }} %}"
},
{
"path": "index.html",
"chars": 60,
"preview": "---\nlayout: default\n---\n\n{% include {{ site.theme-home }} %}"
},
{
"path": "js/semantic-ui/accordion.js",
"chars": 19578,
"preview": "/*!\n * # Semantic UI 2.1.7 - Accordion\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributo"
},
{
"path": "js/semantic-ui/api.js",
"chars": 39030,
"preview": "/*!\n * # Semantic UI 2.1.7 - API\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n * "
},
{
"path": "js/semantic-ui/checkbox.js",
"chars": 25368,
"preview": "/*!\n * # Semantic UI 2.1.7 - Checkbox\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributor"
},
{
"path": "js/semantic-ui/colorize.js",
"chars": 8436,
"preview": "/*!\n * # Semantic UI 2.0.0 - Colorize\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributor"
},
{
"path": "js/semantic-ui/dimmer.js",
"chars": 20342,
"preview": "/*!\n * # Semantic UI 2.1.7 - Dimmer\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n"
},
{
"path": "js/semantic-ui/dropdown.js",
"chars": 121683,
"preview": "/*!\n * # Semantic UI 2.1.7 - Dropdown\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributor"
},
{
"path": "js/semantic-ui/embed.js",
"chars": 18990,
"preview": "/*!\n * # Semantic UI 2.1.7 - Video\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n "
},
{
"path": "js/semantic-ui/form.js",
"chars": 49756,
"preview": "/*!\n * # Semantic UI 2.1.7 - Form Validation\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Cont"
},
{
"path": "js/semantic-ui/modal.js",
"chars": 27069,
"preview": "/*!\n * # Semantic UI 2.1.7 - Modal\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n "
},
{
"path": "js/semantic-ui/nag.js",
"chars": 14517,
"preview": "/*!\n * # Semantic UI 2.1.7 - Nag\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n * "
},
{
"path": "js/semantic-ui/popup.js",
"chars": 46547,
"preview": "/*!\n * # Semantic UI 2.1.7 - Popup\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n "
},
{
"path": "js/semantic-ui/progress.js",
"chars": 25506,
"preview": "/*!\n * # Semantic UI 2.1.7 - Progress\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributor"
},
{
"path": "js/semantic-ui/rating.js",
"chars": 13502,
"preview": "/*!\n * # Semantic UI 2.1.7 - Rating\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n"
},
{
"path": "js/semantic-ui/search.js",
"chars": 43670,
"preview": "/*!\n * # Semantic UI 2.1.7 - Search\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n"
},
{
"path": "js/semantic-ui/shape.js",
"chars": 27406,
"preview": "/*!\n * # Semantic UI 2.1.7 - Shape\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n "
},
{
"path": "js/semantic-ui/sidebar.js",
"chars": 33062,
"preview": "/*!\n * # Semantic UI 2.1.7 - Sidebar\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors"
},
{
"path": "js/semantic-ui/site.js",
"chars": 14149,
"preview": "/*!\n * # Semantic UI 2.1.7 - Site\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n *"
},
{
"path": "js/semantic-ui/state.js",
"chars": 20408,
"preview": "/*!\n * # Semantic UI 2.1.7 - State\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n "
},
{
"path": "js/semantic-ui/sticky.js",
"chars": 28979,
"preview": "/*!\n * # Semantic UI 2.1.7 - Sticky\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n"
},
{
"path": "js/semantic-ui/tab.js",
"chars": 30538,
"preview": "/*!\n * # Semantic UI 2.1.7 - Tab\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n * "
},
{
"path": "js/semantic-ui/transition.js",
"chars": 34218,
"preview": "/*!\n * # Semantic UI 2.1.7 - Transition\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contribut"
},
{
"path": "js/semantic-ui/video.js",
"chars": 15721,
"preview": "/*!\n * # Semantic UI 2.0.0 - Video\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2014 Contributorss\n"
},
{
"path": "js/semantic-ui/visibility.js",
"chars": 39320,
"preview": "/*!\n * # Semantic UI 2.1.7 - Visibility\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contribut"
},
{
"path": "js/semantic-ui/visit.js",
"chars": 15625,
"preview": "/*!\n * # Semantic UI 2.0.0 - Visit\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Copyright 2015 Contributors\n "
},
{
"path": "js/semantic-ui.js",
"chars": 693878,
"preview": " /*\n * # Semantic UI - 2.1.7\n * https://github.com/Semantic-Org/Semantic-UI\n * http://www.semantic-ui.com/\n *\n * Copyrig"
},
{
"path": "projects/index.html",
"chars": 65,
"preview": "---\nlayout: projects\n---\n\n{% include {{ site.theme-projects }} %}"
},
{
"path": "projects/project-1.md",
"chars": 2534,
"preview": "---\nlayout: project\ntype: project\nimage: images/micromouse.jpg\ntitle: Micromouse\npermalink: projects/micromouse\n# All da"
},
{
"path": "projects/project-2.md",
"chars": 1216,
"preview": "---\nlayout: project\ntype: project\nimage: images/vacay-square.png\ntitle: Vacay\npermalink: projects/vacay\n# All dates must"
},
{
"path": "projects/project-3.md",
"chars": 2261,
"preview": "---\nlayout: project\ntype: project\nimage: images/cotton-square.png\ntitle: Cotton\npermalink: projects/cotton\n# All dates m"
}
]
About this extraction
This page contains the full source code of the techfolios/template-old GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 169 files (4.3 MB), approximately 1.1M tokens. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.