Switch to Tailwind

This commit is contained in:
Oliver Davies 2017-11-09 22:44:30 +00:00
parent 3a8d5362f2
commit 0d4fd40873
35 changed files with 1128 additions and 293 deletions

View file

@ -1,7 +1,7 @@
<div class="lh-copy">
<div class="block mb-4">
<h2>Availability</h2>
<ul class="list pa0">
<ul class="">
{% for type, value in site.availability %}
<li>
{% include 'availability/' ~ value %}

View file

@ -1,2 +1,2 @@
<i class="mr1 fa fa-thumbs-o-up orange"></i>
<i class="mr-1 fa fa-thumbs-o-up text-orange"></i>
Currently have limited {{ type }}-time capacity.

View file

@ -1,2 +1,2 @@
<i class="mr1 fa fa-thumbs-o-down dark-red"></i>
<i class="mr-1 fa fa-thumbs-o-down text-red-dark"></i>
Currently no spare {{ type }}-time capacity.

View file

@ -1,2 +1,2 @@
<i class="mr1 fa fa-thumbs-o-up dark-green"></i>
<i class="mr-1 fa fa-thumbs-o-up text-green-dark"></i>
Currently have available {{ type }}-time capacity.

View file

@ -1,27 +1,26 @@
<div>
<a href="https://assoc.drupal.org/membership" title="Im a Drupal Association member." class="db mb3 tc">
<img
src="{{ site.images_url }}/assets/images/badges/da-individual-member.png"
alt="Drupal Association Individual Member"
width="200"
<div class="text-center">
<a href="https://assoc.drupal.org/membership"
title="Im a Drupal Association member."
class="block mb-4">
<img src="{{ site.images_url }}/assets/images/badges/da-individual-member.png"
alt="Drupal Association Individual Member"
width="200"
/>
</a>
<div class="db mb3 dt">
<div class="mb-4 flex">
{% for badge in [
{ image: 'acquia-d8-developer.png', alt: 'Acquia Certified Developer - Drupal 8 Exam Badge' },
{ image: 'acquia-d8-back-end.png', alt: 'Acquia Certified Back End Specialist - Drupal 8 Exam Badge' }
{ image: 'acquia-d8-back-end.png', alt: 'Acquia Certified Back End Specialist - Drupal 8 Exam Badge' },
] %}
<div class="dtc">
<img
src="{{ site.images_url }}/assets/images/badges/{{ badge.image }}"
alt="{{ badge.alt }}"
/>
<div>
<img src="{{ site.images_url }}/assets/images/badges/{{ badge.image }}"
alt="{{ badge.alt }}" />
</div>
{% endfor %}
</div>
<a href="http://conference.phpnw.org.uk/phpnw17" class="db">
<a href="http://conference.phpnw.org.uk/phpnw17" class="block mb-4">
<img src="{{ site.images_url }}/assets/images/badges/phpnw17.png" alt="">
</a>
</div>

View file

@ -4,15 +4,13 @@
<ul class="list flex pa0 mt0">
{% for meetup in site.meetups %}
<li>
<a
href="{{ meetup.url }}"
title="{{ meetup.name }}"
class="dib {% if not loop.last %}mr2{% endif %}">
<a href="{{ meetup.url }}"
title="{{ meetup.name }}"
class="dib mr-4">
<img
src="{{ site.images_url }}/assets/images/meetups/{{ meetup.logo }}"
alt="{{ meetup.name }} logo"
class="h3">
<img src="{{ site.images_url }}/assets/images/meetups/{{ meetup.logo }}"
alt="{{ meetup.name }} logo"
class="h-16">
</a>
</li>
{% endfor %}

View file

