From 62b1dc15d2c7bdb7734635a5b692f92d51443a1f Mon Sep 17 00:00:00 2001 From: Oliver Davies Date: Mon, 4 Sep 2017 17:55:53 +0100 Subject: [PATCH] WIP --- app/data/testimonials.yml | 67 ---------------- assets/sass/_mixins.sass | 35 --------- assets/sass/experience.sass | 3 - assets/sass/main.sass | 33 ++++---- assets/sass/main.scss | 24 ++++++ gulpfile.js | 20 ++--- package.json | 2 +- source/_includes/availability.html.twig | 16 ++-- .../_includes/availability/limited.html.twig | 8 +- source/_includes/availability/no.html.twig | 8 +- source/_includes/availability/yes.html.twig | 8 +- source/_includes/badges.html.twig | 32 ++++---- source/_includes/meetups.html.twig | 15 ++-- source/_includes/nav.html.twig | 60 ++++++--------- source/_includes/post/about-author.html.twig | 4 +- source/_includes/post/header.html.twig | 8 +- source/_includes/post/intro-image.html.twig | 2 +- source/_includes/post/pager.html.twig | 10 +-- source/_includes/posts/latest.html.twig | 25 +++--- source/_includes/talks-table.html.twig | 38 +++++---- source/_layouts/default.html.twig | 25 +++--- source/_layouts/talk.html.twig | 9 ++- ...lcamp-bristol-tickets-sessions-sponsors.md | 4 +- ...lishing-sculpin-sites-with-github-pages.md | 6 +- source/blog.html | 6 +- source/contact.html.twig | 43 +++-------- source/experience.html.twig | 34 ++++---- source/index.md | 3 +- source/testimonials.html.twig | 77 +++++++++++++++++-- yarn.lock | 8 +- 30 files changed, 286 insertions(+), 347 deletions(-) delete mode 100644 assets/sass/_mixins.sass create mode 100644 assets/sass/main.scss diff --git a/app/data/testimonials.yml b/app/data/testimonials.yml index f5d20553..f919108e 100644 --- a/app/data/testimonials.yml +++ b/app/data/testimonials.yml @@ -1,68 +1 @@ testimonials: - - name: Ed Welsby - image: ed-welsby.png - role: > - Senior Developer at [Proctor & Stevenson](http://www.proctors.co.uk) - 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 [Tincan](http://tincan.co.uk) - 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. - - - name: Marlon Duncanson - role: 'Brand & Web Specialist' - text: | - Oliver is a great guy and really easy to work with. He really goes the extra mile to make sure the project is done properly. I would recommend him and will not hesitate to use him again in future. - - - name: Brian Hartwell - role: Interactive Creative Director - text: | - Oliver was great to work with. He has expert knowledge with Drupal and delivered exactly what we were looking for on time. He's understanding, friendly and easy to get along with. I would enjoy working with him again in the future. - - - name: Daniel Easterbrook - role: Digital Strategy Consultant - text: | - 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 [Development Done Right](http://www.developmentdoneright.co.uk) - 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 wouldn’t hesitate to recommend him others. - - - name: Léonie Watson - role: > - Director of Accessibility at [Nomensa](http://www.nomensa.com) - 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 [Drupal Association](https://assoc.drupal.org) - 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. - - Oliver is the embodiment of everything good about the Drupal community. - - - name: Josh Mitchell - role: > - CTO at the [Drupal Association](https://assoc.drupal.org) - 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. - - Everything we have thrown at Oliver, he has approached with an open and flexible mind that has allowed him to work on a wide range of projects and features for Drupal products. - - - name: Chris Jarvis - image: chris-jarvis.jpg - role: > - Developer at [Microserve](https://microserve.io) - text: | - Oliver is an amazing colleague, he's professional, full of knowledge and I could not recommend him more. diff --git a/assets/sass/_mixins.sass b/assets/sass/_mixins.sass deleted file mode 100644 index 53f97ee0..00000000 --- a/assets/sass/_mixins.sass +++ /dev/null @@ -1,35 +0,0 @@ -// =from($device) -// @media screen and (min-width: $device) -// @content - -// =until($device) -// @media screen and (max-width: $device - 1px) -// @content - -// =mobile -// @media screen and (max-width: $screen-tablet - 1px) -// @content - -// =tablet -// @media screen and (min-width: $screen-tablet) -// @content - -// =tablet-only -// @media screen and (min-width: $screen-tablet) and (max-width: $screen-desktop - 1px) -// @content - -// =touch -// @media screen and (max-width: $screen-desktop - 1px) -// @content - -// =desktop -// @media screen and (min-width: $screen-desktop) -// @content - -// =desktop-only -// @media screen and (min-width: $screen-desktop) and (max-width: $screen-lg - 1px) -// @content - -// =widescreen -// @media screen and (min-width: $screen-lg) -// @content diff --git a/assets/sass/experience.sass b/assets/sass/experience.sass index a0146a41..c1ef12ef 100644 --- a/assets/sass/experience.sass +++ b/assets/sass/experience.sass @@ -1,6 +1,3 @@ -@import "node_modules/bulma/sass/utilities/initial-variables" -@import "node_modules/bulma/sass/utilities/mixins" - .experience-item-website margin-bottom: 2px diff --git a/assets/sass/main.sass b/assets/sass/main.sass index 6f65e373..c8b06084 100644 --- a/assets/sass/main.sass +++ b/assets/sass/main.sass @@ -1,21 +1,22 @@ -@import 'node_modules/bulma/sass/utilities/initial-variables' +@import "node_modules/tachyons-sass/scss/colors"; -$family-sans-serif: "Helvetica Neue", Arial, sans-serif -$body-size: 14px +$blue: #0678be -$blue: #0678BE +@import "node_modules/tachyons-sass/tachyons"; -$primary: $blue +p, +li, +td + a + color: $blue -@import 'node_modules/bulma/bulma' +.video + padding: 56.25% 0 0 -@import 'base' -@import 'mixins' - -@import 'base/layout' -@import 'base/utilities' - -@import 'components/availability' -@import 'components/badges' -@import 'components/footer' -@import 'components/meetups' +.video iframe, +.video embed + height: 100% + left: 0 + position: absolute + top: 0 + width: 100% diff --git a/assets/sass/main.scss b/assets/sass/main.scss new file mode 100644 index 00000000..287ec892 --- /dev/null +++ b/assets/sass/main.scss @@ -0,0 +1,24 @@ +@import "node_modules/tachyons-sass/tachyons"; + +$blue1: #0678be; + +p, +li, +td { + a { color: $blue1; } +} + +.blue1 { color: $blue1; } + +.video { + padding: 56.25% 0 0; +} + +.video iframe, +.video embed { + height: 100%; + left: 0; + position: absolute; + top: 0; + width: 100%; +} diff --git a/gulpfile.js b/gulpfile.js index 388a446d..b9531d15 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -54,17 +54,17 @@ gulp.task('styles', function () { config.sass.sourceDir + '/main.sass' ], 'main.css'); - app.sass([ - 'node_modules/prismjs/themes/prism-twilight.css', - config.sass.sourceDir + '/post.sass' - ], 'post.css') + // app.sass([ + // 'node_modules/prismjs/themes/prism-twilight.css', + // config.sass.sourceDir + '/post.sass' + // ], 'post.css') - app.sass(config.sass.sourceDir + '/about.sass', 'about.css'); - app.sass(config.sass.sourceDir + '/blog.sass', 'blog.css'); - app.sass(config.sass.sourceDir + '/experience.sass', 'experience.css'); - app.sass(config.sass.sourceDir + '/project.sass', 'project.css'); - app.sass(config.sass.sourceDir + '/talk.sass', 'talk.css'); - app.sass(config.sass.sourceDir + '/testimonials.sass', 'testimonials.css'); + // app.sass(config.sass.sourceDir + '/about.sass', 'about.css'); + // app.sass(config.sass.sourceDir + '/blog.sass', 'blog.css'); + // app.sass(config.sass.sourceDir + '/experience.sass', 'experience.css'); + // app.sass(config.sass.sourceDir + '/project.sass', 'project.css'); + // app.sass(config.sass.sourceDir + '/talk.sass', 'talk.css'); + // app.sass(config.sass.sourceDir + '/testimonials.sass', 'testimonials.css'); }); gulp.task('scripts', function () { diff --git a/package.json b/package.json index 7bd6796b..493f2000 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,6 @@ "gulp-util": "^3.0.8", "jquery.2": "^1.0.0", "prismjs": "^1.6.0", - "tachyons": "^4.8.1" + "tachyons-sass": "^4.7.4" } } diff --git a/source/_includes/availability.html.twig b/source/_includes/availability.html.twig index c76756e7..78e2612d 100644 --- a/source/_includes/availability.html.twig +++ b/source/_includes/availability.html.twig @@ -1,11 +1,9 @@ -
-
Availability
+
+

Availability

-
-
- {% for key, availability in site.availability %} - {% include 'availability/' ~ availability with { value: key } %} - {% endfor %} -
-
+
    + {% for key, availability in site.availability %} + {% include 'availability/' ~ availability with { value: key } %} + {% endfor %} +
diff --git a/source/_includes/availability/limited.html.twig b/source/_includes/availability/limited.html.twig index d6a6777a..7ac76700 100644 --- a/source/_includes/availability/limited.html.twig +++ b/source/_includes/availability/limited.html.twig @@ -1,8 +1,6 @@ -

- - - +

  • + {{ value == 'full' ? 'Currently have limited full-time capacity' }} {{ value == 'part' ? 'Currently have limited part-time capacity' }} -

    +
  • diff --git a/source/_includes/availability/no.html.twig b/source/_includes/availability/no.html.twig index edd96c9e..60e46ec9 100644 --- a/source/_includes/availability/no.html.twig +++ b/source/_includes/availability/no.html.twig @@ -1,8 +1,6 @@ -

    - - - +

  • + {{ value == 'full' ? 'Currently no spare full-time capacity.' }} {{ value == 'part' ? 'Currently no spare part-time capacity.' }} -

    +
  • diff --git a/source/_includes/availability/yes.html.twig b/source/_includes/availability/yes.html.twig index da8cbc6b..0d858578 100644 --- a/source/_includes/availability/yes.html.twig +++ b/source/_includes/availability/yes.html.twig @@ -1,8 +1,6 @@ -

    - - - +

  • + {{ value == 'full' ? 'Currently have available full-time capacity' }} {{ value == 'part' ? 'Currently have available part-time capacity' }} -

    +
  • diff --git a/source/_includes/badges.html.twig b/source/_includes/badges.html.twig index f3d93da9..a5b84275 100644 --- a/source/_includes/badges.html.twig +++ b/source/_includes/badges.html.twig @@ -1,5 +1,5 @@ -
    - +
    + Drupal Association Individual Member -
    -
    - Acquia Certified Developer - Drupal 8 Exam Badge -
    - -
    - Acquia Certified Back End Specialist - Drupal 8 Exam Badge -
    +
    + {% 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' } + ] %} +
    + {{ badge.alt }} +
    + {% endfor %}
    - +
    diff --git a/source/_includes/meetups.html.twig b/source/_includes/meetups.html.twig index 6e4d1252..d43011fd 100644 --- a/source/_includes/meetups.html.twig +++ b/source/_includes/meetups.html.twig @@ -1,12 +1,17 @@ -
    -

    Things that I organise

    -
      +
      +

      Things that I organise

      + +
        {% for meetup in site.meetups %} -
      • - +
      • + {{ meetup.name }} logo
      • diff --git a/source/_includes/nav.html.twig b/source/_includes/nav.html.twig index 570dca59..a18c15cf 100644 --- a/source/_includes/nav.html.twig +++ b/source/_includes/nav.html.twig @@ -1,45 +1,31 @@ - + diff --git a/source/_includes/post/about-author.html.twig b/source/_includes/post/about-author.html.twig index bde8925a..90ac07e1 100644 --- a/source/_includes/post/about-author.html.twig +++ b/source/_includes/post/about-author.html.twig @@ -1,7 +1,7 @@ -
        +

        About the Author

        - Picture of Oliver + Picture of Oliver

        Oliver Davies is a Web Developer, System Administrator and Drupal specialist based in the UK. He is a {{ site.work.role }} at {{ site.companies[site.work.company].name }} and also provides freelance consultancy services for Drupal websites, PHP applications and Linux servers.

        diff --git a/source/_includes/post/header.html.twig b/source/_includes/post/header.html.twig index 6824b295..619b8628 100644 --- a/source/_includes/post/header.html.twig +++ b/source/_includes/post/header.html.twig @@ -1,4 +1,8 @@ {% set title_tag = title_tag ?: 'h1' %} -<{{ title_tag }}>{{ page.title }} +<{{ title_tag }} class="mb1"> + {{ page.title }} + -

        {{ page.date|date('jS F Y') }}

        +

        + {{ page.date|date('jS F Y') }} +

        diff --git a/source/_includes/post/intro-image.html.twig b/source/_includes/post/intro-image.html.twig index 5141910e..048d0f15 100644 --- a/source/_includes/post/intro-image.html.twig +++ b/source/_includes/post/intro-image.html.twig @@ -1,5 +1,5 @@ {% if page.blocks.intro_image %} -
        +
        {{ page.blocks.intro_image|raw }}
        {% endif %} diff --git a/source/_includes/post/pager.html.twig b/source/_includes/post/pager.html.twig index 6dcb6bb8..bdcc97c0 100644 --- a/source/_includes/post/pager.html.twig +++ b/source/_includes/post/pager.html.twig @@ -1,15 +1,15 @@ -
        +
        {% if page.previous_post %} -
        - + {% endif %} {% if page.next_post %} -
        - + diff --git a/source/_includes/posts/latest.html.twig b/source/_includes/posts/latest.html.twig index 9c8e31f7..59854c75 100644 --- a/source/_includes/posts/latest.html.twig +++ b/source/_includes/posts/latest.html.twig @@ -1,18 +1,15 @@ {% if data.posts and page.url != '/blog' %} -
        -
        Latest blog posts
        +
        +

        Latest blog posts

        - {% for post in data.posts|slice(0, site.latest_posts) %} -
        -
        - - - {{ post.title }} - - - - -
        -
        - {% endfor %} +
        {% endif %} diff --git a/source/_includes/talks-table.html.twig b/source/_includes/talks-table.html.twig index 73015190..4b553f8c 100644 --- a/source/_includes/talks-table.html.twig +++ b/source/_includes/talks-table.html.twig @@ -1,17 +1,17 @@
        - +
        - - + + {% if not talk_page %} - + {% endif %} - + {% if not upcoming %} - + {% endif %} @@ -23,54 +23,52 @@ {% for item in row.talks if key == item.filename|split('.')|first %} {% set talk = item %} {% endfor %} - - + {% if not talk_page %} - {% endif %} - {% if not upcoming %} -
        Date
        DateTalkTalkEventEventFeedbackFeedback
        +
        {{ row.date.date|date(row.date.fuzzy_date ? 'F Y' : 'j F Y') }} {% if row.date.time %} - {{ row.date.time }} + {{ row.date.time }} {% endif %} + {% if row.date.talk.title is defined %} {{ row.date.talk.title }} {% else %} - {{ talk.title }} + {{ talk.title }} {% endif %} - + {{ row.date.talk.type ?: talk.type }} + {% if row.event.website %} - + {{ row.event.name }} {% else %} {{ row.event.name }} {% endif %} - + {{ row.event.location }} + {% if row.date.feedback %} - + joind.in {% endif %} diff --git a/source/_layouts/default.html.twig b/source/_layouts/default.html.twig index 0adc3bbe..f0f6b112 100644 --- a/source/_layouts/default.html.twig +++ b/source/_layouts/default.html.twig @@ -24,20 +24,20 @@ {% endfor %} - + {% include 'nav' %} -
        -
        -
        -
        +
        +
        +
        +
        {% block content_top %}{% endblock %} {% block content_wrapper %}{% block content %}{% endblock %}{% endblock %} {% block content_bottom %}{% endblock %}
        {% block sidebar_wrapper %} -
        +
        {% block sidebar %} {% include 'badges' %} {% include 'availability' %} @@ -45,20 +45,17 @@ {% endblock %}
        {% endblock %} +
        +
        -
        {# .row #} -
        {# .container #} -
        - -
        -
        -
        +

        © 2010-{{ 'now'|date('Y') }} {{ site.title }}. Built with Sculpin, Bulma and Gulp.

        {% include 'meetups' %}
        -
        + diff --git a/source/_layouts/talk.html.twig b/source/_layouts/talk.html.twig index 72e7499e..5f65525a 100644 --- a/source/_layouts/talk.html.twig +++ b/source/_layouts/talk.html.twig @@ -8,7 +8,7 @@ {% if page.slides.embed %} -
        +

        Slides

        {{ page.slides.embed|raw }} @@ -17,15 +17,16 @@ {% endif %} {% if page.video.embed %} -
        +

        Video

        -
        + +
        {{ page.video.embed|raw }}
        {% endif %} -
        +

        Events

        {% set events = [] %} diff --git a/source/_posts/2017-05-15-drupalcamp-bristol-tickets-sessions-sponsors.md b/source/_posts/2017-05-15-drupalcamp-bristol-tickets-sessions-sponsors.md index c7f5765c..6b066704 100644 --- a/source/_posts/2017-05-15-drupalcamp-bristol-tickets-sessions-sponsors.md +++ b/source/_posts/2017-05-15-drupalcamp-bristol-tickets-sessions-sponsors.md @@ -16,9 +16,7 @@ meta: slug: drupalcamp-bristol-early-bird-tickets-sessions-sponsors --- {% block intro_image %} -
        - DrupalCamp Bristol 2017 logo -
        +DrupalCamp Bristol 2017 logo {% endblock %} {% block excerpt %} diff --git a/source/_posts/2017-07-13-publishing-sculpin-sites-with-github-pages.md b/source/_posts/2017-07-13-publishing-sculpin-sites-with-github-pages.md index e714137a..0b499504 100644 --- a/source/_posts/2017-07-13-publishing-sculpin-sites-with-github-pages.md +++ b/source/_posts/2017-07-13-publishing-sculpin-sites-with-github-pages.md @@ -11,11 +11,7 @@ meta: width: 451 --- {% block intro_image %} - + {% endblock %} {% block excerpt %} diff --git a/source/blog.html b/source/blog.html index 28a6a06b..2964b850 100644 --- a/source/blog.html +++ b/source/blog.html @@ -9,9 +9,9 @@ use: [posts] {% block content %}

        Blog

        -
          +
            {% for post in page.pagination.items %} -
          • +
          • {{ include('post/header', { page: post, title_tag: 'h2' @@ -42,8 +42,6 @@ use: [posts] {% endif %} {% endblock %} -{% block body_classes 'page--blog page--blog__list' %} - {% block stylesheets %} {% endblock %} diff --git a/source/contact.html.twig b/source/contact.html.twig index 1197c0e9..55d1db60 100644 --- a/source/contact.html.twig +++ b/source/contact.html.twig @@ -7,42 +7,21 @@ use: [posts]

            To send me an email, complete the form below.

            -
            - -
            - -
            -
            + + - + + -
            - -
            - -
            -
            + + -
            -
            - - -
            -
            + + -
            - -
            + diff --git a/source/experience.html.twig b/source/experience.html.twig index 2b9e2d19..c558a66f 100644 --- a/source/experience.html.twig +++ b/source/experience.html.twig @@ -12,29 +12,31 @@ redirect: {% for experience in site.experiences|reverse %} {% set company = site.companies[experience.company] %} -