Compare commits
86 Commits
b2a4636aef
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f8e8077425 | ||
|
|
522e1ead8d | ||
|
|
e07b9e3935 | ||
|
|
4a2a71594b | ||
|
|
4144377426 | ||
|
|
cf837bf8ff | ||
|
|
bbbf2cbfa0 | ||
|
|
5408608c81 | ||
|
|
1d416e9940 | ||
|
|
3badfa73be | ||
|
|
449ca7c6ae | ||
|
|
52b3a7c0d7 | ||
|
|
5382f53856 | ||
|
|
8fbe126b5b | ||
|
|
5fdbc0489c | ||
|
|
96c03335c2 | ||
|
|
6004baf166 | ||
|
|
a108d1ad7d | ||
|
|
93e36fba2d | ||
|
|
1042880357 | ||
|
|
693aafc7b7 | ||
|
|
509574a540 | ||
|
|
b1ab24491b | ||
|
|
a7e2b2cf18 | ||
|
|
7e012eb3d1 | ||
|
|
b97a319cc1 | ||
|
|
7b6b816597 | ||
|
|
4649a813db | ||
|
|
8326c412aa | ||
|
|
8bc0ad22c8 | ||
|
|
beccd253bf | ||
|
|
843a8c01b9 | ||
|
|
ef0cce57d0 | ||
|
|
10c7b20a45 | ||
|
|
973720b07d | ||
|
|
0b9db9ded6 | ||
|
|
264a79a10d | ||
|
|
dcb3a87896 | ||
|
|
a7a7b01104 | ||
|
|
a98171e07d | ||
|
|
b77d4cff28 | ||
|
|
c435d88f29 | ||
|
|
150c9a66d7 | ||
|
|
57f5d7e4e5 | ||
|
|
7fdbed1121 | ||
|
|
988afedbae | ||
|
|
d81e71b39a | ||
|
|
ef96a2dfa1 | ||
|
|
1571354aa9 | ||
|
|
379d686c82 | ||
|
|
72238d7809 | ||
|
|
b77c38c8aa | ||
|
|
4ec9de81bd | ||
|
|
d9a619d470 | ||
|
|
ea611a5575 | ||
|
|
7fc4914808 | ||
|
|
76bc17dd7f | ||
|
|
bdfdced801 | ||
|
|
bfb56ceaa3 | ||
|
|
ef352dd0d8 | ||
|
|
ff3b6b8166 | ||
|
|
f11814dbdc | ||
|
|
754932a0b7 | ||
|
|
6d5b5af9e4 | ||
|
|
c869ec0d32 | ||
|
|
07694c123c | ||
|
|
227392e386 | ||
|
|
52d4b54bb6 | ||
|
|
dab9f8b452 | ||
|
|
33025fb40c | ||
|
|
205b8bab2f | ||
|
|
e5d705c1d1 | ||
|
|
67ca755a26 | ||
|
|
5417819d85 | ||
|
|
37c70cc8ba | ||
|
|
b17bad5594 | ||
|
|
08506c38bb | ||
|
|
e075c141b6 | ||
|
|
7ba3d9ef27 | ||
|
|
7c3e5209bd | ||
|
|
756010d8d6 | ||
|
|
4e36317fbd | ||
|
|
eca79158e2 | ||
|
|
68328a3a6b | ||
|
|
dda5e31f14 | ||
|
|
4a0195e6d9 |
BIN
assets/images/people/peter.jpg
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
assets/images/people/robbins.jpg
Normal file
|
After Width: | Height: | Size: 672 KiB |
@@ -121,3 +121,53 @@ blockquote p:first-of-type {
|
||||
content: "" !important;
|
||||
}
|
||||
}
|
||||
|
||||
// Revolt chat server
|
||||
.revolt-form-section {
|
||||
max-width: 600px;
|
||||
margin: 2rem auto;
|
||||
padding: 0 1rem;
|
||||
}
|
||||
|
||||
.revolt-form .form-group {
|
||||
margin-bottom: 1.25rem;
|
||||
}
|
||||
|
||||
.revolt-form label {
|
||||
display: block;
|
||||
margin-bottom: 0.5rem;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.revolt-form .required {
|
||||
color: #e74c3c;
|
||||
}
|
||||
|
||||
.revolt-form input,
|
||||
.revolt-form textarea {
|
||||
width: 100%;
|
||||
padding: 0.75rem;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 4px;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
.revolt-form input:focus,
|
||||
.revolt-form textarea:focus {
|
||||
outline: none;
|
||||
border-color: #3498db;
|
||||
}
|
||||
|
||||
.revolt-form button {
|
||||
background: #3498db;
|
||||
color: white;
|
||||
padding: 0.75rem 1.5rem;
|
||||
border: none;
|
||||
border-radius: 4px;
|
||||
font-size: 1rem;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.revolt-form button:hover {
|
||||
background: #2980b9;
|
||||
}
|
||||
|
||||
@@ -2,25 +2,8 @@
|
||||
|
||||
# main menu
|
||||
[[main]]
|
||||
name = "Conferences"
|
||||
weight = 1
|
||||
|
||||
[[main]]
|
||||
parent = "Conferences"
|
||||
name = "Calendar"
|
||||
url = "/calendar"
|
||||
weight = 3
|
||||
|
||||
[[main]]
|
||||
parent = "Conferences"
|
||||
name = "Seattle"
|
||||
url = "/Seattle"
|
||||
weight = 2
|
||||
|
||||
[[main]]
|
||||
parent = "Conferences"
|
||||
name = "Boston"
|
||||
url = "/boston"
|
||||
name = "Meetups"
|
||||
url = "/meetups"
|
||||
weight = 1
|
||||
|
||||
[[main]]
|
||||
@@ -29,60 +12,59 @@ url = "/news"
|
||||
weight = 2
|
||||
|
||||
[[main]]
|
||||
name = "Media"
|
||||
url = "/media"
|
||||
name = "Guide"
|
||||
url = "/guide"
|
||||
weight = 3
|
||||
|
||||
[[main]]
|
||||
name = "Explore"
|
||||
weight = 4
|
||||
|
||||
[[main]]
|
||||
parent = "Explore"
|
||||
name = "Discord"
|
||||
url = "/discord"
|
||||
weight = 3
|
||||
|
||||
[[main]]
|
||||
parent = "Explore"
|
||||
name = "Meetups"
|
||||
url = "/meetups"
|
||||
name = "Chat"
|
||||
url = "/chat"
|
||||
weight = 1
|
||||
|
||||
[[main]]
|
||||
parent = "Explore"
|
||||
name = "Media"
|
||||
url = "/media"
|
||||
weight = 2
|
||||
|
||||
[[main]]
|
||||
parent = "Explore"
|
||||
name = "Cowork"
|
||||
url = "/cowork"
|
||||
weight = 2
|
||||
weight = 3
|
||||
|
||||
[[main]]
|
||||
name = "About"
|
||||
url = "/about"
|
||||
weight = 5
|
||||
|
||||
weight = 4
|
||||
|
||||
# footer menu
|
||||
[[footer]]
|
||||
name = "Tickets"
|
||||
url = "/tickets"
|
||||
weight = 1
|
||||
name = "Guide"
|
||||
url = "/guide"
|
||||
weight = 4
|
||||
|
||||
[[footer]]
|
||||
name = "Members"
|
||||
url = "https://donorbox.org/handmadecities"
|
||||
name = "About"
|
||||
url = "/about"
|
||||
weight = 5
|
||||
|
||||
[[footer]]
|
||||
name = "Meetups"
|
||||
url = "/meetups"
|
||||
weight = 1
|
||||
|
||||
[[footer]]
|
||||
name = "Chat"
|
||||
url = "/chat"
|
||||
weight = 3
|
||||
|
||||
[[footer]]
|
||||
name = "Seattle"
|
||||
url = "/seattle"
|
||||
name = "News"
|
||||
url = "/news"
|
||||
weight = 2
|
||||
|
||||
[[footer]]
|
||||
name = "Boston"
|
||||
url = "/boston"
|
||||
weight = 4
|
||||
|
||||
@@ -27,7 +27,7 @@ google_adsense = "" # example: ca-pub-xxxxxxxxxxxxxxxx
|
||||
# custom script on header, example: custom_script= "<script>console.log(\"Hello World\")</script>"
|
||||
custom_script = ""
|
||||
# copyright
|
||||
copyright = "© 2025 Handmade Cities LLC"
|
||||
copyright = "© 2026 Handmade Cities LLC"
|
||||
|
||||
# Preloader
|
||||
# preloader module: https://github.com/gethugothemes/hugo-modules/tree/master/components/preloader
|
||||
@@ -38,8 +38,8 @@ preloader = "" # use jpg, png, svg or gif format.
|
||||
# Navigation button
|
||||
[navigation_button]
|
||||
enable = true
|
||||
label = "tickets"
|
||||
link = "tickets"
|
||||
label = "Chat"
|
||||
link = "chat"
|
||||
|
||||
# search
|
||||
# search module: https://github.com/gethugothemes/hugo-modules/tree/master/search
|
||||
@@ -55,9 +55,9 @@ show_categories = true
|
||||
# announcement
|
||||
# announcement module: https://github.com/gethugothemes/hugo-modules/tree/master/components/announcement
|
||||
[announcement]
|
||||
enable = true
|
||||
enable = false
|
||||
expire_days = 7
|
||||
content = "Revolt Against Discord [Before 2026](/news/revolt-against-discord)"
|
||||
content = "Official February [Memos](/memos)"
|
||||
|
||||
# seo meta data for OpenGraph / Twitter Card
|
||||
# seo module: https://github.com/gethugothemes/hugo-modules/tree/master/seo-tools/basic-seo
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
---
|
||||
# Banner
|
||||
banner:
|
||||
title: "<span class='boston-color'>Boston</span> in the Summer.<br>
|
||||
<span class='seattle-color'>Seattle</span> in the fall.<br>
|
||||
<span class='meetups-color'>Meetups</span> all year round."
|
||||
content: "We are the largest indie conferences for low-level programmers. This is your portal to meet with folks into graphics, game engines, kernels, compilers, and more!"
|
||||
title: "<span class='boston-color'>Come</span> for programming,<br>
|
||||
<span class='seattle-color'>stay</span> for the friends.<br>
|
||||
<span class='meetups-color'>Meetups</span> all year round!"
|
||||
content: "We are the largest offline events for systems programmers: 100% indie. This is our portal to meet engineers super into game engines, compilers, terminals, kernels and more:"
|
||||
image: "/images/hmc_spread.png"
|
||||
hide_banner_img: true
|
||||
live_banner:
|
||||
@@ -54,9 +54,9 @@ banner:
|
||||
alt_text_right: "right"
|
||||
button:
|
||||
enable: true
|
||||
label: "Tickets"
|
||||
link: "/tickets"
|
||||
icon: "fa fa-ticket pl-2"
|
||||
label: "Quick Guide"
|
||||
link: "https://guide.handmadecities.com"
|
||||
icon: "fa fa-book pl-2"
|
||||
class: "btn text-white seattle-bg"
|
||||
button2:
|
||||
enable: false
|
||||
@@ -99,7 +99,7 @@ features:
|
||||
image: ""
|
||||
section_class: "pb-24"
|
||||
side: "center"
|
||||
content: "<span class='block mx-auto mt-24 text-black dark:text-white w-1/2'>Companies hunting for Handmade talent. They've attended our conference, but don't shape our agenda.</span>"
|
||||
content: "<span class='block mx-auto mt-24 text-black dark:text-white w-1/2'>Sample of companies hunting for Handmade talent. Ready to [join](https://guide.handmadecities.com/docs/support/employment/) the list?</span>"
|
||||
content_class: "mt-12"
|
||||
img_grid:
|
||||
imgs:
|
||||
@@ -130,7 +130,7 @@ features:
|
||||
button:
|
||||
enable: false
|
||||
|
||||
- title: "Hundreds in person,<br> Thousands online"
|
||||
- title: "Meet in person,<br> not online"
|
||||
title_class: "text-white"
|
||||
transition:
|
||||
start: "/images/transition4.svg"
|
||||
@@ -150,12 +150,12 @@ features:
|
||||
image: "/images/nystrom.webp"
|
||||
image_link: "https://vimeo.com/780000746"
|
||||
image_class: "rounded-md shadow-lg"
|
||||
content: "Every year hundreds of systems programmers convene physically while thousands more watch from the comfort of their couch."
|
||||
content: "Every month hundreds of caring programmers convene around the world to discuss the need for software quality."
|
||||
content_class: "p-4 px-6 rounded-md bg-[rgba(0,0,0,0.7)]"
|
||||
section_class: "text-white"
|
||||
button:
|
||||
enable: true
|
||||
label: "Register"
|
||||
link: "/tickets"
|
||||
label: "Attend Our Events"
|
||||
link: "/meetups"
|
||||
button_class: "bg-white text-black"
|
||||
---
|
||||
|
||||
@@ -20,21 +20,21 @@ features:
|
||||
color: "#FC6D36"
|
||||
content_class: "text-white"
|
||||
- title: "An obligation to software quality"
|
||||
content: "Our industry’s incentives erode ownership to extract rent from consumers. We’ve abandoned the love for our craft, the user's quality of experience, and their right to privacy."
|
||||
content: "Our industry’s incentives destroy ownership to extract rent from customers. We’ve abandoned the love for our craft, the user's quality of experience, and their right to privacy."
|
||||
color: "#A456EA"
|
||||
content_class: "text-white"
|
||||
- title: "Self-host wherever possible"
|
||||
content: "Essential services for our conferences and meetups are processed in-house. For example, our servers personally generate your conference ticket—removing spying middlemen like Ticketmaster."
|
||||
content: "We operate our own chat server and mailing lists. For purchases, payment processors ping our servers to process orders ourselves."
|
||||
color: "#6B8EE8"
|
||||
content_class: "text-white"
|
||||
- title: "Direct funding approach"
|
||||
content: "We grow through obvious means, funded primarily through ticket sales, followed by independent donations and fixed-rate booth rentals: straightforward, mom-and-pop transactions."
|
||||
content: "We grow through obvious means, funded by users purchasing Handmade software. **Zero investors.**"
|
||||
color: "#60E3C4"
|
||||
content_class: "text-white"
|
||||
button:
|
||||
enable: false
|
||||
label: "Founder's Vision"
|
||||
link: "/founders-vision"
|
||||
enable: true
|
||||
label: "Official Memos"
|
||||
link: "/memos"
|
||||
icon: "fa fa-ticket pl-2"
|
||||
class: "btn text-white meetups-bg"
|
||||
|
||||
@@ -53,6 +53,6 @@ features:
|
||||
start_dark_color: "black"
|
||||
bg_color: "#060610"
|
||||
content_class: "mt-4"
|
||||
content: "[Abner](https://abner.page) is founder of Handmade Cities and the sole organizer for our conferences.<br><br>Born and raised in Puerto Rico, he was mentored by Kennedy Space Center on how they make software. After winning NASA’s Intern of the Year, Abner penned an essay on their programming philosophy: featured in the [news](https://observer.com/2017/07/a-look-into-nasa-coding-philosophy-kennedy-space-center-programming/). He was subsequently promoted to launch control engineer.<br><br>Abner started the [Handmade Network](https://handmade.network/), an online community learning to make quality software. He went on to work under Jonathan Blow followed by Cyan Worlds to ship the Myst Remake.<br><br>Now in his early thirties, Abner's concern for declining software standards—both ethical and technical—pushed him to become a community organizer. (He still loves [programming](https://terminal.click) though.)"
|
||||
content: "[Abner](https://abner.page) is founder of Handmade Cities and full-time [indie dev](https://terminal.click).<br><br>Born and raised in Puerto Rico, he was mentored by Kennedy Space Center on how they make software. After winning NASA’s Intern of the Year, Abner penned an essay on their programming philosophy: featured in the [news](https://observer.com/2017/07/a-look-into-nasa-coding-philosophy-kennedy-space-center-programming/). He was subsequently promoted to launch control engineer.<br><br>Abner started the [Handmade Network](https://handmade.network/), an online community learning to make quality software. He went on to work under Jonathan Blow followed by Cyan Worlds to ship the Myst Remake.<br><br>Now in his early thirties, Abner's concern for declining software standards—both ethical and technical—pushed him to become a community organizer."
|
||||
|
||||
---
|
||||
|
||||
4
content/english/invite.md
Normal file
@@ -0,0 +1,4 @@
|
||||
---
|
||||
title: "Invite a Friend to our Chat!"
|
||||
layout: "invite"
|
||||
---
|
||||
@@ -10,6 +10,6 @@ bio="daniel@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="khrob@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="marcel@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -5,11 +5,11 @@ description="Receive Handmade meetup invites from the Hub of the Universe!"
|
||||
api_endpoint="https://api.handmadecities.com/v1/meetups/boston"
|
||||
|
||||
[[hosts]]
|
||||
name="Caden Parker"
|
||||
bio="caden@handmadecities.com"
|
||||
name="Margret Riegert"
|
||||
bio="margret@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="josh@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="felix@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
15
content/english/meetups/denmark.md
Normal file
@@ -0,0 +1,15 @@
|
||||
+++
|
||||
title="Denmark's Mailing List"
|
||||
date="2024-11-03T12:00:00-08:00"
|
||||
description="Receive Handmade meetup invites from the happiest place on earth!"
|
||||
api_endpoint="https://api.handmadecities.com/v1/meetups/denmark"
|
||||
|
||||
[[hosts]]
|
||||
name="Patrick Jakobsen"
|
||||
bio="patrick@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
@@ -10,6 +10,6 @@ bio="seth@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="sam@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="martin@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="eternalstudent@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="jack@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="dan@handmadecities.com"
|
||||
image="/images/people/dan_grigsby.webp"
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
15
content/english/meetups/montreal.md
Normal file
@@ -0,0 +1,15 @@
|
||||
+++
|
||||
title="Montreal's Mailing List"
|
||||
date="2024-11-03T12:00:00-08:00"
|
||||
description="Receive Handmade meetup invites from cultural and economic capital of Quebec!"
|
||||
api_endpoint="https://api.handmadecities.com/v1/meetups/montreal"
|
||||
|
||||
[[hosts]]
|
||||
name="Mitchell Amihod"
|
||||
bio="mitchell@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
@@ -10,6 +10,6 @@ bio="mark@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="sid@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -5,22 +5,22 @@ description="Receive Handmade meetup invites from the Emerald City!"
|
||||
thumbnail="/images/meetups/distantworlds_space.jpg"
|
||||
api_endpoint="https://api.handmadecities.com/v1/meetups/seattle"
|
||||
|
||||
[[hosts]]
|
||||
name="Allen Webster"
|
||||
bio="Founder of [Mr. 4th Lab](https://mr4th.com). Hosts the classic monthly meetups"
|
||||
image="/images/people/allen_square.webp"
|
||||
|
||||
[[hosts]]
|
||||
name="Phil Homan"
|
||||
bio="Staff [member](https://handmadecities.com/about). Hosts the [coworking](/cowork) sessions (bi-weekly)"
|
||||
image="/images/people/phil_homan.jpg"
|
||||
|
||||
[[hosts]]
|
||||
name="Abner Coimbre"
|
||||
bio="Staff [member](https://handmadecities.com/about). Hosts the third place (weekly)"
|
||||
bio="Hosts the classic monthly meetups"
|
||||
image="/images/people/abner_2022.png"
|
||||
|
||||
[[hosts]]
|
||||
name="Peter Slattery"
|
||||
bio="Hosts the Seattle [coworking](/cowork) sessions"
|
||||
image="/images/people/peter.jpg"
|
||||
|
||||
[[hosts]]
|
||||
name="Taylor Robbins"
|
||||
bio="Hosts the Kirkland [coworking](/cowork) sessions"
|
||||
image="/images/people/robbins.jpg"
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="xander@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="miguel@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="gabriel@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="jstevens@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
@@ -10,6 +10,6 @@ bio="patrick@handmadecities.com"
|
||||
image=""
|
||||
+++
|
||||
|
||||
#### Optional Discord Server
|
||||
#### Optional Revolt Server
|
||||
|
||||
The mailing list is how you get official invites, but you may join the Discord for extra updates or to chat with the meetup group.
|
||||
The mailing list is how you get official invites, but you may join Revolt for extra updates or to chat with the meetup group.
|
||||
|
||||
27
content/english/memos/index.md
Normal file
@@ -0,0 +1,27 @@
|
||||
---
|
||||
title: "Official Memos"
|
||||
meta_title: "Official Memos"
|
||||
layout: "board"
|
||||
description: "Memos from our founder"
|
||||
draft: false
|
||||
---
|
||||
Handmade Cities publishes memoranda written by [our founder](/about), usually addressed to prominent community members. The public nature of these documents lets you:
|
||||
1. Keep tabs on how we govern
|
||||
2. Call out faulty reasoning or inconsistencies (but don't *"well actually"* us)
|
||||
3. Increase chances for participation e.g. because you saw a new initiative
|
||||
|
||||
Memos are published once a month as PDF documents below.
|
||||
|
||||
## MEMORANDA
|
||||
|
||||
**January 2026**
|
||||
|
||||
- [HMC Memo 001 - Wiki Ownership](/memos/HMC-Memo-001-Wiki-Ownership.pdf)
|
||||
- [HMC Memo 002 - UXUI](/memos/HMC-Memo-002-UXUI.pdf)
|
||||
|
||||
**February 2026**
|
||||
|
||||
- [HMC Memo 003 - Server Admin](/memos/HMC-Memo-003-Server-Admin.pdf)
|
||||
- [HMC Memo 004 - Meetup Hosts](/memos/HMC-Memo-004-Meetup-Hosts.pdf)
|
||||
|
||||
Date of publication varies.
|
||||
16
content/english/news/computer-club-atelier-hivernal-2026.md
Normal file
@@ -0,0 +1,16 @@
|
||||
---
|
||||
title: "Computer Club - Atelier Hivernal - Lyon"
|
||||
meta_title: ""
|
||||
description: "Martin Fouilleul is our French meetup host. Read their latest announcement"
|
||||
date: 2026-01-10T12:00:00Z
|
||||
image: "/images/meetups/france.jpg"
|
||||
categories: ["Meetups"]
|
||||
author: "Martin Fouilleul"
|
||||
tags: ["meetups", "france"]
|
||||
draft: false
|
||||
---
|
||||
|
||||
> [Martin Fouilleul](/media/seattle-2023/orca/) is our [French](/meetups/grenoble) meetup host. You may reach the author at martin@handmadecities.com
|
||||
|
||||
<p>Bonjour, et bonne année,</p> <p>Pierre-Louis, que vous avez déjà pu croiser aux meetups Grenoblois, vous propose une nouvelle après-midi d’échanges et de bricolage autour de vos projets software/hardware. Ça se passe le <strong>17 janvier</strong> à partir de 14h, à <strong>Grrrnd Zero</strong>, 60 avenue de Bohlen, Vaulx-en-Velin.</p> <p>La capacité maximale étant de 10 personnes, pensez à réserver à l’avance en écrivant à <a href="mailto:meetup@pld.tf">meetup@pld.tf</a>. Un repas est proposé pour les personnes en avance entre 12h30 et 13h30, merci de prévenir lors de votre réservation.</p> <p>En espérant vous y retrouver nombreux·ses !</p> <p>Martin</p> <p><img src="https://rel.pld.tf/meetup/20260117.png" alt="Affiche" /></p>
|
||||
|
||||
@@ -12,7 +12,7 @@ draft: false
|
||||
|
||||
A special Handmade meetup: one of Seattle's most popular coffee shops is winding down.
|
||||
|
||||
> Guest Article by Allen Webster
|
||||
> Allen Webster is a meetup host for [Seattle](/meetups/seattle). You may reach the author at allen@handmadecities.com
|
||||
|
||||
Seattle area folks,
|
||||
|
||||
|
||||
15
content/english/news/first-boston-meetup-2026.md
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "Boston Meetup 01/24"
|
||||
meta_title: ""
|
||||
description: "Margret Riegert is our Boston meetup host. Read their latest announcement"
|
||||
date: 2026-01-12T12:00:00Z
|
||||
image: "/images/meetups/boston.jpg"
|
||||
categories: ["Meetups"]
|
||||
author: "Margret Riegert"
|
||||
tags: ["meetups", "boston"]
|
||||
draft: false
|
||||
---
|
||||
|
||||
> Margret Riegert is our [Boston](/meetups/boston) meetup host. You may reach the author at margret@handmadecities.com
|
||||
|
||||
<h2>Meetup Details</h2> <ul> <li>Date: January 24th, 2026</li> <li>Time: 12-2pm</li> <li>Address: 700 Boylston St, Boston, MA 02116</li> <li>RSVP: <a href="https://partiful.com/e/vUcDz66dzwi4k9L6iJiy\">https://partiful.com/e/vUcDz66dzwi4k9L6iJiy</a></li> <li>Boston Meetup Revolt: <a href="https://revolt.handmadecities.com\">https://revolt.handmadecities.com</a></li> </ul> <hr /> <h2>The Agenda</h2> <ul> <li><strong>Software Project Demos:</strong> Bring a project you’ve been working on, ask questions, get constructive feedback, etc.</li> <li><strong>Presentation:</strong> Give a mini talk about something you’ve been working on and that you think others in the handmade community would find interesting</li> <li><strong>Special Topics:</strong> Talk as a group about anything relevant in the handmade community</li> <li><strong>Social After:</strong> Afterwards, we can head out and grab something to eat</li> </ul> <p>You’re not required to bring a project or anything; showing up is good enough!</p> <hr /> <h2>Getting there</h2> <p>We’ll be in the mezzanine conference room #3.</p> <p>If you enter through the Boylston Street entrance, you want to head to the left and look for where it says Community Learning Center.</p>
|
||||
15
content/english/news/first-boston-meetup-reminder-2026.md
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "Boston Meetup Reminder"
|
||||
meta_title: ""
|
||||
description: "Margret Riegert is our Boston meetup host. Read their latest announcement"
|
||||
date: 2026-01-23T12:00:00Z
|
||||
image: "/images/meetups/boston.jpg"
|
||||
categories: ["Meetups"]
|
||||
author: "Margret Riegert"
|
||||
tags: ["meetups", "boston"]
|
||||
draft: false
|
||||
---
|
||||
|
||||
> Margret Riegert is our [Boston](/meetups/boston) meetup host. You may reach the author at margret@handmadecities.com
|
||||
|
||||
<p>Hello! This is just a friendly reminder about the Handmade meetup <strong>tomorrow</strong> at the library.</p> <h2>Meetup Details</h2> <ul> <li>Date: January 24th, 2026</li> <li>Time: 12-2pm</li> <li>Address: 700 Boylston St, Boston, MA 02116</li> <li>RSVP: <a href="https://partiful.com/e/vUcDz66dzwi4k9L6iJiy\">https://partiful.com/e/vUcDz66dzwi4k9L6iJiy</a></li> <li>Boston Meetup Revolt: <a href="https://revolt.handmadecities.com\">https://revolt.handmadecities.com</a></li> </ul> <hr /> <h2>The Agenda</h2> <ul> <li><strong>Software Project Demos:</strong> Bring a project you’ve been working on, ask questions, get constructive feedback, etc.</li> <li><strong>Presentation:</strong> Give a mini talk about something you’ve been working on and that you think others in the handmade community would find interesting</li> <li><strong>Special Topics:</strong> Talk as a group about anything relevant in the handmade community</li> <li><strong>Social After:</strong> Afterwards, we can head out and grab something to eat</li> </ul> <p>You’re not required to bring a project or anything; showing up is good enough!</p> <hr /> <h2>Getting there</h2> <p>We’ll be in the mezzanine conference room #3.</p> <p>If you enter through the Boylston Street entrance, you want to head to the left and look for where it says Community Learning Center.</p>
|
||||
15
content/english/news/first-dc-meetup-2026.md
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "D.C. Meetup: API Design & Single-Header Libraries"
|
||||
meta_title: ""
|
||||
description: "Felix Ulmanu is our Washington D.C. meetup host. Read their latest announcement"
|
||||
date: 2026-01-12T12:00:00Z
|
||||
image: "/images/meetups/dc.jpg"
|
||||
categories: ["Meetups"]
|
||||
author: "Felix Ulmanu"
|
||||
tags: ["meetups", "dc"]
|
||||
draft: false
|
||||
---
|
||||
|
||||
> Felix Ulmanu is our [Washington D.C.](/meetups/dc) meetup host. You may reach the author at felix@handmadecities.com
|
||||
|
||||
<p>Join us this Saturday, 24 January 2026, from 1:45pm to 2:45pm, to discuss API design and single-header libraries. How should we structure and program libraries to impose as few usage constraints as possible? We’ll look at <a href="https://github.com/nothings/stb">the STB libraries</a> and other examples as case studies.</p> <p><strong>Please note the slightly different time than usual</strong> (though after 2:45pm, we may continue chatting over lunch nearby). We’re still at the <strong>West End Library</strong>, 2301 L St NW, Washington, DC 20037, in <strong>Meeting Room 2</strong>. See you soon!</p> <h2>Contact</h2> <ul> <li><code>_felixu_</code> on Discord, or reply to this email</li> </ul> <p>Note that it appears Gmail may send this announcement to “Promotions”. To prevent this, you can set emails from this address to always go to your primary inbox. (We will never send spam!)</p>
|
||||
15
content/english/news/first-dc-meetup-correction-2026.md
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "D.C. Meetup: POSTPONED to Sunday, 1 February"
|
||||
meta_title: ""
|
||||
description: "Felix Ulmanu is our Washington D.C. meetup host. Read their latest announcement"
|
||||
date: 2026-01-22T12:00:00Z
|
||||
image: "/images/meetups/dc.jpg"
|
||||
categories: ["Meetups"]
|
||||
author: "Felix Ulmanu"
|
||||
tags: ["meetups", "dc"]
|
||||
draft: false
|
||||
---
|
||||
|
||||
> Felix Ulmanu is our [Washington D.C.](/meetups/dc) meetup host. You may reach the author at felix@handmadecities.com
|
||||
|
||||
<p>Due to Winter Storm Fern, the next DC meetup, previously scheduled for this Saturday, is <strong>postponed to Sunday, 1 February, from 2pm to 4pm</strong>. See the last email for our topic and location, which both remain unchanged. Sorry for the trouble, and we hope to see you soon!</p> <h2>Contact</h2> <ul> <li><code>_felixu_</code> on Discord, or reply to this email</li> </ul> <p>Note that it appears Gmail may send this announcement to “Promotions”. To prevent this, you can set emails from this address to always go to your primary inbox. (We will never send spam!)</p>
|
||||
15
content/english/news/first-kirkland-cowork-2026.md
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "Friday Co-Working in Kirkland"
|
||||
meta_title: ""
|
||||
description: "Taylor Robbins is our Kirkland co-working host. Read their latest announcement"
|
||||
date: 2026-01-08T12:00:00Z
|
||||
image: "/images/meetups/kirkland.jpg"
|
||||
categories: ["Meetups"]
|
||||
author: "Taylor Robbins"
|
||||
tags: ["cowork", "kirkland"]
|
||||
draft: false
|
||||
---
|
||||
|
||||
> Taylor Robbins is our [Kirkland](/meetups/seattle) co-working host. You may reach the author at taylor@handmadecities.com
|
||||
|
||||
<p>Dear Handmade folks,</p> <p>Happy New Year! Tomorrow is our first Kirkland Co-Working session of 2026. Now that the holidays are done it’s back to work, and what better way to work than in the company of others. Come hang out, anyone is welcome, even if you need to work on your day-job tasks while you’re there, but we always love hearing what people are working on if you have something to share.</p> <p><strong>When:</strong> 2:00pm-5:00pm (Friday January 9th)</p> <p><strong>Where:</strong> Thruline Coffee - 136 Park Ln, Kirkland, WA 98033</p> <p><a href="https://maps.app.goo.gl/CmeFmdPdLZkycXHw6">Google Maps Link</a></p> <p><img src="https://www.robbitay.com/handmade/thruline_coffee_512.png" alt="Thruline Coffee Image" /></p> <p>I still recommend charging your laptop beforehand, but if you need we often get the table in the back with an outlet and I’ll bring a extension cord + splitter. If you don’t see us when you first walk in make sure you check behind the counter on the right, the table we sit at is not visible from the door.</p> <p>If you have any questions don’t hesitate to reach out! (reply to this email, or DM/ping on Discord <code>@ProfessorSil</code>)</p>
|
||||
15
content/english/news/first-london-meetup-2026.md
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "London Meetup, January 11th"
|
||||
meta_title: ""
|
||||
description: "Jacques Heunis is our London meetup host. Read their latest announcement"
|
||||
date: 2026-01-04T12:00:00Z
|
||||
image: "/images/meetups/london.jpg"
|
||||
categories: ["Meetups"]
|
||||
author: "Jacques Heunis"
|
||||
tags: ["meetups", "london"]
|
||||
draft: false
|
||||
---
|
||||
|
||||
> Jacques Heunis is our [London](/meetups/london) meetup host. You may reach the author at jacques@handmadecities.com
|
||||
|
||||
<p>Hey everyone</p> <p>It’s now 2026, time for everybody to mis-type the year for the next two months! \\o/ More importantly, its a new month and that means a new meetup. I’m sending this out a bit late so we’ll schedule for the 18th of January.</p> <p>As usual we’ll book a table at The Fellow (a pub near Kings Cross Station, N1 9AA). There’s no agenda so anybody is free to bring any topics or demos that they’d like to discuss. If anybody wants to bring a laptop or gadget or what-have-you to demo something that’s awesome but most often its just a casual chat about recent projects or topics that interest people. The only ask is that attendees grab a drink or some food to compensate the pub for so kindly allowing us to use their space.</p> <p>We’ll schedule for 14:00 on the 18th of January (2 weeks from now) and people are welcome to stay for as long as they fancy. Since space is limited, please do respond <a href="https://rsvp.handmadecities.com/event/BodEJGrM\">on the event page here</a> by the end of Sunday the 11th if you’d like to attend, just so that I can make a reservation for the table.</p> <p>Looking forward to seeing you there!</p> <p>Jacques</p>
|
||||
15
content/english/news/first-london-meetup-correction-2026.md
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "Correction: Handmade London Meetup, January 18th"
|
||||
meta_title: ""
|
||||
description: "Jacques Heunis is our London meetup host. Read their latest announcement"
|
||||
date: 2026-01-05T12:00:00Z
|
||||
image: "/images/meetups/london.jpg"
|
||||
categories: ["Meetups"]
|
||||
author: "Jacques Heunis"
|
||||
tags: ["meetups", "london"]
|
||||
draft: false
|
||||
---
|
||||
|
||||
> Jacques Heunis is our [London](/meetups/london) meetup host. You may reach the author at jacques@handmadecities.com
|
||||
|
||||
<p>Hey everyone</p> <p>Just a correction from my previous email since the subject disagreed with the body on the date of the next meetup. As shown <a href="https://rsvp.handmadecities.com/event/BodEJGrM\">on the event page</a> <strong>the event will be on the 18th of January</strong>, not the 11th.</p> <p>Sorry for the confusion, please do not show up at The Fellow on the 11th!</p> <p>Looking forward to seeing you there!</p> <p>Jacques</p>
|
||||
15
content/english/news/first-vancouver-meetup-2026.md
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "First Vancouver Meetup of the Year is Tomorrow!"
|
||||
meta_title: ""
|
||||
description: "Gabriel Dechichi is our Vancouver meetup host. Read their latest announcement"
|
||||
date: 2026-01-23T12:05:00Z
|
||||
image: "/images/meetups/vancouver.jpg"
|
||||
categories: ["Meetups"]
|
||||
author: "Gabriel Dechichi"
|
||||
tags: ["meetups", "vancouver"]
|
||||
draft: false
|
||||
---
|
||||
|
||||
> Gabriel Dechichi is our [Vancouver](/meetups/vancouver) meetup host. You may reach the author at gabriel@handmadecities.com
|
||||
|
||||
<p>Hi there! Happy new year!</p> <p>Our first Vancouver Handmade Meetup of the year will be this Saturday (tomorrow), January 24th at 2pm PST.</p> <p>Same location as usual, right next to the Brentwood Town Centre Station.</p> <p><strong>Location</strong>: <a href="https://www.google.ca/maps/place/1955+Alpha+Wy.,+Burnaby,+BC+V5C+0K5/@49.26672,-123.0032249,17z/data=!3m1!4b1!4m6!3m5!1s0x5486773aed540b73:0x8115d594509db9c4!8m2!3d49.26672!4d-123.00065!16s%2Fg%2F11hhm5l_nk?entry=tts&g_ep=EgoyMDI1MDQzMC4xIPu8ASoASAFQAw%3D%3D&skid=5dbe0e2f-2f48-479d-acad-b25f3371746e\">1955 Alpha Way, Burnaby BC V5C 0K6</a> </br><strong>Date: Saturday, January 24th</strong> </br><strong>Time: 2pm - 4pm</strong></p> <p>On this meetup we will have a very special <em>talk from Sab on handling segfaults when working close to hardware</em>, which many of us were looking forward to, so hope you can all make it!</p> <p>If you’re considering attending you can RSVP <a href="https://luma.com/i49vxiqs\">by clicking this link</a>.</p> <p>Looking forward to meeting y’all soon!</p>
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: "Boston Meeting Instructions"
|
||||
title: "Boston Conference Instructions"
|
||||
meta_title: ""
|
||||
description: "Where we're meeting for 2025"
|
||||
date: 2025-08-14T12:00:00Z
|
||||
|
||||
63
content/english/news/hms-meeting-instructions-2025.md
Normal file
@@ -0,0 +1,63 @@
|
||||
---
|
||||
title: "Seattle Conference Instructions"
|
||||
meta_title: ""
|
||||
description: "Where we're meeting for 2025"
|
||||
date: 2025-12-03T12:00:00Z
|
||||
image: "/images/meetups/obc_counter.jpg"
|
||||
categories: ["Press Release"]
|
||||
author: "Abner Coimbre"
|
||||
tags: ["meta", "hmc"]
|
||||
draft: false
|
||||
---
|
||||
|
||||
All the details for Handmade Seattle Lite happening this Saturday.
|
||||
|
||||
Dear Handmade folks,
|
||||
|
||||
I'm motivated to see you this weekend. This is a reminder there was a whole [shakeup and downsizing](/news/winding-down). With that said, everyone attending is in great spirits and we're looking to get inspired.
|
||||
|
||||
#### Where do we meet?
|
||||
|
||||
The full schedule is on the [Seattle page](/seattle): we discuss the presentations, venue details and any instructions or contingency plans.
|
||||
|
||||
I'll be at the entrance to One Bite Cafe (Seattle) at 1:45PM. At 2:05 I'll start turning on the A/V equipment. If you're arriving late, please enter the coffee shop quietly and order some snacks to support this family business. Then find any available seat and enjoy the show!
|
||||
|
||||
If you're lost, email me at `abner@handmadecities.com` as I'll be paying attention to it every few minutes until we begin at 2:30PM.
|
||||
|
||||
#### Can I demo something?
|
||||
|
||||
If we have extra time after the proper presentations, attendees can demo their own Handmade projects: it can be a side-project, but it can also be commercial software you work on, as long as you get into interesting technical details (we don't want this to be an ad.)
|
||||
|
||||
#### What do we do after the meetup?
|
||||
|
||||
The plan is to go until 5PM or so. For those with time and motivation left, we'll walk to a nearby pizza place followed by drinks at the pub. All of these small shops know about Handmade Cities and appreciate our business. It's fun to play it by ear, so we'll decide where to eat and drink in person based on attendance size.
|
||||
|
||||
#### Can I still RSVP?
|
||||
|
||||
If you're subscribed to the Seattle [mailing list](/meetups/seattle) you should receive an RSVP link on **Wednesday December 3rd, 2025**. Ticket holders don't need to RSVP.
|
||||
|
||||
Please reach out to me if you never received that invite and I'll send you a copy.
|
||||
|
||||
Your indie organizer,<br>Abner Coimbre
|
||||
|
||||
---
|
||||
|
||||
#### Additional FAQ
|
||||
|
||||
1. **I'm a 2024 fundraiser supporter. Can I join?**
|
||||
|
||||
If you got lifetime perks from the 2024 fundraiser, you can join all future Handmade events including this one. Just state your name when I see you! It also helps to let me know ahead of time you wish to RSVP, since I can't always guarantee a seat.
|
||||
|
||||
2. **I'm a monthly donor. Can I join?**
|
||||
|
||||
If you're a monthly [donor](/donate) to Handmade Cities, you can join all future Handmade events including this one. Just state your name when I see you! It also helps to let me know ahead of time you wish to RSVP, since I can't always guarantee a seat.
|
||||
|
||||
3. **I'm a regular Seattle meetup member**
|
||||
|
||||
If you've attended our monthly meetups or weekly co-working sessions somewhat regularly, you should be fine for this event! First come, first served in terms of available seats, with priority given to ticket holders.
|
||||
|
||||
4. **Can I bring my laptop for my demo?**
|
||||
|
||||
Of course; the coffee shop will have a projector screen with HDMI cable. I should also have an adapter for Macbooks.
|
||||
|
||||
Please bring your laptop fully charged. If your laptop isn't HDMI-compatible and it isn't a Macbook, you should carry any special cables or adapters that you need.
|
||||
@@ -23,10 +23,13 @@ So much for trust. Or safety.
|
||||
Finally, note that I'm **encouraging people to touch grass.** I’ve [sketched](https://abner.page/post/exit-the-feed/) a path for top engineers to live without addictive social media. Revolt as an invite‑only, verified‑human space is a core piece of that plan.
|
||||
#### Did you just say invite-only? How do I join Revolt?
|
||||
Invitations will come only from official [meetup hosts](/meetups) or directly from me. If we’ve met at a conference, meetup, or co‑working session, message us and we’ll likely invite you. I’m the one who grants the **Verified Human** badge and I’ll do so if a host can vouch for you. This is an imperfect system and it still requires moderation, of course, but it places a premium on trust over open discoverability. Which is exactly the point.
|
||||
|
||||
UPDATE 1/12/2026: Users [can now request](/chat) invite codes directly.
|
||||
|
||||
#### Addressing common objections
|
||||
There are three typical arguments against using Revolt that I should tackle here.
|
||||
|
||||
1. *"Revolt will be a walled garden like Discord and therefore not crawlable."* I believe that private, ephemeral conversations should remain private. We can curate and surface the best technical discussions into a public wiki so important knowledge isn’t lost.
|
||||
1. *"Revolt will be a walled garden like Discord and therefore not crawlable."* I believe that private, ephemeral conversations should remain private. We can curate and surface the best technical discussions into a [public wiki](/guide) so important knowledge isn’t lost.
|
||||
|
||||
2. *“Abner is a dictator."* Guilty as charged. I’m running this as a BDFL, with a decade of organizing Handmade since my early college days. There’s an escape hatch though, because every meetup host can dump their mailing list locally. I don't lock people in. This cuts both ways too: hosts who violate [community values](/about) -- e.g. running meetups sponsored by Microsoft -- are cut off from the water tap. They won't be able to send newsletters nor access new subscribers to the mailing list.
|
||||
|
||||
|
||||
55
content/english/news/revolt-for-fast-updates.md
Normal file
@@ -0,0 +1,55 @@
|
||||
---
|
||||
title: "Revolt for Fast Updates"
|
||||
meta_title: ""
|
||||
description: "Abner Coimbre is our Seattle meetup host. Read their latest announcement"
|
||||
date: 2026-01-16T22:32:38Z
|
||||
image: "/images/revolt_community.png"
|
||||
categories: ["Meetups"]
|
||||
author: "Abner Coimbre"
|
||||
tags: ["meetups", "seattle"]
|
||||
draft: false
|
||||
---
|
||||
|
||||
> [Abner Coimbre](/about) is our [Seattle](/meetups/seattle) meetup host. You may reach the author at abner@handmadecities.com
|
||||
|
||||
**TL;DR:** Request [invite codes](https://handmadecities.com/chat) for Revolt today! Check out our [brand new](https://guide.handmadecities.com) wiki. Finally, the Seattle co-working session is cancelled as we potentially switch venues.
|
||||
|
||||
---
|
||||
|
||||
Seattle area folks,
|
||||
|
||||
Happy 2026!
|
||||
|
||||
Our Discord server is no more: as I [promised](/news/summer-update-2025/) last summer (see **Discord Off-Ramp** section) and then [very explicitly](/news/revolt-against-discord/) in the fall. Indeed I'm going underground to promote offline meetups - may the power of word-of-mouth bless the community.
|
||||
|
||||
My own account is scheduled for deletion.
|
||||
|
||||
Discord said it will take up to 14 days, so I don't know if that means my account appears active? Anyway, if you're sending me DMs there I'm not seeing them.
|
||||
|
||||
## Keeping up with Handmade Cities
|
||||
|
||||
There's three official ways to keep tabs on things. As we go down this list the frequency of updates goes way up:
|
||||
|
||||
1. [Public Newsletter](/news): this is the slowest one. You get a [Press Release](/categories/press-release) newsletter once in a blue moon, because it's intended for a mass audience. I take into account the events occuring at other Handmade meetups around the world.
|
||||
|
||||
2. [Seattle Mailing List](/meetups/seattle): you're already part of this! You get notifications about monthly meetups, co-working sessions or just critical announcements like our Discord shutting down.
|
||||
|
||||
3. [Chat Server](https://chat.handmadecities.com): Revolt is the new real-time chat. I send messages there every other day: some of them bubble up to the mailing list and, eventually, a public newsletter.
|
||||
|
||||
For Revolt we have an [application process](/chat) for you to get an invite code.
|
||||
|
||||
## Quick Guide
|
||||
|
||||
We're excited to announce the [HMC Guide](https://guide.handmadecities.com): a proper wiki to document how our community is structured:
|
||||
|
||||
<img src="https://guide.handmadecities.com/images/hmc_docs_screenshot_hu5108169931557510214.webp" width="840" height="400">
|
||||
|
||||
In the new spirit of [handing off](/memos/HMC-Memo-001-Wiki-Ownership.pdf) ownership to trusted community members, our friend [Zac Nowicki](https://guide.handmadecities.com/docs/support/contact/#editor) is editor of Handmade Cities. If you spot inaccuracies or valuable missing info shoot him a message at `zac@handmadecities.com`.
|
||||
|
||||
## Seattle Co-Work on Pause
|
||||
|
||||
I am scoping out new venues for co-working in Seattle today. There's a strong chance we're going to use the ol' Third Place Books for the monthly meetup after-party (instead of co-working.)
|
||||
|
||||
Our best candidate for a new co-working venue is **Armistice Coffee**, which is in the Roosevelt neighborhood as always. Anyway, until the dust settles I am canceling the co-working session today. Forgive me and stay tuned on this front.
|
||||
|
||||
Your independent organizer,<br>Abner Coimbre
|
||||
15
content/english/news/second-kirkland-cowork-2026.md
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "Friday Co-Working in Kirkland"
|
||||
meta_title: ""
|
||||
description: "Taylor Robbins is our Kirkland co-working host. Read their latest announcement"
|
||||
date: 2026-01-22T12:00:00Z
|
||||
image: "/images/meetups/kirkland.jpg"
|
||||
categories: ["Meetups"]
|
||||
author: "Taylor Robbins"
|
||||
tags: ["cowork", "kirkland"]
|
||||
draft: false
|
||||
---
|
||||
|
||||
> Taylor Robbins is our [Kirkland](/meetups/seattle) co-working host. You may reach the author at taylor@handmadecities.com
|
||||
|
||||
<p>Dear Handmade folks,</p> <p>Tomorrow is another co-working session in Kirkland! I’ll be starting a new job in February so the meetup hosting may change hands or change times, but for now it’s business as usual (and likely Feb 6th will be normal as well). Come hang out, anyone is welcome, even if you need to work on your day-job tasks while you’re there, but we always love hearing what people are working on if you have something to share.</p> <p><strong>When:</strong> 2:00pm-5:00pm (Friday January 23rd)</p> <p><strong>Where:</strong> Thruline Coffee - 136 Park Ln, Kirkland, WA 98033</p> <p><a href="https://maps.app.goo.gl/CmeFmdPdLZkycXHw6">Google Maps Link</a></p> <p><img src="https://www.robbitay.com/handmade/thruline_coffee_512.png" alt="Thruline Coffee Image" /></p> <p>I still recommend charging your laptop beforehand, but if you need we often get the table in the back with an outlet and I’ll bring a extension cord + splitter. If you don’t see us when you first walk in make sure you check behind the counter on the right, the table we sit at is not visible from the door.</p> <p>If you have any questions don’t hesitate to reach out! (reply to this email, or DM/ping on Discord <code>@ProfessorSil</code>)</p>
|
||||
3
content/english/pages/meetupinvite2000.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# Meetup Invite Test
|
||||
|
||||
This is a placeholder for tests performed with [MeetupInvite2000](https://git.handmadecities.com/meetups/meetupinvite2000/releases). When you use the `blast` command, your email will be published to [News](/news) instead.
|
||||
4
content/english/revolt.md
Normal file
@@ -0,0 +1,4 @@
|
||||
---
|
||||
title: "Private Chat"
|
||||
layout: "revolt"
|
||||
---
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: "Handmade Seattle Lite"
|
||||
title: "Handmade Seattle 2025"
|
||||
subtitle: "The West Coast's mini conference for systems programmers."
|
||||
image: "/images/hms/seattle-dark-mode.svg"
|
||||
layout: "event"
|
||||
@@ -20,15 +20,15 @@ event_features:
|
||||
- "Networking opportunities"
|
||||
|
||||
# Coming Soon Section
|
||||
coming_soon_text: "Community Submissions"
|
||||
coming_soon_description: "Submit a presentation below! Final deadline is Monday, December 1st."
|
||||
coming_soon_text: "Schedule is Ready"
|
||||
coming_soon_description: "Scroll below to learn of presentations, venue, and how it all works!"
|
||||
|
||||
# Initial Speakers
|
||||
initial_speakers:
|
||||
- name: "Taylor Robbins"
|
||||
topic: "UI Tools Engineer"
|
||||
affiliation: "Ex-Bungie (Makers of Destiny 2)"
|
||||
image: "/images/people/robbins.jpg"
|
||||
- name: "Abner Coimbre"
|
||||
topic: "The 2026 Roadmap"
|
||||
affiliation: "Handmade Cities"
|
||||
image: "/images/people/abner.jpg"
|
||||
- name: "Benjamin Thompson"
|
||||
topic: "Math PhD turned Puzzle Designer"
|
||||
affiliation: "Cornell University"
|
||||
@@ -38,7 +38,7 @@ initial_speakers:
|
||||
affiliation: "Slow Rush Studios"
|
||||
image: "/images/companies/slow-rush-logo.webp"
|
||||
- name: "This is You"
|
||||
topic: "Audience members can demo projects"
|
||||
topic: "Audience members demo projects"
|
||||
|
||||
# Trade Show Information
|
||||
trade_show:
|
||||
@@ -70,6 +70,29 @@ previous_events:
|
||||
show_description: true
|
||||
---
|
||||
|
||||
Handmade Seattle is our flagship event for systems programmers worldwide: going strong since 2019.
|
||||
**Saturday Schedule (Seattle Timezone)**
|
||||
|
||||
We look forward to inspiring you with the best software projects our community has to offer. And who knows: yours might be among them!
|
||||
- [2:00 - 2:30PM] *Snack and drinks*: order some food to support this family shop!
|
||||
- [2:30 - 3:00PM] *The 2026 Roadmap*: Handmade Cities is [no longer](https://handmadecities.com/news/winding-down/) running conferences. Abner lays out his plans for a future of decentralized, offline meetups.
|
||||
- [3:00 - 3:30PM] *The Multiplayer Sandpit by Caspar: How I got sucked into making a networked falling sand game.* [Caspar](https://www.slowrush.dev/)'s demo video is "A dramatic re-enactment of how briefly revisiting a childhood dream escalated into a full time obsession for 2 years (and counting). Featuring a custom engine written in Rust using Macroquad as a platform abstraction, with cross-platform and in-browser multiplayer."
|
||||
- [3:30 - 4:00PM] *Untitled Cube Game: Explore the consequences of a very intuitive, but very deep, rule.* Demo video by [Benjamin Thompson](https://bgthompson.codeberg.page/). "Have fond memories of Bloxorz? Enjoyed what you played of Stephen's Sausage Roll? Interested in games with combinatorial explosions? We present a cube-rolling puzzle game that explores a single intuitive rule with a lot of consequences. Inspired by mathematics, and programmed from scratch in Zig."
|
||||
- [4:00 - 5:00PM] *Audience Projects:* At every Seattle event we let members of the audience take to the stage and show off their creations, or discuss a programming topic near-and-dear to their heart. This could be YOU, so make sure to email `abner@handmadecities.com` and request an RSVP link.
|
||||
- [5:00 - 8:00PM] *Seattle After Dark:* This is optional! Our tradition is to go out for pizza followed by drinks at the pub. During dinner we tend to get spicier with our takes on the software industry, and by the time we hit the pub all bets are off. (We remain civil all throughout.)
|
||||
|
||||
**About the Venue**
|
||||
|
||||
The new venue is One Bite Cafe in Seattle, a family-owned shop that loves Handmade Cities. If you're downtown you should take the Seattle light rail up to Roosevelt Station - our venue is right next to it.
|
||||
|
||||
One Bite is on the smaller side, so if the RSVP list shows we're too many programmers, then we relocate to Third Place Books (Ravenna, Seattle) which is within walking distance. Third Place knows us too because we host co-working sessions there.
|
||||
|
||||
P.S. Subscribe to the Seattle [mailing list](https://handmadecities.com/meetups/seattle) in case the location changes. If you don't get an email and/or this website doesn't change by Friday night, you can feel certain we're sticking to One Bite Cafe. You can always reach out at `abner@handmadecities.com` as Abner will have notifications on full blast.
|
||||
|
||||
**In-Person vs Remote**
|
||||
|
||||
Abner's 2026 roadmap and audience projects will occur in person. Caspar and Benjamin are Australian independent gamedevs, and due to the difficulties of traveling to the United States, cannot join us in person. We will play their demo videos followed by Q&A sessions: they are beaming in remotely.
|
||||
|
||||
**Existing Ticket Holders**
|
||||
|
||||
Ticket holders *need not* RSVP anywhere. Simply come to the shop and show your ticket, found under the **General Admission** email. You'll receive priority seating. Those who would prefer a refund due to our downsizing can email me as discussed in [Winding Down](https://handmadecities.com/news/winding-down/).
|
||||
|
||||
The same holds true for online ticket holders: reach out to us if you'd like to request a refund. Note that we're no longer live-streaming Handmade Seattle, although we will make efforts to record.
|
||||
|
||||
12
content/english/transactional/invite-fail-credentials.md
Normal file
@@ -0,0 +1,12 @@
|
||||
+++
|
||||
url = "/invite-fail-credentials"
|
||||
title="Error"
|
||||
subtitle="Invite Failed"
|
||||
main_image=""
|
||||
+++
|
||||
|
||||
#### Unknown Credentials
|
||||
|
||||
Revolt email or password was not recognized. Please [try again](/invite) or contact our support staff.
|
||||
|
||||
⚠️ You need [your own verified account](/chat) before having the power to invite others.
|
||||
10
content/english/transactional/invite-fail-unverified.md
Normal file
@@ -0,0 +1,10 @@
|
||||
+++
|
||||
url = "/invite-fail-unverified"
|
||||
title="Error"
|
||||
subtitle="Invite Failed"
|
||||
main_image=""
|
||||
+++
|
||||
|
||||
#### Unverified User
|
||||
|
||||
Only [Verified Humans](https://guide.handmadecities.com/docs/chat/#verified-human-badge) are allowed to send chat invites. Once you're granted the badge you may [try again](/invite)!
|
||||
13
content/english/transactional/invite-fail.md
Normal file
@@ -0,0 +1,13 @@
|
||||
+++
|
||||
url = "/invite-fail"
|
||||
title="Error"
|
||||
subtitle="Invite Failed"
|
||||
main_image=""
|
||||
+++
|
||||
|
||||
#### UH OH!
|
||||
|
||||
It seems we couldn't generate the chat invite. A few reasons why:
|
||||
- Incorrect [Revolt](https://chat.handmadecities.com) username or password
|
||||
- You are not a [Verified Human](https://guide.handmadecities.com/docs/chat/#verified-human-badge) yet
|
||||
- A server error on our part. Contact our support staff immediately
|
||||
12
content/english/transactional/invite-success.md
Normal file
@@ -0,0 +1,12 @@
|
||||
+++
|
||||
url = "/invite-success"
|
||||
title="Complete"
|
||||
subtitle="Invite Successful"
|
||||
main_image=""
|
||||
+++
|
||||
|
||||
#### Congrats!
|
||||
|
||||
If you've met in meatspace they'll get a [Verified Human](https://guide.handmadecities.com/docs/chat/#verified-human-badge) badge, which grants *them* the power of invites. Ready to [send another](/invite)?
|
||||
|
||||
⚠️ We use an invite tree [inspired](https://lobste.rs/about#invitations) by the Lobsters community. The **TL;DR** is YOU are responsible for the users you invite, plus any users they've invited (and so on.)
|
||||
14
content/english/transactional/revolt-success.md
Normal file
@@ -0,0 +1,14 @@
|
||||
+++
|
||||
url = "/revolt-success"
|
||||
title="Complete"
|
||||
subtitle="Submission Successful"
|
||||
main_image=""
|
||||
+++
|
||||
|
||||
#### Congrats!
|
||||
|
||||
If you were redirected here, you have submitted an application to join [Revolt](https://revolt.handmadecities.com).
|
||||
**Our staff will respond within three business days.**
|
||||
|
||||
Thank you for supporting indie communities.
|
||||
We’re here to promote software quality, one meetup at a time.
|
||||
@@ -99,7 +99,7 @@
|
||||
<!-- Event Description -->
|
||||
{{ if .Params.show_description }}
|
||||
<div class="bg-black bg-opacity-50 backdrop-blur-sm p-6 rounded-xl shadow-lg max-w-3xl mx-auto mb-12">
|
||||
<h3 class="text-xl font-semibold text-white mb-4">About this Handmade Conference</h3>
|
||||
<h3 class="text-xl font-semibold text-white mb-4">About this Handmade Event</h3>
|
||||
<div class="text-gray-200 text-left prose prose-invert max-w-none">
|
||||
{{ .Content }}
|
||||
</div>
|
||||
|
||||
53
layouts/_default/invite.html
Normal file
@@ -0,0 +1,53 @@
|
||||
{{ define "main" }}
|
||||
<section class="section">
|
||||
<div class="container max-w-xl">
|
||||
<h1 class="mb-8 text-3xl font-bold">{{ .Title }}</h1>
|
||||
<img src="/images/hmc/revolt-preview.png">
|
||||
<p><strong>Give them full access to <a href="https://chat.handmadecities.com">chat.handmadecities.com</a></strong></p>
|
||||
<br>
|
||||
|
||||
<form action="https://invite.handmadecities.com" method="POST" class="space-y-6">
|
||||
|
||||
<div>
|
||||
<label for="invite-email" class="mb-2 block font-semibold">Email to Send Invite to<span class="text-red-500">*</span></label>
|
||||
<input type="email" id="invite-email" name="invite_email" required
|
||||
class="w-full rounded border border-gray-300 px-4 py-2 focus:border-blue-500 focus:outline-none" />
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label for="revolt-email" class="mb-2 block font-semibold">Your Revolt Email <span class="text-red-500">*</span></label>
|
||||
<input type="email" id="revolt-email" name="revolt_email" required
|
||||
class="w-full rounded border border-gray-300 px-4 py-2 focus:border-blue-500 focus:outline-none" />
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label for="revolt-password" class="mb-2 block font-semibold">Your Revolt Password <span class="text-red-500">*</span></label>
|
||||
<input type="password" id="revolt-password" name="revolt_password" required
|
||||
class="w-full rounded border border-gray-300 px-4 py-2 focus:border-blue-500 focus:outline-none" />
|
||||
</div>
|
||||
|
||||
<div class="flex items-center gap-2">
|
||||
<input type="checkbox" id="meatspace" name="met_in_meatspace" value="yes"
|
||||
class="h-4 w-4" />
|
||||
<label for="meatspace">Have you met this person in meatspace?</label>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label for="notes" class="mb-2 block font-semibold">Additional Notes (Optional)</label>
|
||||
<textarea id="notes" name="notes" rows="4"
|
||||
placeholder='"I am inviting my college roommate who is interested in Handmade software!"'
|
||||
class="w-full rounded border border-gray-300 px-4 py-2 focus:border-blue-500 focus:outline-none"></textarea>
|
||||
</div>
|
||||
|
||||
<button type="submit"
|
||||
class="rounded bg-blue-600 px-6 py-3 font-semibold text-white hover:bg-blue-700">
|
||||
Send Invite Code
|
||||
</button>
|
||||
|
||||
<p class="text-sm text-gray-500">
|
||||
You're vouching for the human identity of this new user. Bots or alternate personas are <strong>prohibited.</strong>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
</section>
|
||||
{{ end }}
|
||||
33
layouts/_default/revolt.html
Normal file
@@ -0,0 +1,33 @@
|
||||
{{ define "main" }}
|
||||
<section class="revolt-form-section">
|
||||
<div class="container">
|
||||
<h1>{{ .Title }}</h1>
|
||||
<img src="/images/hmc/revolt-promotion.png" style="border-radius: 10px;">
|
||||
<p>We now run our server at <strong><a href="https://chat.handmadecities.com">chat.handmadecities.com</a></strong>. Real humans only!</p>
|
||||
|
||||
<form action="https://register.handmadecities.com" method="POST" class="revolt-form">
|
||||
<div class="form-group">
|
||||
<label for="name">Name <span class="required">*</span></label>
|
||||
<input type="text" id="name" name="name" required>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="email">Email <span class="required">*</span></label>
|
||||
<input type="email" id="email" name="email" required>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="website">Personal Website (Optional)</label>
|
||||
<input type="url" id="website" name="website" placeholder="https://abner.page">
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="reason">Why are you interested in joining?</label>
|
||||
<textarea id="reason" name="reason" rows="4"></textarea>
|
||||
</div>
|
||||
|
||||
<button type="submit">Get Invite Code</button>
|
||||
</form>
|
||||
</div>
|
||||
</section>
|
||||
{{ end }}
|
||||
@@ -37,6 +37,7 @@
|
||||
<option value="Barcelona">Barcelona</option>
|
||||
<option value="Berlin">Berlin</option>
|
||||
<option value="Brussels">Brussels</option>
|
||||
<option value="Budapest">Bucharest</option>
|
||||
<option value="Budapest">Budapest</option>
|
||||
<option value="Chicago">Chicago</option>
|
||||
<option value="Copenhagen">Copenhagen</option>
|
||||
@@ -65,6 +66,7 @@
|
||||
<option value="Rome">Rome</option>
|
||||
<option value="San Antonio">San Antonio</option>
|
||||
<option value="San Diego">San Diego</option>
|
||||
<option value="San Juan">San Juan</option>
|
||||
<option value="Toronto">Toronto</option>
|
||||
<option value="Valencia">Valencia</option>
|
||||
<option value="Vienna">Vienna</option>
|
||||
@@ -94,5 +96,9 @@
|
||||
</button>
|
||||
</form>
|
||||
<br>
|
||||
<hr>
|
||||
<br>
|
||||
<p>Not on the wishlist? Reach out at support@handmadecities.com</p>
|
||||
<br>
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
<div class="flex flex-col gap-5 lg:w-1/3">
|
||||
<div class="dark:text-white content-container content">
|
||||
{{ .Content }}
|
||||
<a class="btn btn-outline-primary" href="/discord">Discord</a>
|
||||
<a class="btn btn-outline-primary" href="/discord">Revolt</a>
|
||||
</div>
|
||||
|
||||
{{ $hasGoodHost := false }}
|
||||
|
||||
BIN
static/images/discord_scheduled_deletion.jpg
Normal file
|
After Width: | Height: | Size: 192 KiB |
BIN
static/images/meetups/armistice.webp
Normal file
|
After Width: | Height: | Size: 552 KiB |
BIN
static/images/meetups/boston.jpg
Normal file
|
After Width: | Height: | Size: 405 KiB |
BIN
static/images/meetups/dc.jpg
Normal file
|
After Width: | Height: | Size: 339 KiB |
BIN
static/images/meetups/denmark.jpg
Normal file
|
After Width: | Height: | Size: 303 KiB |
BIN
static/images/meetups/dune_linux.jpg
Normal file
|
After Width: | Height: | Size: 222 KiB |
BIN
static/images/meetups/fancy_coffee.jpg
Normal file
|
After Width: | Height: | Size: 178 KiB |
BIN
static/images/meetups/france.jpg
Normal file
|
After Width: | Height: | Size: 315 KiB |
BIN
static/images/meetups/kirkland.jpg
Normal file
|
After Width: | Height: | Size: 149 KiB |
BIN
static/images/meetups/london.jpg
Normal file
|
After Width: | Height: | Size: 251 KiB |
BIN
static/images/meetups/montreal.jpg
Normal file
|
After Width: | Height: | Size: 562 KiB |
BIN
static/images/meetups/obc_snacks.jpeg
Normal file
|
After Width: | Height: | Size: 313 KiB |
BIN
static/images/meetups/orca.png
Normal file
|
After Width: | Height: | Size: 146 KiB |
BIN
static/images/meetups/phyllotaxis.png
Normal file
|
After Width: | Height: | Size: 304 KiB |
BIN
static/images/meetups/revolt.jpg
Normal file
|
After Width: | Height: | Size: 92 KiB |
BIN
static/images/meetups/seattle.jpg
Normal file
|
After Width: | Height: | Size: 288 KiB |
BIN
static/images/meetups/snowed_in.jpg
Normal file
|
After Width: | Height: | Size: 388 KiB |
BIN
static/images/meetups/star_wars_zero_company.jpeg
Normal file
|
After Width: | Height: | Size: 222 KiB |
BIN
static/images/meetups/tokyo.jpg
Normal file
|
After Width: | Height: | Size: 388 KiB |
BIN
static/images/meetups/vancouver.jpg
Normal file
|
After Width: | Height: | Size: 218 KiB |
BIN
static/images/revolt_community.png
Normal file
|
After Width: | Height: | Size: 69 KiB |
BIN
static/memos/HMC-Memo-001-Wiki-Ownership.pdf
Normal file
BIN
static/memos/HMC-Memo-002-UXUI.pdf
Normal file
BIN
static/memos/HMC-Memo-003-Server-Admin.pdf
Normal file
BIN
static/memos/HMC-Memo-004-Meetup-Hosts.pdf
Normal file
@@ -65,6 +65,56 @@
|
||||
{{ $stylesLazy = $stylesLazy | resources.ExecuteAsTemplate "css/style-lazy.css" . }}
|
||||
{{ end }}
|
||||
|
||||
// Revolt chat server
|
||||
.revolt-form-section {
|
||||
max-width: 600px;
|
||||
margin: 2rem auto;
|
||||
padding: 0 1rem;
|
||||
}
|
||||
|
||||
.revolt-form .form-group {
|
||||
margin-bottom: 1.25rem;
|
||||
}
|
||||
|
||||
.revolt-form label {
|
||||
display: block;
|
||||
margin-bottom: 0.5rem;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.revolt-form .required {
|
||||
color: #e74c3c;
|
||||
}
|
||||
|
||||
.revolt-form input,
|
||||
.revolt-form textarea {
|
||||
width: 100%;
|
||||
padding: 0.75rem;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 4px;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
.revolt-form input:focus,
|
||||
.revolt-form textarea:focus {
|
||||
outline: none;
|
||||
border-color: #3498db;
|
||||
}
|
||||
|
||||
.revolt-form button {
|
||||
background: #3498db;
|
||||
color: white;
|
||||
padding: 0.75rem 1.5rem;
|
||||
border: none;
|
||||
border-radius: 4px;
|
||||
font-size: 1rem;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.revolt-form button:hover {
|
||||
background: #2980b9;
|
||||
}
|
||||
|
||||
{{/* styles */}}
|
||||
<link
|
||||
href="{{ $styles.RelPermalink }}"
|
||||
|
||||