Merge branch 'main' of https://git.handmadecities.com/conferences/hmc_site_source
commit
ed33dfec70
|
|
@ -18,3 +18,8 @@
|
|||
.shadow {
|
||||
box-shadow: 0px 4px 40px rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
|
||||
/* This was supposed to be in tailwind, but whatever... */
|
||||
.flex-shrink-0 {
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,3 @@
|
|||
+++
|
||||
title="Media"
|
||||
+++
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
+++
|
||||
title="Handmade Boston 2023"
|
||||
date="2023-07-03T09:00:00-04:00"
|
||||
enddate="2023-07-04T17:00:00-04:00"
|
||||
+++
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
+++
|
||||
title="Handmade Seattle 2023"
|
||||
date="2023-11-15T09:00:00-08:00"
|
||||
enddate="2023-11-17T17:00:00-08:00"
|
||||
+++
|
||||
|
|
@ -7,7 +7,7 @@ layout: "tickets"
|
|||
|
||||
features:
|
||||
- title: "Tickets"
|
||||
title_class: "text-center text-white mt-16"
|
||||
title_class: "text-center text-white mt-8"
|
||||
side: "center"
|
||||
content_class: "mt-16 pt-0 pb-0 text-white"
|
||||
image: "/images/hmc/cities-light-mode.svg"
|
||||
|
|
@ -16,10 +16,12 @@ features:
|
|||
img: "/images/devon_starfield.png"
|
||||
end_img: "/images/software-15.png"
|
||||
end_img_class: "relative h-96 bg-contain bg-bottom bg-repeat-x"
|
||||
description: |
|
||||
Handmade Seattle is a fully hybrid conference, and both physical and online tickets are available. Buying a ticket supports the conference and gains you access to the private chat server used for speaker Q&A, the virtual job fair, and more.
|
||||
tickets:
|
||||
- title: "Physical Track"
|
||||
title_class: "text-white"
|
||||
subtitle: "Status: Early Bird"
|
||||
subtitle: "Available now"
|
||||
subtitle_class: "text-white"
|
||||
section_class: "text-white"
|
||||
options:
|
||||
|
|
@ -114,7 +116,7 @@ features:
|
|||
tickets:
|
||||
- title: "Online Track"
|
||||
title_class: "text-black dark:text-white"
|
||||
subtitle: "Status: Early Bird"
|
||||
subtitle: "Available now"
|
||||
subtitle_class: "text-black dark:text-white"
|
||||
section_class: "text-black dark:text-white"
|
||||
options:
|
||||
|
|
@ -230,17 +232,20 @@ features:
|
|||
title: "Bravo all, looking forward to next time!"
|
||||
link: "https://twitter.com/QuadeZaban/status/1593991041430196225"
|
||||
avatar: "/images/people/quade.jpg"
|
||||
content: "Has been a joy watching this conference grow, and this one may have been the best so far in my books!"
|
||||
content: |
|
||||
Has been a joy watching this conference grow, and this one may have been the best so far in my books!
|
||||
|
||||
- name: "Hadjar Homaei, CTO [@compdem](https://twitter.com/compdem)"
|
||||
title: "Huge thanks to Abner Coimbre for making this possible! We appreciate you!"
|
||||
link: "https://twitter.com/xeegeex/status/1594056776508637184"
|
||||
avatar: "/images/people/hadjar.jpg"
|
||||
content: "I had such a wonderful time at Handmade Seattle this week connecting with an amazing community of people who passionately love the craft of software development!"
|
||||
content: |
|
||||
I had such a wonderful time at Handmade Seattle this week connecting with an amazing community of people who passionately love the craft of software development!
|
||||
|
||||
- name: "Alasdair Monk, VP of Design ▲ [@vercel](https://twitter.com/vercel)"
|
||||
title: "My first Handmade Seattle was so great."
|
||||
link: "https://twitter.com/almonk/status/1593439527351484416"
|
||||
avatar: "/images/people/alasdair.jpg"
|
||||
content: "Abner Coimbre is a fantastic host & organiser with an important vision for building better software that benefits all of us, in his words: “reclaiming user value"
|
||||
content: |
|
||||
Abner Coimbre is a fantastic host & organiser with an important vision for building better software that benefits all of us, in his words: "reclaiming user value"
|
||||
---
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<body class="flex flex-col" style="min-height: 100svh">
|
||||
<!-- cache partial only in production -->
|
||||
{{ if hugo.IsProduction }}
|
||||
{{ partialCached "preloader.html" . }}
|
||||
|
|
@ -39,7 +39,7 @@
|
|||
{{ partial "search-modal.html" (dict "Context" . ) }}
|
||||
|
||||
|
||||
<main>
|
||||
<main class="grow">
|
||||
{{ block "main" . }}{{ end }}
|
||||
</main>
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,22 @@
|
|||
{{ define "main" }}
|
||||
<section class="mb-8">
|
||||
<div class="container flex flex-col gap-5">
|
||||
{{ $sections := slice . }}
|
||||
{{ if .Sections }}
|
||||
{{ $sections = .Sections.ByDate.Reverse }}
|
||||
{{ end }}
|
||||
{{ range $sections }}
|
||||
<div>
|
||||
<div>
|
||||
<h1><a href="{{ .RelPermalink }}">{{ .Title }}</a></h1>
|
||||
</div>
|
||||
<div class="flex flex-col">
|
||||
{{ range .RegularPages.ByDate }}
|
||||
<a href="{{ .RelPermalink }}">{{ .Title }}</a>
|
||||
{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
{{ end }}
|
||||
</div>
|
||||
</section>
|
||||
{{ end }}
|
||||
|
|
@ -1,15 +1,15 @@
|
|||
{{ if .testimonials }}
|
||||
<div class="container mx-auto px-4 py-12">
|
||||
<div class="mx-auto lg:px-4 lg:py-12">
|
||||
<div class="w-full">
|
||||
{{ range $index, $testimonial := .testimonials }}
|
||||
<div class="mt-8 testimonial dark:text-white">
|
||||
<div class="flex items-start">
|
||||
<a href="{{ $testimonial.link }}"
|
||||
class="mr-6 h-32 object-cover rounded-lg">
|
||||
class="flex-shrink-0 mr-6 w-24 lg:w-32 object-cover rounded-lg">
|
||||
{{ $img := resources.Get $testimonial.avatar }}
|
||||
<img src="{{ $img.RelPermalink }}" class="rounded-full w-32 object-cover shadow-md" />
|
||||
<img src="{{ $img.RelPermalink }}" class="rounded-full object-cover shadow-md" />
|
||||
</a>
|
||||
<div class="flex flex-col justify-between h-full bg-gray-100 dark:bg-darkmode-theme-light p-4 rounded-lg shadow-md">
|
||||
<div class="flex-grow flex flex-col justify-between h-full bg-gray-100 dark:bg-darkmode-theme-light p-4 rounded-lg shadow-md">
|
||||
<h3 class="text-xl font-bold mb-4">"{{ $testimonial.title }}"</h3>
|
||||
<p class="mb-4">{{ $testimonial.content | markdownify }}</p>
|
||||
<span class="text-sm">- {{ $testimonial.name | markdownify }}</span>
|
||||
|
|
|
|||
|
|
@ -1,13 +1,18 @@
|
|||
{{ if .tickets }}
|
||||
<div class="container mx-auto px-4 py-12">
|
||||
<div class="container max-w-3xl mx-auto px-4 py-12">
|
||||
<div class="w-full">
|
||||
{{ with .description }}
|
||||
<div class="my-4">
|
||||
{{ . | markdownify }}
|
||||
</div>
|
||||
{{ end }}
|
||||
{{ $tickets := .tickets }}
|
||||
{{ range $index, $ticket := $tickets }}
|
||||
<h2 class="text-3xl font-bold mb-8 {{ $ticket.title_class }}">{{ $ticket.title }}</h2>
|
||||
<h2 class="text-3xl font-bold {{ $ticket.title_class }}">{{ $ticket.title }}</h2>
|
||||
<h4 class="text-xl {{ $ticket.subtitle_class }}">{{ $ticket.subtitle }}</h2>
|
||||
{{/* <div class="columns-3s"> */}}
|
||||
<div id="pricing"
|
||||
class="grid grid-cols-1 gap-4 mt-4 leading-7 text-gray-900 border-0 border-gray-200 sm:mt-6 sm:gap-6 md:mt-8 md:gap-4 lg:grid-cols-2 {{ $ticket.section_class }}">
|
||||
class="grid grid-cols-1 gap-4 leading-7 text-gray-900 border-0 border-gray-200 py-4 sm:gap-6 md:gap-4 lg:grid-cols-2 {{ $ticket.section_class }}">
|
||||
{{ range $option_index, $option := $ticket.options }}
|
||||
|
||||
<!-- Ticket options -->
|
||||
|
|
@ -34,24 +39,34 @@
|
|||
</ul>
|
||||
</div> */}}
|
||||
|
||||
<div class="relative z-10 flex flex-col items-center max-w-md p-4 mx-auto my-0 border border-solid {{ $option.ticket_class }} rounded-lg sm:my-0 sm:p-6 md:my-4 md:p-6">
|
||||
<div class="relative z-10 flex flex-col items-center max-w-md p-4 mx-auto border border-solid {{ $option.ticket_class }} rounded-lg sm:p-6 md:p-6">
|
||||
<p class="m-0 text-lg leading-tight tracking-tight border-0 border-gray-200 {{ $option.name_class }}">
|
||||
{{ $option.name | markdownify }}
|
||||
</p>
|
||||
<h3 class="m-0 text-2xl font-semibold leading-tight tracking-tight border-0 border-gray-200 sm:text-3xl md:text-4xl {{ $option.title_class }}">
|
||||
{{ $option.title | markdownify }}
|
||||
</h3>
|
||||
<div class="flex items-center mt-4 leading-7 border-0 border-gray-200">
|
||||
<div class="flex gap-2 items-center mt-4 leading-7 border-0 border-gray-200">
|
||||
{{ $original_styles := "box-border text-light line-through text-2xl font-semibold leading-none border-solid" }}
|
||||
{{ if $option.original_price }}
|
||||
<p class="box-border m-0 -ml-8 mr-2 text-light line-through text-2xl font-semibold leading-none border-solid">
|
||||
<p class="{{ $original_styles }}">
|
||||
{{ $option.original_price | markdownify }}
|
||||
</p>
|
||||
{{ end }}
|
||||
|
||||
<p class="text-3xl">$</p>
|
||||
<p class="box-border m-0 text-6xl font-semibold leading-none border-solid {{ $option.price_class }}">
|
||||
{{ $option.price | markdownify }}
|
||||
<div class="flex items-center">
|
||||
<p class="text-3xl">$</p>
|
||||
<p class="box-border m-0 text-6xl font-semibold leading-none border-solid {{ $option.price_class }}">
|
||||
{{ $option.price | markdownify }}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
{{/* to center the overall content */}}
|
||||
{{ if $option.original_price }}
|
||||
<p class="{{ $original_styles }} invisible">
|
||||
{{ $option.original_price | markdownify }}
|
||||
</p>
|
||||
{{ end }}
|
||||
</div>
|
||||
<ul class="flex-1 p-0 mt-4 leading-7 text-gray-900 border-0 border-gray-200 {{ $option.features_class }}">
|
||||
{{ range $feature_index, $feature := $option.features }}
|
||||
|
|
|
|||
Loading…
Reference in New Issue