@ -1,19 +1,18 @@
<header class="w-100 ph4-ns bg-white bb b--light-gray mb2">
<div class="db dt-ns mw9 center w-100">
<div class="db dtc-ns v-mid tl w-30">
<a href="/" class="dib f5 mt0 link black-70" title="Home">
<div class="border-bottom border-b border-grey-lighter mb-4">
<header class="container mx-auto flex items-center">
<div class="w-1/4">
<a href="/" class="" title="Home">
{{ site.title }}
</a>
</div>
<nav class="db dtc-ns v-mid w-100 tl tr-ns mt2 mt0-ns">
<nav class="w-3/4 text-right">
{% for link in site.nav_links %}
<a
href="{{ link.href }}"
class="nav-item {{ page.url matches '#^' ~ (link.pattern ?: link.href) ~ '/?#' ? 'nav-item--active' }}">
<a href="{{ link.href }}"
class="inline-block py-4 ml-4 {{ page.url matches '#^' ~ (link.pattern ?: link.href) ~ '/?#' ? 'border-b-2 border-blue' }}">
{{- link.title -}}
</a>
{% endfor %}
</nav>
</div>
</header>
</header>
</div>

View file

@ -1,7 +1,9 @@
<div class="cf mt2">
<div class="clearfix mt-4">
<h2>About the Author</h2>
<img src="{{ site.images_url }}{{ site.avatar.url }}" alt="Picture of Oliver" class="w3 mr3 br-100 fl">
<img src="{{ site.images_url }}{{ site.avatar.url }}"
alt="Picture of Oliver"
class="w-1/6 mr-4 float-left rounded-full">
<p>Oliver Davies is a Web Developer, System Administrator and Drupal specialist based in the UK. He is a {{ site.work.role }} at <a href="{{ site.companies[site.work.company].url }}?utm_source={{ site.short_url }}&utm_medium=about-author">{{ site.companies[site.work.company].name }}</a> and also provides freelance consultancy services for Drupal, Symfony and Laravel applications and Linux servers.</p>
</div>

View file

@ -1,3 +1,3 @@
<p class="post-feedback" style="font-style: italic">
<p class="mb-4 italic text-grey-dark">
<b>Have feedback on this post?</b> <a href="mailto:{{ site.email }}?subject=Feedback: {{ page.title }}">Email me</a> or <a href="https://twitter.com/intent/tweet?text=@{{ site.twitter.name }}&url={{ site.url }}{{ page.url|url_encode }}">send me a tweet</a>.
</p>

View file

@ -3,6 +3,6 @@
{{ page.title }}
</{{ title_tag }}>
<p class="mt0 black-50">
<p class="text-grey-dark">
{{ page.date|date('jS F Y') }}
</p>

View file

@ -1,15 +1,15 @@
<div class="flex mt3">
<div class="flex mt-8 -mx-4">
{% if page.previous_post %}
<div class="w-50-ns">
<a href="{{ page.previous_post.url }}" class="blue hover-blue">
<div class="w-1/2 px-4">
<a href="{{ page.previous_post.url }}" class="text-blue @text-blue-dark">
&laquo; {{ page.previous_post.title }}
</a>
</div>
{% endif %}
{% if page.next_post %}
<div class="w-50-ns tr">
<a href="{{ page.next_post.url }}" class="blue hover-blue">
<div class="w-1/2 px-4 text-right">
<a href="{{ page.next_post.url }}" class="text-blue @text-blue-dark">
{{ page.next_post.title }} &raquo;
</a>
</div>

View file

@ -1,3 +1,3 @@
<div class="i mb3 black-60">
Questions? Comments? Im <a href="https://twitter.com/{{ site.twitter.name }}">@{{ site.twitter.name }}</a> on Twitter.
<div class="mb-4 italic text-grey-dark">
<p>Questions? Comments? Im <a href="https://twitter.com/{{ site.twitter.name }}">@{{ site.twitter.name }}</a> on Twitter.</p>
</div>

View file

@ -2,7 +2,7 @@
<div class="lh-copy">
<h2>Latest blog posts</h2>
<ul class="list pa0">
<ul class="bullets">
{% for post in data.posts|slice(0, site.latest_posts) %}
<li>
<a href="{{ post.url }}">

View file

@ -1,4 +1,4 @@
<div class="mt4">
<div class="mt-8">
<h2>Events</h2>
{% include "talks-table" with {

View file

@ -1,7 +1,8 @@
{% if page.slides.embed %}
<div class="mt2">
<div class="mt-8">
<h2>Slides</h2>
<div class="slides w-100 bg-center">
<div>
{{ page.slides.embed|raw }}
</div>
</div>

View file

@ -1,16 +1,16 @@
<tr class="striped--near-white">
<td class="pa2">
<tr>
<td class="p-2">
{{ row.event.date|date(row.event.fuzzy_date ? 'F Y' : 'j F Y') }}
{% if row.event.time is defined %}
<small class="db black-70">
<div class="text-xs text-grey-dark">
{{ row.event.time }}
</small>
</div>
{% endif %}
</td>
{% if not talk_page %}
<td class="pa2">
<td class="p-2">
{% if row.talk.url is not empty %}
<a href="{{ row.talk.url }}">
{{ row.talk.title }}
@ -19,17 +19,17 @@
{{ row.talk.title }}
{% endif %}
<small class="db black-70">
<div class="text-xs text-grey-dark">
{% if row.talk.type %}
{{ row.talk.type }}
{% else %}
{{ row.event.type|default('Talk') }}
{% endif %}
</small>
</div>
</td>
{% endif %}
<td class="pa2">
<td class="p-2">
{% if row.event.website is not empty %}
<a href="{{ row.event.website }}">
{{ row.event.name }}
@ -39,19 +39,18 @@
{% endif %}
{% if row.event.location is defined %}
<small class="db black-70">
<div class="text-xs text-grey-dark">
{{ row.event.location }}
</small>
</div>
{% endif %}
</td>
{% if not upcoming %}
<td class="ph2">
<td class="p-2">
{% if row.event.feedback and row.event.date <= today %}
<a
href="{{ row.event.feedback }}"
class="button"
title="Read or leave feedback for this talk">
<a href="{{ row.event.feedback }}"
class="button"
title="Read or leave feedback for this talk">
<i class="fa fa-comment-o"></i> joind.in
</a>
{% endif %}

View file

@ -1,17 +1,17 @@
<div class="overflow-auto">
<table class="w-100 ba b--black-20">
<table class="talks-table w-full border border-grey-light">
<thead>
<tr class="striped--near-white">
<th class="w-20-l pa2 tl bg-white">Date</th>
<tr>
<th class="w-1/4 p-2 text-left bg-white">Date</th>
{% if not talk_page %}
<th class="w-40-l pa2 tl bg-white">Talk</th>
<th class="w-1/3 p-2 text-left bg-white">Talk</th>
{% endif %}
<th class="pa2 tl bg-white">Event</th>
<th class="p-2 text-left bg-white">Event</th>
{% if not upcoming %}
<th class="w4 pa2 tl bg-white">Feedback</th>
<th class="p-2 text-left bg-white">Feedback</th>
{% endif %}
</tr>
</thead>

View file

@ -24,37 +24,39 @@
<link rel="icon" href="{{ site.favicon.url }}?s={{ size }}" sizes="{{ size }}x{{ size }}">
{% endfor %}
</head>
<body class="helvetica black-80 {{ page.blocks.body_classes }}">
<body class="text-grey-darkest text-sm leading-normal">
{% include 'nav' %}
<div class="w-100 pa3 ph4-ns">
<div class="f6 mw9 center">
<div class="flex-l">
<main class="flex-auto pr4-l lh-copy">
{% block content_top %}{% endblock %}
{% block content_wrapper %}{% block content %}{% endblock %}{% endblock %}
{% block content_bottom %}{% endblock %}
</main>
<div class="container mx-auto">
<div class="">
<div class="">
<div class="md:flex -mx-4">
<main class="md:w-3/4 px-4">
{% block content_top %}{% endblock %}
{% block content_wrapper %}{% block content %}{% endblock %}{% endblock %}
{% block content_bottom %}{% endblock %}
</main>
{% block sidebar_wrapper %}
<div class="flex-none w-25-m mw5-l ph3-m pt4 pt0-l">
{% block sidebar %}
{% include 'badges' %}
{% include 'availability' %}
{% include 'posts/latest' %}
{% endblock %}
</div>
{% endblock %}
{% block sidebar_wrapper %}
<div class="md:w-1/4 px-4">
{% block sidebar %}
{% include 'badges' %}
{% include 'availability' %}
{% include 'posts/latest' %}
{% endblock %}
</div>
{% endblock %}
</div>
</div>
<footer class="border-t border-grey-lighter pt-4 mt-4">
<p>
&copy; 2010-{{ 'now'|date('Y') }} {{ site.title }}. Built with <a href="https://sculpin.io">Sculpin</a> and <a href="https://tailwindcss.com">Tailwind CSS</a>.
</p>
{% include 'meetups' %}
</footer>
</div>
<footer class="mw9 center mt4 bt b--black-20">
<p class="f6">
&copy; 2010-{{ 'now'|date('Y') }} {{ site.title }}. Built with <a href="https://sculpin.io">Sculpin</a>.
</p>
{% include 'meetups' %}
</footer>
</div>
<script src="{{ site.url }}/assets/js/site.js"></script>

View file

@ -13,5 +13,5 @@
{% endblock %}
{% block scripts %}
<script>hljs.initHighlightingOnLoad();</script>
<script>hljs.initHighlightingOnLoad();</script>
{% endblock %}

View file

@ -9,9 +9,9 @@ use: [posts]
{% block content %}
<h1>Blog</h1>
<ul class="list pa0 ma0">
<ul class="listing">
{% for post in page.pagination.items %}
<li class="cf mb2 pb4 bb b--light-silver">
<li class="listing-item">
{{ include('post/header', {
page: post,
title_tag: 'h2'
@ -33,10 +33,15 @@ use: [posts]
{% if page.pagination.previous_page or page.pagination.next_page %}
<ul class="pager">
{% if page.pagination.previous_page %}
<li class="next"><a href="{{ site.url }}{{ page.pagination.previous_page.url }}">Newer →</a></li>
<li class="next">
<a href="{{ site.url }}{{ page.pagination.previous_page.url }}">Newer →</a>
</li>
{% endif %}
{% if page.pagination.next_page %}
<li class="previous"><a href="{{ site.url }}{{ page.pagination.next_page.url }}">← Older</a></li>
<li class="previous">
<a href="{{ site.url }}{{ page.pagination.next_page.url }}">← Older</a>
</li>
{% endif %}
</ul>
{% endif %}

View file

@ -7,23 +7,38 @@ use: [posts]
<p>To send me an email, complete the form below.</p>
<form action="https://formspree.io/{{ site.email }}" method="POST">
<label for="name" class="db mb1">Name</label>
<input type="text" class="w-100 pa2 mb3 ba b--black-50" name="name" required>
<label for="name" class="block mb-1">Name</label>
<input type="text"
class="w-full p-2 mb-4 border border--grey"
name="name"
required>
<label for="email" class="db mb1">Email</label>
<input type="email" class="w-100 pa2 mb3 ba b--black-50" name="email" required>
<label for="email" class="block mb-1">Email</label>
<input type="email"
class="w-full p-2 mb-4 border border--grey"
name="email"
required>
<label for="subject" class="db mb1">Subject</label>
<input type="text" class="w-100 pa2 mb3 ba b--black-50" name="subject" required>
<label for="subject" class="block mb-1">Subject</label>
<input type="text"
class="w-full p-2 mb-4 border border--grey"
name="subject"
required>
<label for="message" class="db mb1">Message</label>
<textarea name="message" class="w-100 pa2 mb3 ba b--black-50" rows="5" required></textarea>
<label for="message" class="block mb-1">Message</label>
<textarea name="message"
class="w-full p-2 mb-4 border border--grey"
rows="5"
required>
</textarea>
<button class="button" type="submit">
Send email
</button>
<input type="hidden" name="_next" value="{{ site.url }}/contact/thanks" />
<input type="hidden"
name="_next"
value="{{ site.url }}/contact/thanks" />
<input type="text" name="_gotcha" style="display: none" />
</form>

View file

@ -107,48 +107,48 @@ experiences:
{% block content %}
<h1>Experience</h1>
{% for experience in page.experiences|reverse %}
{% set company = site.companies[experience.company] %}
<div class="listing">
{% for experience in page.experiences|reverse %}
{% set company = site.companies[experience.company] %}
<div class="cf mb4">
{% if company.logo %}
<div class="fr mb3 ml3 mt2 mw3 mw4-ns">
<img
src="{{ site.images_url }}/assets/images/experience/{{ company.logo }}"
alt="{{ company.name }} logo"
class="img">
</div>
{% endif %}
<div>
<h2 class="mv0">{{ company.name }}</h2>
<div class="mb3">
{% if company.url -%}
<a
class="dib mb1 blue dim"
href="{{ company.url }}?utm_source={{ site.short_url }}&utm_medium=experience">
{{- company.url -}}
</a>
{%- endif %}
<div class="black-50">
{{- experience.role }}
from
{{ experience.start }}
to
{{ experience.end|default('Present') -}}
{%- if experience.location %} ({{ experience.location }}){% endif %}.
</div>
</div>
{% if experience.description %}
<div>
{{ experience.description|markdown }}
<div class="listing-item">
{% if company.logo %}
<div class="float-right mb-4 ml-4 w-1/5">
<img src="{{ site.images_url }}/assets/images/experience/{{ company.logo }}"
alt="{{ company.name }} logo"
class="img">
</div>
{% endif %}
</div>{# /.inner #}
</div>
{% endfor %}
<div>
<h2 class="mv0">{{ company.name }}</h2>
<div class="mb-4">
{% if company.url -%}
<a class="inline-block text-blue mb-1"
href="{{ company.url }}?utm_source={{ site.short_url }}&utm_medium=experience">
{{- company.url -}}
</a>
{%- endif %}
<div class="text-grey-dark">
{{- experience.role }}
from
{{ experience.start }}
to
{{ experience.end|default('Present') -}}
{%- if experience.location %} ({{ experience.location }}){% endif %}.
</div>
</div>
{% if experience.description %}
<div>
{{ experience.description|markdown }}
</div>
{% endif %}
</div>{# /.inner #}
</div>
{% endfor %}
</div>
{% endblock %}

View file

@ -11,7 +11,7 @@ use: [posts, testimonials]
---
# About Me
<img src="{{ site.images_url }}{{ site.avatar.url }}" alt="Picture of Oliver" class="br-100 mw4">
<img src="{{ site.images_url }}{{ site.avatar.url }}" alt="Picture of Oliver" class="w-1/6 rounded-full">
My name is Oliver Davies (aka [opdavies][1]) - a full-stack Web Developer and System Administrator based in Wales, UK.

View file

@ -5,13 +5,13 @@ use: [posts]
testimonials:
- name: Ed Welsby
image: ed-welsby.png
role: Senior Developer at <a class="blue dim" href="http://www.proctors.co.uk">Proctor & Stevenson</a>
role: Senior Developer at <a class="text-blue inline-block" href="http://www.proctors.co.uk">Proctor & Stevenson</a>
text: |
Oliver was great to work with, he has a solid knowledge of the various aspects of web development and never minded helping me out with Linux commands!
- name: Brian Healy
image: brian-healy.png
role: Director of Business Development at <a class="blue dim" href="http://tincan.co.uk">Tincan</a>.
role: Director of Business Development at <a class="text-blue inline-block" href="http://tincan.co.uk">Tincan</a>.
text: |
Oliver was fantastic to work with - pro-active and highly responsive, he worked well remotely and as part of a project team. His understanding of the project requirement(s) and ability to translate it into working code was essential and he delivered.
@ -31,21 +31,21 @@ testimonials:
Oliver is seasoned Drupal and all round highly skilled and experienced web developer. I have worked with Oliver on an important project where he was reliable, prompt and ensured strict client deadline delivery and confidentiality at all times.
- name: James Chapman
role: Director at <a class="blue dim" href="http://www.developmentdoneright.co.uk">Development Done Right</a>
role: Director at <a class="text-blue inline-block" href="http://www.developmentdoneright.co.uk">Development Done Right</a>
image: james-chapman.png
text: |
We used Oliver on a number of occasions throughout 2012 and I have to say we've been delighted with his work. His skills working with Drupal are excellent particularly with custom module development and we wouldnt hesitate to recommend him others.
- name: Léonie Watson
role: >
Director of Accessibility at <a class="blue dim" href="http://www.nomensa.com">Nomensa</a>
Director of Accessibility at <a class="text-blue inline-block" href="http://www.nomensa.com">Nomensa</a>
image: leonie-watson.jpg
text: |
Oliver is a flexible and hardworking developer, with a terrific knowledge of Drupal. He promotes accessibility best practice within the Drupal community, and is always happy to share his knowledge with other people.
- name: Holly Ross
role: >
Executive Director at the <a class="blue dim" href="https://assoc.drupal.org">Drupal Association</a>
Executive Director at the <a class="text-blue inline-block" href="https://assoc.drupal.org">Drupal Association</a>
image: holly-ross.png
text: |
Oliver has been an outstanding contributor to the Drupal Association team. He is a talented developer who writes great code and applies his curiosity and love of learning to every project. He is also a fantastic team member, who gives to the team as much as he gets.
@ -53,7 +53,7 @@ testimonials:
Oliver is the embodiment of everything good about the Drupal community.
- name: Josh Mitchell
role: CTO at the <a class="blue dim" href="https://assoc.drupal.org">Drupal Association</a>
role: CTO at the <a class="text-blue inline-block" href="https://assoc.drupal.org">Drupal Association</a>
image: josh-mitchell.png
text: |
Oliver is a skilled Drupal developer with a passion for the Drupal community. As his direct supervisor, I was able to watch Oliver grow with the Drupal Association and contribute an amazing amount of effort and integrity to all of his work.
@ -62,33 +62,34 @@ testimonials:
- name: Chris Jarvis
image: chris-jarvis.jpg
role: Developer at <a class="blue dim" href="https://microserve.io">Microserve</a>
role: Developer at <a class="text-blue inline-block" href="https://microserve.io">Microserve</a>
text: |
Oliver is an amazing colleague, he's professional, full of knowledge and I could not recommend him more.
---
{% block content %}
{% for testimonial in page.testimonials|reverse %}
<article class="cf mb4">
<h2 class="mv0">{{ testimonial.name }}</h2>
<div class="listing">
{% for testimonial in page.testimonials|reverse %}
<article class="listing-item">
{% if testimonial.image %}
<div class="float-right mb-4 ml-4">
<img src="{{ site.url }}/assets/images/testimonials/{{ testimonial.image }}"
alt="{{ testimonial.name }}"
class="testimonial-image">
</div>
{% endif %}
{% if testimonial.image %}
<img
src="{{ site.url }}/assets/images/testimonials/{{ testimonial.image }}"
alt="{{ testimonial.name }}"
class="fr mw3 br-100 ml4 mb4"
height="65"
width="65">
{% endif %}
<div class="mb-4">
<h2>{{ testimonial.name }}</h2>
{% if testimonial.role %}
<div class="black-50 mb3">
{{ testimonial.role|raw }}
{% if testimonial.role %}
<div>
{{ testimonial.role|raw }}
</div>
{% endif %}
</div>
{% endif %}
<div>
{{ testimonial.text|markdown }}
</div>
</article>
{% endfor %}
</article>
{% endfor %}
</div>
{% endblock %}