Compare commits

...

233 Commits

Author SHA1 Message Date
Abner Coimbre
4521d678cd Polish HMC Memo 005 2026-03-29 14:58:22 -07:00
Abner Coimbre
2f08c8b427 HMC Memo 005: Invite Tree 2026-03-29 11:47:13 -07:00
Abner Coimbre
a2b113a07b Oops, forgot chat.md 2026-03-28 11:58:55 -07:00
Abner Coimbre
3964b15314 Hub for Community Chat 2026-03-28 11:53:31 -07:00
Abner Coimbre
03c87dfc98 Polish x2 Zac's bio 2026-03-27 18:43:22 -07:00
Abner Coimbre
587b249d2b Reorder Chat and Newsletter logos 2026-03-26 22:14:18 -07:00
Abner Coimbre
aa41556549 Handmade Cities are the largest... 2026-03-26 16:11:43 -07:00
Abner Coimbre
5a0ee86044 Polish x3 Mariano's bio 2026-03-26 15:23:07 -07:00
Abner Coimbre
29e222c2b7 Polish x2 Mariano's bio 2026-03-26 15:07:45 -07:00
Abner Coimbre
af99439685 Polish Zac's bio 2026-03-26 15:01:36 -07:00
Abner Coimbre
224a5542b9 Polish Mariano's bio 2026-03-26 14:57:57 -07:00
Abner Coimbre
da8e025f23 Add Zac and Mariano to About page 2026-03-26 14:55:41 -07:00
Abner Coimbre
fa8c4bc061 stay for the friends! 2026-03-26 14:06:21 -07:00
Abner Coimbre
3c1f0ed4f6 Remove 'chat' from Explore 2026-03-26 13:44:26 -07:00
Abner Coimbre
f0d11515e8 Remove HMS / HMB from landing page 2026-03-26 13:05:51 -07:00
Abner Coimbre
f8e8077425 Disable February banner 2026-03-21 10:59:12 -07:00
Abner Coimbre
522e1ead8d Snowed In 2026-03-13 09:04:51 -07:00
Abner Coimbre
e07b9e3935 Bots are prohibited 2026-03-07 10:37:24 -08:00
Abner Coimbre
4a2a71594b Update 'No Alter Egos' again 2026-03-06 23:21:33 -08:00
Abner Coimbre
4144377426 Update 'No Alter Egos' 2026-03-06 23:16:43 -08:00
Abner Coimbre
cf837bf8ff No Alter Egos 2026-03-06 23:01:22 -08:00
Abner Coimbre
bbbf2cbfa0 Make invite failures more granular 2026-03-06 16:29:07 -08:00
Abner Coimbre
5408608c81 Add Revolt cover image to invite system 2026-03-06 15:34:27 -08:00
Abner Coimbre
1d416e9940 Oops, forgot to add base template 2026-03-06 13:35:45 -08:00
Abner Coimbre
3badfa73be Add new invite system 2026-03-06 13:33:55 -08:00
Abner Coimbre
449ca7c6ae Add Denmark cover image 2026-03-06 09:01:14 -08:00
Abner Coimbre
52b3a7c0d7 Add Fancy Coffee cover 2026-02-27 09:59:37 -08:00
Abner Coimbre
5382f53856 Add Armistice cover image 2026-02-26 20:20:54 -08:00
Abner Coimbre
8fbe126b5b Add Orca image 2026-02-25 16:10:13 -08:00
Abner Coimbre
5fdbc0489c Update HMC Memo 004 yet again 2026-02-25 14:40:31 -08:00
Abner Coimbre
96c03335c2 Update HMC Memo 004 again 2026-02-25 14:39:03 -08:00
Abner Coimbre
6004baf166 Update HMC Memo 004 2026-02-25 14:34:39 -08:00
Abner Coimbre
a108d1ad7d Update HMC Memo 003 yet again 2026-02-25 14:28:46 -08:00
Abner Coimbre
93e36fba2d Update HMC Memo 003 again 2026-02-25 14:24:50 -08:00
Abner Coimbre
1042880357 Update HMC Memo 003 2026-02-25 14:19:31 -08:00
Abner Coimbre
693aafc7b7 Enable February Memos 2026-02-25 14:10:23 -08:00
Abner Coimbre
509574a540 Add HMC Memo 004 2026-02-25 14:04:40 -08:00
Abner Coimbre
b1ab24491b Re-add Montreal cover image 2026-02-25 12:11:04 -08:00
Abner Coimbre
a7e2b2cf18 Remove Montreal cover 2026-02-25 12:04:18 -08:00
Abner Coimbre
7e012eb3d1 Add Montreal cover image 2026-02-25 12:00:54 -08:00
Abner Coimbre
b97a319cc1 Add HMC Memo 003 2026-02-25 11:50:49 -08:00
Abner Coimbre
7b6b816597 Memo 001: Update blurb on Zac 2026-02-25 11:50:26 -08:00
Abner Coimbre
4649a813db Update Boston page to mention Margret 2026-02-25 11:50:07 -08:00
jmug
8326c412aa [chore] s/Discord/Revolt/ for meetup pages. 2026-02-23 21:18:27 -08:00
Abner Coimbre
8bc0ad22c8 Add Revolt cover image 2026-02-07 00:01:48 -08:00
Abner Coimbre
beccd253bf Disable 'January Memos' banner 2026-02-02 18:45:24 -08:00
Abner Coimbre
843a8c01b9 Tokyo cover image 2026-01-31 10:30:21 -08:00
Abner Coimbre
ef0cce57d0 Rework footer menu (2026) 2026-01-29 00:03:12 -08:00
Abner Coimbre
10c7b20a45 Rework navigation menu (2026) 2026-01-29 00:01:05 -08:00
Abner Coimbre
973720b07d Dune and Linux Image 2026-01-28 16:06:23 -08:00
Abner Coimbre
0b9db9ded6 Star Wars Zero Company Image 2026-01-28 16:06:15 -08:00
Abner Coimbre
264a79a10d Phyllotaxis Image 2026-01-28 16:06:06 -08:00
Abner Coimbre
dcb3a87896 One Bite Snacks Image 2026-01-28 15:40:26 -08:00
Abner Coimbre
a7a7b01104 Update MeetupInvite2000 placeholder 2026-01-27 22:14:28 -08:00
Abner Coimbre
a98171e07d s/Meeting/Conference 2026-01-27 11:43:23 -08:00
Abner Coimbre
b77d4cff28 Polish x2 Revolt for Fast Updates 2026-01-27 11:40:35 -08:00
Abner Coimbre
c435d88f29 Add Seattle meetup cover image 2026-01-27 11:30:27 -08:00
Abner Coimbre
150c9a66d7 s/Meetup/Boston Meetup 2026-01-27 11:24:03 -08:00
Abner Coimbre
57f5d7e4e5 Polish Revolt For Fast Updates 2026-01-26 16:22:45 -08:00
Abner Coimbre
7fdbed1121 Populate January newsletters 2026-01-26 16:18:45 -08:00
Abner Coimbre
988afedbae s/payments/purchases 2026-01-26 12:24:23 -08:00
Abner Coimbre
d81e71b39a Replace Stripe/Paypal with 'payment processors' 2026-01-26 12:05:51 -08:00
Abner Coimbre
ef96a2dfa1 Update About page (values) 2026-01-26 12:03:01 -08:00
Abner Coimbre
1571354aa9 Polish 'Farewell to Distant Worlds' 2026-01-25 18:03:27 -08:00
Abner Coimbre
379d686c82 Change Allen's credits in 'Farewell to Distant Worlds' 2026-01-25 18:01:40 -08:00
Abner Coimbre
72238d7809 Publish MeetupInvite2000 page 2026-01-25 14:25:33 -08:00
Abner Coimbre
b77c38c8aa Add Montreal meetup page 2026-01-22 11:55:37 -08:00
Abner Coimbre
4ec9de81bd Make changes in response to Simon Abbot's email 2026-01-20 10:50:33 -08:00
Abner Coimbre
d9a619d470 Add Denmark meetup page 2026-01-19 12:12:48 -08:00
Abner Coimbre
ea611a5575 Crop 'Discored Scheduled Deletion' image 2026-01-16 13:55:19 -08:00
Abner Coimbre
7fc4914808 Add 'Discord Scheduled for Deletion' screenshot 2026-01-16 13:45:14 -08:00
Abner Coimbre
76bc17dd7f Revolt Against Discord: Link the Guide 2026-01-13 11:49:29 -08:00
Abner Coimbre
bdfdced801 Revolt Against Discord: Announce open application process 2026-01-12 13:10:25 -08:00
Abner Coimbre
bfb56ceaa3 Polish About Page (Jan 2026) 2026-01-12 11:07:39 -08:00
Abner Coimbre
ef352dd0d8 Add Quick Guide to About nav menu 2026-01-12 10:41:17 -08:00
Abner Coimbre
ff3b6b8166 Copenhagen Meetups 2026-01-11 21:51:44 -08:00
Abner Coimbre
f11814dbdc Private Chat 2026-01-11 19:56:50 -08:00
Abner Coimbre
754932a0b7 Real-Time Chat 2026-01-11 19:42:49 -08:00
Abner Coimbre
6d5b5af9e4 Support /chat 2026-01-11 19:19:09 -08:00
Abner Coimbre
c869ec0d32 Fix broken link under Job Fair list 2026-01-10 20:36:33 -08:00
Abner Coimbre
07694c123c Revolt Success 2026-01-09 18:06:07 -08:00
Abner Coimbre
227392e386 Change Quickstart nav button to Meetups for now 2026-01-09 13:51:59 -08:00
Abner Coimbre
52d4b54bb6 Update banner to link to January Memos 2026-01-09 13:46:33 -08:00
Abner Coimbre
dab9f8b452 Fix broken docs link 2026-01-09 13:45:17 -08:00
Abner Coimbre
33025fb40c Handmade Cities 2026 2026-01-09 13:37:59 -08:00
Abner Coimbre
205b8bab2f Update footer year 2026-01-04 16:03:25 -08:00
Abner Coimbre
e5d705c1d1 Add Bucharest and San Juan to meetup wishlist 2025-12-04 14:19:47 -08:00
Abner Coimbre
67ca755a26 Polish x10 HMS Lite: Full Schedule 2025-12-03 15:56:31 -08:00
Abner Coimbre
5417819d85 Polish x9 HMS Lite: Full Schedule 2025-12-03 15:55:12 -08:00
Abner Coimbre
37c70cc8ba Publish Seattle Meeting Instructions 2025-12-03 15:19:05 -08:00
Abner Coimbre
b17bad5594 Polish x8 HMS Lite: Full Schedule 2025-12-03 14:50:22 -08:00
Abner Coimbre
08506c38bb Polish x7 HMS Lite: Full Schedule 2025-12-03 14:47:39 -08:00
Abner Coimbre
e075c141b6 Polish x6 HMS Lite: Full Schedule 2025-12-03 14:40:07 -08:00
Abner Coimbre
7ba3d9ef27 Polish x5 HMS Lite: Full Schedule 2025-12-03 14:38:15 -08:00
Abner Coimbre
7c3e5209bd Polish x4 HMS Lite: Full Schedule 2025-12-03 14:36:34 -08:00
Abner Coimbre
756010d8d6 Polish x3 HMS Lite: Full Schedule 2025-12-03 14:35:23 -08:00
Abner Coimbre
4e36317fbd Polish x2 HMS Lite: Full Schedule 2025-12-03 14:33:33 -08:00
Abner Coimbre
eca79158e2 Polish HMS Lite: Full Schedule 2025-12-03 14:30:46 -08:00
Abner Coimbre
68328a3a6b HMS Lite: Full Schedule 2025-12-03 13:45:28 -08:00
Abner Coimbre
dda5e31f14 HMS Lite Lineup 2025-11-28 15:15:50 -08:00
Abner Coimbre
4a0195e6d9 Update Seattle mailing list to include new hosts. 2025-11-28 15:09:09 -08:00
Abner Coimbre
b2a4636aef Add Hawaii to wishlist 2025-11-27 14:45:54 -08:00
Abner Coimbre
3512db7179 Change HMS page to HMS Lite 2025-11-14 13:04:18 -08:00
Abner Coimbre
a258469eba Add Caspar to HMS Lite 2025-11-14 12:51:29 -08:00
Abner Coimbre
7d363e84b6 Add Saudi Arabia to wishlist 2025-11-06 13:31:06 -08:00
Abner Coimbre
ac2ba3a317 'Winding Down' yet another minor edit at the end 2025-11-04 09:56:48 -08:00
Abner Coimbre
80745f51d0 Polish HMS '24 Day One 2025-11-04 09:52:51 -08:00
Abner Coimbre
d6a0f38374 'Winding Down' another minor edit at the end 2025-11-04 09:48:32 -08:00
Abner Coimbre
aed2384785 'Winding Down' minor edit at the end 2025-11-04 09:44:56 -08:00
Abner Coimbre
2b42784981 Update/add meta titles to About, Media and News pages 2025-11-03 14:29:10 -08:00
Abner Coimbre
dba00cd816 Add RSS feed button 2025-11-03 14:25:13 -08:00
Abner Coimbre
9e53e36a6f Polish Abner's bio 2025-10-25 10:48:17 -07:00
Abner Coimbre
a53634f560 Shorten Abner's bio 2025-10-25 09:44:07 -07:00
Abner Coimbre
10f744baf5 Cybersecurity Image 2025-10-24 12:53:21 -07:00
Abner Coimbre
20f12fa3dd Add Revolt Preview 2025-10-23 09:51:54 -07:00
Abner Coimbre
9da605f6a9 Publish Minneapolis as an official meetup city 2025-10-15 19:35:54 -07:00
Abner Coimbre
f771f7b1df Polish x3 Revolt Against Discord 2025-10-13 13:13:25 -07:00
Abner Coimbre
71a729df00 Polish x2 Revolt Against Discord 2025-10-12 14:56:14 -07:00
Abner Coimbre
37056e3e57 Polish Revolt Against Discord 2025-10-12 14:34:10 -07:00
Abner Coimbre
c50a5cfef3 Update About page to remove 'conferences' from the description. 2025-10-12 14:08:01 -07:00
Abner Coimbre
825f27201b Update About page to mention Puerto Rico 2025-10-12 14:00:26 -07:00
Abner Coimbre
a8edfedd1c Publish Revolt Against Discord 2025-10-12 10:59:29 -07:00
Abner Coimbre
20cf29c51b bugfix: Montreal was showing up as Minneapolis 2025-10-06 16:04:10 -07:00
Abner Coimbre
5342897e9b Add Montreal to meetup wishlist 2025-10-06 16:00:33 -07:00
abnercoimbre
47b8e4af23 Add London reboot image 2025-09-24 18:34:50 -07:00
abnercoimbre
45dad4d9eb Add One Bite Cafe image 2025-09-24 17:27:58 -07:00
abnercoimbre
c32d4dcb05 Fix HMS 2025 date 2025-09-09 17:58:29 -07:00
Abner Coimbre
701849cc92 Handmade Seattle Lite 2025-09-08 14:08:12 -07:00
Abner Coimbre
484164fb51 Polish x2 Farewell to Distant Worlds 2025-08-29 17:35:58 -07:00
Abner Coimbre
ef797777ea Polish x1 Farewell to Distant Worlds 2025-08-29 17:30:01 -07:00
Abner Coimbre
764f312682 Banner: Update to include Distant World news 2025-08-29 17:22:59 -07:00
Abner Coimbre
75eedc3ebc Publish Farewell to Distant Worlds 2025-08-29 17:19:04 -07:00
Abner Coimbre
2a76fbfe9e Polish x50 Winding Down 2025-08-18 21:56:31 -07:00
Abner Coimbre
f4fb99db07 Polish x9 HMB Meeting 2025-08-16 06:05:29 -07:00
Abner Coimbre
a1b9bf6368 Polish x8 HMB Meeting 2025-08-15 15:22:51 -07:00
Abner Coimbre
34d13cf639 Polish x7 HMB Meeting 2025-08-15 15:22:14 -07:00
Abner Coimbre
3652b62a76 Polish x6 HMB Meeting 2025-08-15 14:44:46 -07:00
Abner Coimbre
56f940ba15 Polish x5 HMB Meeting 2025-08-15 14:35:06 -07:00
Abner Coimbre
2ef93ed931 Update Boston event details 2025-08-14 13:39:17 -07:00
Abner Coimbre
8a432c74dc Polish x4 HMB Meeting 2025-08-14 13:28:55 -07:00
Abner Coimbre
bcd2847d5e Fix banner for HMB meeting instructions (2025) 2025-08-14 13:26:43 -07:00
Abner Coimbre
077402c119 Polish x3 HMB Meeting 2025-08-14 13:24:26 -07:00
Abner Coimbre
b17f6ca0ca Update banner for HMB meeting instructions (2025) 2025-08-14 13:23:50 -07:00
Abner Coimbre
c79bed1658 Polish x2 HMB Meeting 2025-08-14 13:18:48 -07:00
Abner Coimbre
4c6486c19c Polish HMB Meeting 2025-08-14 13:17:05 -07:00
Abner Coimbre
585222db6b HMB Meeting Instructions (2025) 2025-08-14 13:15:15 -07:00
Abner Coimbre
7ecef87010 Polish x49 Winding Down 2025-08-14 06:08:03 -07:00
Abner Coimbre
5483d052f1 Update HMB page 2025-08-14 06:04:54 -07:00
Abner Coimbre
52aaea4d7d Add Gwen image 2025-08-13 21:26:03 -07:00
Abner Coimbre
cb16b0975e Update HMB 2025-08-13 21:23:35 -07:00
Abner Coimbre
8e8d755643 Polish x48 Winding Down 2025-08-13 19:03:54 -07:00
Abner Coimbre
e0e8defed0 Remove Morgan, Phil, and Devon from About page 2025-08-13 12:06:14 -07:00
Abner Coimbre
a228b25ccf Remove advisory board. 2025-08-13 02:50:04 -07:00
abnercoimbre
3aaf923897 Polish x47 Winding Down 2025-08-12 23:54:53 -07:00
abnercoimbre
b14ed161d3 Polish x46 Winding Down 2025-08-12 23:29:46 -07:00
abnercoimbre
292367c1d6 Polish x45 Winding Down 2025-08-12 23:25:57 -07:00
abnercoimbre
31e0bc3d79 Polish x44 Winding Down 2025-08-12 23:23:38 -07:00
abnercoimbre
e03606f043 Polish x43 Winding Down 2025-08-12 22:32:57 -07:00
abnercoimbre
53a7d5f14d Polish x42 Winding Down 2025-08-12 22:29:40 -07:00
abnercoimbre
854859c725 Polish x41 Winding Down 2025-08-12 22:22:27 -07:00
abnercoimbre
9a172557d3 Polish x40 Winding Down 2025-08-12 22:21:10 -07:00
abnercoimbre
f99d9d83cb Polish x39 Winding Down 2025-08-12 22:13:09 -07:00
abnercoimbre
7fc1def0b5 Polish x38 Winding Down 2025-08-12 22:05:14 -07:00
abnercoimbre
23e8d5f1e2 Polish x37 Winding Down 2025-08-12 22:04:09 -07:00
abnercoimbre
0a75fac1db Polish x36 Winding Down 2025-08-12 21:55:26 -07:00
abnercoimbre
6366b085c1 Polish x35 Winding Down 2025-08-12 21:53:22 -07:00
abnercoimbre
6c2773f57c Polish x34 Winding Down 2025-08-12 21:38:20 -07:00
abnercoimbre
90a098a498 Polish x33 Winding Down 2025-08-12 20:55:21 -07:00
Abner Coimbre
ea32690a19 Polish x32 Winding Down 2025-08-12 18:02:11 -07:00
Abner Coimbre
6b4b177e9c Polish x31 Winding Down 2025-08-12 17:40:40 -07:00
Abner Coimbre
90cf3c634d Polish x30 Winding Down 2025-08-12 14:16:44 -07:00
Abner Coimbre
d11980328f Polish x29 Winding Down 2025-08-12 14:12:41 -07:00
Abner Coimbre
4aa26db26f Polish x28 Winding Down 2025-08-12 14:09:04 -07:00
Abner Coimbre
8c5bb8cb89 Polish x27 Winding Down 2025-08-12 13:54:25 -07:00
Abner Coimbre
6a38f81671 Polish x26 Winding Down 2025-08-12 13:48:00 -07:00
Abner Coimbre
5e3724cdca Polish x25 Winding Down 2025-08-12 13:40:16 -07:00
Abner Coimbre
a4d291d85c Polish x24 Winding Down 2025-08-12 13:36:16 -07:00
Abner Coimbre
9181e611e4 Polish x23 Winding Down 2025-08-12 13:34:03 -07:00
Abner Coimbre
b496839960 Polish x22 Winding Down 2025-08-12 13:27:13 -07:00
Abner Coimbre
f84133312d Polish x21 Winding Down 2025-08-12 13:25:38 -07:00
Abner Coimbre
3cc325bcf3 Polish x20 Winding Down 2025-08-12 13:23:35 -07:00
Abner Coimbre
f47a322b0b Polish x19 Winding Down 2025-08-12 13:20:04 -07:00
Abner Coimbre
eb4d655d6a Polish x18 Winding Down 2025-08-12 13:14:27 -07:00
Abner Coimbre
1ea3707f83 Polish x17 Winding Down 2025-08-12 13:12:20 -07:00
Abner Coimbre
3206e663a9 Polish x16 Winding Down 2025-08-12 13:09:27 -07:00
Abner Coimbre
897cb0955b Polish x15 Winding Down 2025-08-12 13:07:32 -07:00
Abner Coimbre
b41c584625 Polish x14 Winding Down 2025-08-12 13:05:31 -07:00
Abner Coimbre
c321c3d159 Polish x13 Winding Down 2025-08-12 12:44:04 -07:00
Abner Coimbre
568d7997f6 Polish x12 Winding Down 2025-08-12 12:00:55 -07:00
Abner Coimbre
194ebfde98 Polish x11 Winding Down 2025-08-12 11:54:20 -07:00
Abner Coimbre
60fe6e6b2c Update Day One Livestream 2025-08-12 11:50:39 -07:00
Abner Coimbre
11aa9e3a2a Polish x10 Winding Down 2025-08-12 11:47:14 -07:00
Abner Coimbre
6186729d1b Polish x9 Winding Down 2025-08-12 11:46:29 -07:00
Abner Coimbre
121e097b07 Polish x8 Winding Down 2025-08-12 11:46:03 -07:00
Abner Coimbre
35055f552c Polish x7 Winding Down 2025-08-12 11:41:25 -07:00
Abner Coimbre
0e1ba20d63 Polish x6 Winding Down 2025-08-12 11:37:36 -07:00
Abner Coimbre
2a6f13f3ee Polish x5 Winding Down 2025-08-12 11:35:56 -07:00
Abner Coimbre
f49ca0576a Polish x4 Winding Down 2025-08-12 11:16:15 -07:00
Abner Coimbre
d6f195cc6d Polish x3 Winding Down 2025-08-12 11:14:04 -07:00
abnercoimbre
382c2e1766 Polish x2 Winding Down 2025-08-12 07:44:39 -07:00
abnercoimbre
d993269af5 Polish Winding Down 2025-08-12 07:44:06 -07:00
Abner Coimbre
6ff5651b3e Add Boston Public Library image 2025-08-12 07:13:58 -07:00
Abner Coimbre
ee942aba97 Winding Down (2025) 2025-08-12 07:11:40 -07:00
Abner Coimbre
bddb20b5ef HMB: Remove Macoy and switch venues 2025-08-10 10:12:26 -07:00
Abner Coimbre
ad8e912442 Gwen Lofman 2025-08-08 13:53:44 -07:00
Abner Coimbre
9e1d757ffd Disable PayPal option (2025) 2025-08-04 10:15:56 -07:00
Abner Coimbre
7dc73935a1 Disable tickets (2025 2025-08-04 10:08:26 -07:00
Abner Coimbre
4861b9e8c2 Add Macoy to HMB 2025-07-30 13:07:00 -07:00
Abner Coimbre
19bbe996eb Add abner.jpg under static/images/people 2025-07-28 19:00:25 -07:00
Abner Coimbre
a3f237a572 Add abner.jpg under assets/images/people 2025-07-28 18:59:06 -07:00
Abner Coimbre
70470d2900 Add 'Coming Soon' to HMB 2025-07-28 17:06:56 -07:00
Abner Coimbre
ec2f46b39c Update HMB lineup for 2025 2025-07-28 17:01:15 -07:00
Abner Coimbre
3de0c30f05 Update deadlines to August 1st 2025-07-17 02:18:50 -07:00
Abner Coimbre
f061deefc4 hmb: Extend submission deadline 2025-07-10 16:39:16 -07:00
Abner Coimbre
fc629335bd Extend ticket discounts until July 15th 2025-07-10 16:37:20 -07:00
abnercoimbre
607103cce0 Add Parking Spot screenshot 2025-06-27 20:31:11 -07:00
abnercoimbre
6587f71793 Our Summer Update: Add link to meetups page 2025-06-26 15:58:10 -07:00
Abner Coimbre
c7f286f685 Co-Work: s/it/co-working 2025-06-26 00:01:05 -07:00
Abner Coimbre
cf4e9f8f4a Continued polish x8 to 'Our Summer Update' 2025-06-25 22:53:43 -07:00
Abner Coimbre
3f173ef41f Shorten Co-Work Page 2025-06-25 21:59:49 -07:00
Abner Coimbre
18f693e0f2 Continued polish x7 to 'Our Summer Update' 2025-06-25 21:34:56 -07:00
abnercoimbre
d43c2ef748 Continued polish x6 to 'Our Summer Update' 2025-06-23 20:14:27 -07:00
abnercoimbre
927edc27cc Our Summer Update: s/with/through 2025-06-23 19:58:37 -07:00
abnercoimbre
8ffe649373 Continued polish x5 to 'Our Summer Update' 2025-06-23 19:48:40 -07:00
abnercoimbre
795e12b581 Change 'Our Summer Update' publish date again 2025-06-23 19:01:17 -07:00
abnercoimbre
0b95bbd26d Continued polish x4 to 'Our Summer Update' 2025-06-22 18:12:27 -07:00
Abner Coimbre
8fd3582d2c Our Summer Update: Update Caption 2025-06-22 15:35:31 -07:00
Abner Coimbre
028fc13bfd Continued polish x3 to 'Our Summer Update' 2025-06-22 15:21:16 -07:00
Abner Coimbre
460e3c90d7 Continued polish (again) to 'Our Summer Update' 2025-06-22 15:15:07 -07:00
Abner Coimbre
031f232e18 Change 'Our Summer Update' publish date 2025-06-22 15:10:25 -07:00
Abner Coimbre
390ff9845f Continued polish to 'Our Summer Update' 2025-06-22 14:40:47 -07:00
Abner Coimbre
c84eadc021 Further polish to 'Our Summer Update' 2025-06-21 12:35:12 -07:00
Abner Coimbre
3b59a17eb7 Minor polish to 'Our Summer Update' 2025-06-21 11:15:21 -07:00
121 changed files with 1185 additions and 304 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 672 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

BIN
assets/images/server.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View File

@@ -121,3 +121,59 @@ 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;
}
img[src*="zac.jpg"],
img[src*="server.png"] {
max-width: 280px;
border-radius: 12px;
}

View File

@@ -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,24 +12,18 @@ 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 = "Media"
url = "/media"
weight = 1
[[main]]
@@ -58,31 +35,30 @@ weight = 2
[[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

View File

@@ -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
@@ -57,7 +57,7 @@ show_categories = true
[announcement]
enable = true
expire_days = 7
content = "2025 Update: Check out our new [advisory board](/about)."
content = "Invite [someone](/memos/HMC-Memo-005-Invite-Tree.pdf) to our community chat."
# seo meta data for OpenGraph / Twitter Card
# seo module: https://github.com/gethugothemes/hugo-modules/tree/master/seo-tools/basic-seo

View File

@@ -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>
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 indie conferences for low-level programmers. This is your portal to meet with folks into graphics, game engines, kernels, compilers, and more!"
content: "Handmade Cities 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:
@@ -40,23 +40,23 @@ banner:
icon: "fa-brands fa-youtube"
triple_section:
enable: true
img_left: "/images/hmb/boston-light-mode.svg"
img_left_dark: "/images/hmb/boston-dark-mode.svg"
img_left: "/images/meetups/meetups-light-mode.svg"
img_left_dark: "/images/meetups/meetups-dark-mode.svg"
alt_text_left: "left"
link_left: "/boston"
img_center: "/images/hms/seattle-light-mode.svg"
img_center_dark: "/images/hms/seattle-dark-mode.svg"
link_left: "/meetups"
img_center: "/images/chat.png"
img_center_dark: "/images/chat.png"
alt_text_center: "center"
link_center: "/seattle"
img_right: "/images/meetups/meetups-light-mode.svg"
img_right_dark: "/images/meetups/meetups-dark-mode.svg"
link_right: "/meetups"
link_center: "/chat"
img_right: "/images/newsletter.png"
img_right_dark: "/images/newsletter.png"
link_right: "/news"
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"
---

View File

@@ -1,6 +1,6 @@
---
title: "About Handmade Cities"
meta_title: "About"
meta_title: "About | Handmade Cities"
layout: "about"
description: "About Handmade Cities"
draft: false
@@ -16,25 +16,25 @@ features:
img: "/images/starry_night.png"
grid:
- title: "Sponsor-free tech events"
content: "**100% indie.** We reject sponsorship because we must be allowed to criticize anyones software. Accepting “free” bags of money destroys our ability to change the software industry."
content: "**100% indie.** We reject sponsorship deals because we must be allowed to criticize anyones software. Accepting “free” bags of money destroys our ability to change the software industry."
color: "#FC6D36"
content_class: "text-white"
- title: "An obligation to software quality"
content: "The industrys incentives erode ownership to extract rent from consumers. Weve abandoned the love for our craft, the user's quality of experience, and their right to privacy."
content: "Our industrys incentives destroy ownership to extract rent from customers. Weve 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 job 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,92 +53,40 @@ 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>At a young age he was mentored by Kennedy Space Center on how they make software. After winning NASAs 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 for several years and finally Cyan Worlds to ship the [Myst remake](https://store.steampowered.com/app/1255560/Myst/).<br><br>Now in his early thirties, Abner's mounting concern of declining software standards—both ethical and technical—pushed him to run conferences and grow meetups full-time. (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 NASAs 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."
- title: "Our Advisory Board"
title_class: "mb-20 text-center text-white"
image: ""
side: "center"
content_class: "mt-16 mb-12"
bg_img:
parallax: true
img: "/images/starry_night.png"
grid:
- title: "Zac Nowicki"
content: "Tech lead at [Kagi](https://kagi.com) Search."
color: "#9B8EE8"
content_class: "text-white"
- title: "Mary Bush"
content: "Seattle indie developer, formerly in logistics/healthcare tech."
color: "#9B8EE8"
content_class: "text-white"
- title: "Jon Stevens"
content: "Senior game developer at Bitshift Entertainment: new studio by Notch, creator of Minecraft."
color: "#9B8EE8"
content_class: "text-white"
- title: "Matthew Knight"
content: "Organizer at [Software You Can Love](https://softwareyoucanlove.ca): plus meetups, workshops, and more."
color: "#9B8EE8"
content_class: "text-white"
- title: "Unlisted Member"
content: "Systems programmer, community member, and a friend of Handmade Cities. Values Privacy™"
color: "#9B8EE8"
content_class: "text-white"
- title: "NASA Observer"
content: "Hardware engineer at NASA. Observer role, no voting power. Anonymous involvement given the current climate."
color: "#9B8EE8"
content_class: "text-white"
button:
enable: true
label: "Governance"
link: "/board"
icon: "fa fa-ticket pl-2"
class: "btn text-white meetups-bg"
notice: "**Note:** The advisory board is comprised of volunteers. Member's opinions are their own, not their employer's."
- title: "Morgan Rammell"
title_class: "text-white"
subtitle: "Event Coordinator"
subtitle_class: "!text-[#F7CE3B]"
bg_color: "#060610"
image: "/images/people/morgan_cropped_512.webp"
image_class: "rounded-full"
content_class: ""
section_class: "!pt-24 text-white"
content: "Morgans done corporate event planning for several years but is now interested in the indie space. She oversees the logistics of running and facilitating Handmade conferences, working with the venue to solve any issues that arise in real-time.<br>
Born and raised in Washington state youll find Morgan snowboarding, hiking, camping, and even rock-climbing!"
- title: "Phil Homan"
title_class: "text-white"
subtitle: "Technical Producer"
subtitle_class: "!text-[#F7CE3B]"
bg_color: "#060610"
image: "/images/people/phil_homan_512.webp"
image_class: "rounded-full"
content_class: ""
section_class: "!pt-16 text-white"
content: "Phil Homan, who goes by [PH Test](https://phtest.tv/), is a Seattle developer with a knack for multidisciplinary work: live-performance visuals, experimental programs, games, and video production—often with tools he made himself!<br>
Phil joined Handmade Cities to help Abner with matters related to streaming, recording, and A/V support at the conferences."
- title: "Devon aka [tek256](https://tek256.com)"
title_class: "text-white"
- title: "Zac Nowicki"
title_class: "text-white -mt-2"
subtitle: "Editor"
subtitle_class: "!text-[#F7CE3B]"
image: "/images/people/zac.jpg"
section_class: "text-white"
transition:
start: "/images/transition3.svg"
start_class: "-scale-y-100"
start_style: "mask-size: cover;mask-position:center;"
start_color: "black"
start_dark: "/images/transition3.svg"
start_dark_color: "black"
bg_color: "#060610"
image: "/images/people/devon.jpg"
image_class: "rounded-full"
content_class: ""
section_class: "!pt-16 !pb-32 text-white"
content: "Devon is a guy who makes things.<br>(Like a PSX-style souls game in C on [stream](https://twitch.tv/tek256))"
content_class: "mt-4"
content: "Zac is our editor who keeps us free of typos and fact-checks our writing. Outside of donating his time here, Zac is tech lead for [Kagi Search](https://kagi.com). Opinions here do not represent his employer."
- title: "Mr. Perkins"
title_class: "text-white"
subtitle: "Secretary"
- title: "Mariano Uvalle"
title_class: "text-white -mt-2"
subtitle: "Server Admin"
subtitle_class: "!text-[#F7CE3B]"
image: "/images/server.png"
section_class: "text-white"
transition:
start: "/images/transition3.svg"
start_class: "-scale-y-100"
start_style: "mask-size: cover;mask-position:center;"
start_color: "black"
start_dark: "/images/transition3.svg"
start_dark_color: "black"
bg_color: "#060610"
image: "/images/people/perkins.png"
image_class: "rounded-full"
content_class: ""
section_class: "!pt-16 !pb-32 text-white"
content: "Mr. Perkins is our year round part-time assistant, usually plowing through the backlog of texts, emails and invoices."
content_class: "mt-4"
content: "Mariano Uvalle is [server administrator](/memos/HMC-Memo-003-Server-Admin.pdf) for Handmade Cities. He's a former Microsoft engineer at Azure who stepped down to work for a smaller outfit. Opinions here do not represent employers."
---

View File

@@ -1,25 +1,39 @@
---
title: "Handmade Boston 2025"
subtitle: "The East Coast's premier conference for systems programmers. Fully offline"
subtitle: "The East Coast's premier event for systems programmers. Fully offline"
image: "/images/hmb/boston-dark-mode.svg"
layout: "event"
# Event Details
event_dates: "August 15-16, 2025 (Fri-Sat)"
registration_date: "July 8th, 2025"
venue_name: "John F. Kennedy Library"
venue_address: "Columbia Point, Boston, MA 02125"
event_dates: "Saturday August 16th, 2025 (Sat 2PM)"
registration_date: "August 1st, 2025"
venue_name: "Boston Public LIbrary"
venue_address: "700 Boylston St., Boston, MA 02116"
# Coming Soon Section
coming_soon_text: "Community Submissions"
coming_soon_description: "Submit a lecture below! Final deadline is Tuesday, July 8th."
coming_soon_text: "We've Changed Venues!"
coming_soon_description: "We meet at the Boston Public Library, Saturday at 2PM. Check the top banner"
# Initial Speakers
initial_speakers:
- name: "Jim Calabro"
topic: "Software Engineer at Bluesky"
affiliation: "calabro.io"
image: "/images/people/calabro.jpg"
- name: "Abner Coimbre"
topic: "Author of Terminal Click"
affiliation: "terminal.click"
image: "/images/people/abner.jpg"
- name: "Caden Parker"
topic: "Senior Graphics Programmer"
affiliation: "vectrx.substack.com"
image: "/images/people/caden.png"
- name: "Gwen Lofman"
topic: "Livecoding for Music and Visuals"
affiliation: "glfmn.io"
image: "/images/people/gwen.png"
- name: "Switch Angel"
topic: "Livecoding Co-Presenter"
affiliation: "tinyurl.com/switchangel"
image: "/images/people/switchangel.jpg"
- name: "This is You"
topic: "Audience is demoing projects"
# Call to Action Buttons
enable_newsletter: true
@@ -28,12 +42,12 @@ enable_discord: true
discord_link: "https://handmadecities.com/discord"
enable_cfp: true
cfp_link: "mailto:submissions@handmadecities.com"
cfp_deadline: "July 2, 2025"
cfp_deadline: "August 1st, 2025"
# Content Display
show_description: true
---
Handmade Boston brings together the brightest minds in low-level programming for two days of technical lectures, networking, and job booths.
Handmade Boston brings together the brightest minds in low-level programming for inspiring technical lectures.
We're the sister conference to Seattle and a fully-offline counterpart: enjoy deeper lectures exclusively in-person and make some new friends for life.
We're the sister event to Seattle and a fully-offline counterpart: enjoy deeper lectures exclusively in-person and make some new friends for life.

4
content/english/chat.md Normal file
View File

@@ -0,0 +1,4 @@
---
title: "Handmade Revolt"
layout: "chat"
---

View File

@@ -0,0 +1,4 @@
---
title: "Invite a Friend to our Chat!"
layout: "invite"
---

View File

@@ -1,4 +1,5 @@
+++
title="Media"
meta_title="Media | Handmade Cities"
image="/images/film.svg"
+++

View File

@@ -19,6 +19,6 @@ image="/images/people/abner_2022.png"
## The year that triggered the Handmade civil war
Partly due to our keynote talk (timestamped), Handmade Cities [paid a price](/news/splitting-from-handmade-network/) for it. This was, however, [not the only reason](/news/hms-2024-clear-the-air/). In response to everything, we ratified a new advisory [board](/board).
Partly due to our keynote talk (timestamped), Handmade Cities [paid a price](/news/splitting-from-handmade-network/) for it. This was, however, [not the only reason](/news/hms-2024-clear-the-air/).
The Twitch stream is not available as individual recordings yet, but luckily our team archived a backup on YouTube.
The Twitch stream is not available as individual recordings yet, but as you can see our team archived a backup on YouTube.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View 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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -0,0 +1,15 @@
+++
title="Minneapolis' Mailing List"
date="2024-11-03T12:00:00-08:00"
description="Receive Handmade meetup invites from the city of lakes!"
api_endpoint="https://api.handmadecities.com/v1/meetups/minneapolis"
[[hosts]]
name="Dan Grigsby"
bio="dan@handmadecities.com"
image="/images/people/dan_grigsby.webp"
+++
#### 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.

View 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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -0,0 +1,31 @@
---
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)
**March 2026**
- [HMC Memo 005 - Invite Tree](/memos/HMC-Memo-005-Invite-Tree.pdf)
Date of publication varies.

View File

@@ -1,7 +1,7 @@
---
title: "News"
meta_title: ""
description: "this is meta description"
meta_title: "News | Handmade Cities"
description: "The latest Handmade Cities news"
newsletter_signup:
active: true
title: "Join our newsletter"
@@ -14,9 +14,9 @@ newsletter_signup:
button_class: "btn text-white meetups-bg col-3"
section_class: ""
text_sidepanel:
active: true
title: ""
title_class: ""
active: false
title: "RSS Feed"
title_class: "mb-6"
text_class: ""
text: "[RSS](/news/index.xml)"
text: "[Subscribe](/news/index.xml)"
---

View 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&rsquo;é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&rsquo;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>

View File

@@ -0,0 +1,58 @@
---
title: "Farewell to Distant Worlds"
meta_title: ""
description: "One of Seattle's most popular coffee shops is winding down. Guest article by Allen Webster"
date: 2025-08-29T12:00:00Z
image: "/images/meetups/distantworlds_space.jpg"
categories: ["Meetups"]
author: "Allen Webster"
tags: ["meetups", "seattle"]
draft: false
---
A special Handmade meetup: one of Seattle's most popular coffee shops is winding down.
> Allen Webster is a meetup host for [Seattle](/meetups/seattle). You may reach the author at allen@handmadecities.com
Seattle area folks,
As the last Saturday of the month approaches, were looking forward to our usual Handmade meetup, but a few things will be very different this month. Please read to the end to catch all the details.
The big news:
-------------
First and foremost, the venue we have been with since the beginning, Distant Worlds Coffeehouse, is closing on August 31st, making our meetup one of the last events to occur in the space. This news came rather suddenly and saddens us deeply, not to mention the owner and staff at Distant Worlds. Abner has made an effort to reach out to as many people as possible to give Distant Worlds the send off they deserve, and all sales will go towards an employee severance fund, so please buy your drinks and snacks as usual (or splurge!)
{{< image src="images/meetups/dw.png" caption="Distant Worlds - Seattle Roosevelt" alt="Distant Worlds" height="400" width="400" position="center" command="fill" option="q100" class="img-fluid" title="Distant Worlds (Seattle)" webp="false" >}}
Second, while Abner will still be in attendance, he wants to focus at least some of his attention on talking with the staff with whom he has a long standing relationship. So hes asked me, his backup host, to step in for the month. Many of you may know me, but in case you dont I look forward to meeting you. I am Allen Webster, creator of [4coder](https://4coder.net) and [Mr. 4th Lab](https://mr4th.com), and Ive been the host of a few meetups before, so youre still in good hands.
The details:
------------
- **Where:** Distant Worlds Coffeehouse (in Seattle)
- **When:** Saturday, August 30th, 2PM-4PM
- **Parking:** While there is street parking around the neighborhood, the most reliable place to park is “Green Lake Park & Ride”.
- Afterwards those who are up for more time together migrate down the road for pizza and time at the pub.
Submitting Topics:
------------------
Many of us in the community work on software projects on our own. The goal of the meetup is to get a chance to get help where were stuck, to get feedback on what weve built, and to practice explaining our ideas to other programmers.
Usually we gather up topics on the fly at the start of the meetup, but to make the most of our time I am going to try **an experiment!**
Im asking you to take a few minutes to write a short pitch of what youd like to bring and send it to me ahead of time at allenw@mr4th.com. Tell me about your topic, and what questions you might like to get answers to, what new features of your project you might like to demo, or what youd like a chance to discuss.
I will sort through pre-submitted topics ahead of time to pick an order and see how much time we can give each topic, that way we can dive right in. I want to be sure we pack our last meetup at Distant Worlds with as many opportunities for people to participate as possible, while we celebrate our meetup community. Ill still take topics on the fly if theres time, but Im going to give first priority to pre-submitted topics.
*See you on Saturday!*
-Allen
{{< button label="Employee Severance Fund" link="https://venmo.com/u/distantworldscoffee" style="solid" >}}
---
> Staff Note: Can't make it in person? Use the Employee Severance Fund button above!

View 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&rsquo;ve been working on, ask questions, get constructive feedback, etc.</li> <li><strong>Presentation:</strong> Give a mini talk about something you&rsquo;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&rsquo;re not required to bring a project or anything; showing up is good enough!</p> <hr /> <h2>Getting there</h2> <p>We&rsquo;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>

View 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&rsquo;ve been working on, ask questions, get constructive feedback, etc.</li> <li><strong>Presentation:</strong> Give a mini talk about something you&rsquo;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&rsquo;re not required to bring a project or anything; showing up is good enough!</p> <hr /> <h2>Getting there</h2> <p>We&rsquo;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>

View 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&rsquo;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&rsquo;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 &ldquo;Promotions&rdquo;. To prevent this, you can set emails from this address to always go to your primary inbox. (We will never send spam!)</p>

View 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 &ldquo;Promotions&rdquo;. To prevent this, you can set emails from this address to always go to your primary inbox. (We will never send spam!)</p>

View 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&rsquo;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&rsquo;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&rsquo;ll bring a extension cord + splitter. If you don&rsquo;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&rsquo;t hesitate to reach out! (reply to this email, or DM/ping on Discord <code>@ProfessorSil</code>)</p>

View 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&rsquo;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&rsquo;m sending this out a bit late so we&rsquo;ll schedule for the 18th of January.</p> <p>As usual we&rsquo;ll book a table at The Fellow (a pub near Kings Cross Station, N1 9AA). There&rsquo;s no agenda so anybody is free to bring any topics or demos that they&rsquo;d like to discuss. If anybody wants to bring a laptop or gadget or what-have-you to demo something that&rsquo;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&rsquo;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&rsquo;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>

View 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>

View 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&amp;g_ep=EgoyMDI1MDQzMC4xIPu8ASoASAFQAw%3D%3D&amp;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&rsquo;re considering attending you can RSVP <a href="https://luma.com/i49vxiqs\">by clicking this link</a>.</p> <p>Looking forward to meeting y&rsquo;all soon!</p>

View File

@@ -0,0 +1,65 @@
---
title: "Boston Conference Instructions"
meta_title: ""
description: "Where we're meeting for 2025"
date: 2025-08-14T12:00:00Z
image: "/images/companies/bpl.jpg"
categories: ["Press Release"]
author: "Abner Coimbre"
tags: ["meta", "hmc"]
draft: false
---
All the details for our special event in Boston this weekend.
*UPDATED 8/15: Additional FAQ at the end*
Dear Handmade folks,
I'm motivated to see you this weekend. This is a reminder there was a shakeup and downsizing that you can read about [here](/news/winding-down). With that said, everyone attending is in great spirits and we're looking to get inspired.
#### Where do we meet?
I'll be at the entrance to the Boston Public Library at 1:45PM. At 2:05 I'll start heading to the conference room. If you're arriving late, our friend Caden (who kindly reserved the space for us) has this for instructions:
> It's Mezzanine Conference Room 2. From the entrance on Boylston street, you veer slightly to the left to the DVD section, and go up the stairs. From there you'll be able to see all the mezzanine conference rooms.
If you're still lost, you should ask library staff how to get to Mezzanine Conference Room 2.
#### 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 park for casual chatter until we do a 6PM dinner together. It's fun to play it by ear, so we'll decide where to eat and drink in person!
#### I'm here in Boston already
Make sure you're in the HMC [Discord](https://handmadecities.com/discord) so you can sync up with other attendees in the area. There's a public `#handmade-boston` channel and a private `meetups-boston` channel and you may use either of them.
NOTE: If you don't see the private `#meetups-boston` channel, select **Channels & Roles** in your Discord app and choose "Boston" as a city of interest.
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 Boston meetup member**
If you've attended Caden's Handmade Meetups somewhat regularly, you should be fine for this event! First come, first served in terms of available seats.
4. Can I bring my laptop for my demo?
Of course; the conference room has a giant TV with HDMI cable. I should also have an adapter for Macbooks.
Please bring your laptop fully charged in case we run out of outlets. If your laptop isn't HDMI-compatible and it isn't a Macbook, you should carry any special cables or adapters that you need.

View 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.

View File

@@ -0,0 +1,44 @@
---
title: "Revolt Against Discord"
meta_title: ""
description: "Handmade Cities is killing Discord before 2026"
date: 2025-10-12T12:00:00Z
image: "/images/hmc/revolt-promotion.png"
categories: ["Press Release"]
author: "Abner Coimbre"
tags: ["meta", "hmc"]
draft: false
---
Handmade Cities is leaving Discord by end of the year.
Time to [Revolt](https://revolt.handmadecities.com) against Discord. Savor the refrain while it lasts, because Revolt will become [Stoat](https://stoat.chat/) eventually. Their rebrand doesnt change anything about joining now. Your Revolt account will stay the same. Indeed, Ill call it “Revolt” for the rest of this post.
You might wonder why this move needs to happen in the first place. First, it's a **principles thing.** We want to own chat data to align closer with the values on our [About](/about) page. On Discord, meanwhile, communities can be (and *have* been) shut down with no recourse. Second, there's **real cybersecurity concerns**. Discord has asked for government ID verification and passed that data to third parties — nearly 100k IDs were exposed in a [vendor breach](https://www.pcmag.com/news/discord-70k-govt-ids-exposed-breach-hackers-posting-age-verification-selfies). Thats not acceptable. Ironically, it appears to be their customer support and "Trust & Safety" teams that were collecting this data. Now it's in the hands of hackers:
> "The hackers who compromised Discord are now sharing examples of what they say is stolen data, including selfies of Americans and Canadians holding up IDs." -PCMag
So much for trust. Or safety.
Finally, note that I'm **encouraging people to touch grass.** Ive [sketched](https://abner.page/post/exit-the-feed/) a path for top engineers to live without addictive social media. Revolt as an inviteonly, verifiedhuman 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 weve met at a conference, meetup, or coworking session, message us and well likely invite you. Im the one who grants the **Verified Human** badge and Ill 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](/guide) so important knowledge isnt lost.
2. *“Abner is a dictator."* Guilty as charged. Im running this as a BDFL, with a decade of organizing Handmade since my early college days. Theres 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.
3. *"There's some friction and missing features."* Revolt is lighter than Discord. I call it Discord Lite&trade; and it carries a few annoyances:
- **You can't point the Revolt app to a custom domain.** There is a workaround for this: visit `revolt.handmadecities.com` in your phone's native browser (Safari on iOS). Now hit `Add to Home Screen` and the PWA you just installed behaves like any other electron app.
- **Missing bells & whistles.** There's no message pinning, no threads, and limitations on emoji reactions. These are irritations to me, not deal breakers. Many people find Revolt snappier with zero loading times.
- **Lack of E2EE.** Discord has this problem too. Handmade Cities policy is to safeguard private DMs and never inspect their contents, but you're choosing to trust us instead of Discord. Never disclose sensitive material on our servers; instead you should ask the person you're talking to for their [Signal](https://signal.org/) username and hop over there.
#### Final Notes
To summarize: Our new [Revolt](https://revolt.handmadecities.com) is inviteonly. You must be a verified human; either I know you, or a meetup host does. The easiest way to get invited is to attend an inperson event. If this feels like too much, consider this your warning: the Discord goes kaput after New Years Eve. Exchange contact info, save any important links, and follow our [public newsletter](/news) to stay updated, with or without Revolt/Stoat.
Your indie organizer,<br>Abner Coimbre

View 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

View 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&rsquo;ll be starting a new job in February so the meetup hosting may change hands or change times, but for now it&rsquo;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&rsquo;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&rsquo;ll bring a extension cord + splitter. If you don&rsquo;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&rsquo;t hesitate to reach out! (reply to this email, or DM/ping on Discord <code>@ProfessorSil</code>)</p>

View File

@@ -2,7 +2,7 @@
title: "Our Summer Update"
meta_title: ""
description: "See where we stand halfway through the year"
date: 2025-06-21T12:00:00Z
date: 2025-06-23T12:00:00Z
image: "/images/hmc/ocean.jpg"
categories: ["Press Release"]
author: "Abner Coimbre"
@@ -10,101 +10,106 @@ tags: ["meta", "hmc"]
draft: false
---
Learn where things stand halfway through the year. Ticket discounts end this weekend!
Catch up on our progress this year. Ticket discounts are ending soon!
**Things to Discuss**
- Conference Theme: Handmade at Home
- Discord Off-Ramp
- Abner's AI Philosophy
- My Thoughts on AI
- Bonus Video: Is Handmade like Suckless?
Dear community member,
Before we get into the newsletter, note that summer's already here! **I've [extended](/tickets) the Spring Sale for the weekend**, after which the discount disappears on Monday and we're back to standard tickets.
Summer is here! **Ive [extended](/tickets) the Spring Sale a few more days,** but the discounts vanish after Wednesday:
{{< button label="Register" link="/tickets" style="solid" >}}
Check out our new [downloadable](/calendar) calendar to keep track of event dates.
---
### "Handmade at Home"
This year's theme for the conferences is *Handmade at Home*. It has a double-meaning.
This years conference theme is *Handmade at Home*, and it has two meanings.
#### Meaning #1: Clean House
#### Meaning #1: Cleaning House
The reader's attention is shot this year. There's SO MUCH going on that it's a huge ask to settle down and reflect, let alone evangelize our values:
With our industry in upheaval, its tricky to settle down and reflect, let alone evangelize our values. Heres what were facing:
1. Handmade Cities is full of gamedevs and they're [getting massacred](https://www.gamesindustry.biz/topics/layoffs)
2. International attendance has dropped to [near zero](https://news.ycombinator.com/item?id=44084767). I'm not the only organizer [suffering](https://archive.is/QWmxO) consequences
1. Handmade Cities is full of gamedevs and they're [in very hot water](https://www.gamesindustry.biz/topics/layoffs)
2. International attendance is dropping to [near zero](https://news.ycombinator.com/item?id=44084767). I'm not the only organizer [suffering](https://archive.is/QWmxO) consequences
3. Morale is at an all-time low due to AI (more on this later)
Therefore I'm keen for talk/demo submissions offering hope, strategies, or inspiration against these realities. I encourage everyone to email suggestions of speakers I should reach out to: ideally candidates near Boston or Seattle.
Therefore I'm keen for talks or demos that offer hope, strategies, and inspiration against these grim realities. The theme is open-ended.
**Reminder:** Our new content follows an 80-20 split: 80% technical and 20% programmer well-being.
**Reminder:** Our new content will be 80% technical and 20% about programmer well-being.
#### Meaning #2: Elevate Our Own Talent
Historically, I've chosen high-profile speakers (outside our community) to come talk to us. This is valuable and I remain open to it... however, I haven't spent enough time platforming community voices.
Historically, I've chosen high-profile speakers outside our community to come talk to us. This is valuable. However, I haven't spent nearly enough time platforming community voices.
We have many [meetups](/meetups) with astounding system programmers and I REALLY want to hear what the best among us have to say.
We have astounding system programmers at our [meetups](/meetups) and I wish to hear from them.
{{< image src="images/meetups/cowork_seattle_2025.jpg" caption="Seattle Coworking Session (2025)" alt="cline bot landing page" height="806" width="605" position="center" command="fill" option="q100" class="img-fluid" title="image title" webp="false" >}}
Anyone reading this may be a worthy candidate and not even know it. Submit an informal proposal to submissions@handmadecities.com and we'll start talking.
Someone reading this may be a worthy candidate and not even know it. Send an informal proposal to submissions@handmadecities.com
{{< button label="Submit a Talk" link="mailto:submissions@handmadecities.com" style="solid" >}}
---
### Discord Off-Ramp
I don't think it's controversial to say I want to shut down Discord: everyone can sympathize for one reason or another! Today, I've left all servers except for my own [HMC](https://handmadecities.com/discord) and [TC](https://terminal.click/discord) for now.
It's not controversial to say I want to shut down Discord: everyone can sympathize for one reason or another! Ive left all servers except for my own [HMC](/discord) and [TC](https://terminal.click/discord) for now.
What might raise eyebrows is that I'm switching to [Revolt](https://revolt.chat) with an invite-only system. In other words, the folks in this brand new HMC server must be well-known individuals:
- I know someone personally, so I invite them
- Someone attends a local meetup, so the host invites them
- Someone snatched a conference ticket, so they're auto-invited (2025 onwards)
Im moving us to [Revolt](https://revolt.chat) through an invite-only system. Heres how itll work:
I will allow meetup hosts to send manual invites through my command-line tool, which they already use to send newsletters to their city. (I'm in the middle of completing this feature.)
- I invite people I know personally
- Meetup hosts can invite their meetup groups
- Conference ticket holders are auto-invited (2025 onwards)
{{< image src="images/hmc/revolt.png" caption="Revolt is the open-source Discord copycat (and that's a good thing)" alt="cline bot landing page" height="" width="" position="center" command="fill" option="q100" class="img-fluid" title="image title" webp="false" >}}
Indeed, [meetup](https://handmadecities.com/meetups) hosts will send chat invites with my command-line tool, which they already use to send newsletters. (I'm in the middle of completing this feature.)
Revolt won't be foolproof. The host could go rogue and invite randos, or the ticket holder might take on a fake identity. I'm fine with some cracks on the floor. I am, in essence, [heeding the advice](https://news.ycombinator.com/item?id=44331351) of this HN comment:
{{< image src="images/hmc/revolt.png" caption="Revolt is an open-source Discord copycat (and that's a good thing)" alt="cline bot landing page" height="" width="" position="center" command="fill" option="q100" class="img-fluid" title="image title" webp="false" >}}
I am, in essence, [heeding the advice](https://news.ycombinator.com/item?id=44331351) of this HN comment:
> I honestly couldn't tell you right now what the long game looks like. Only to find your humans, build your digital fortresses, and help each other as best you can.
When is this off-ramp? Over the summer! The reader will hear announcements if they're [subscribed](/news).
Revolt won't be foolproof of course. The host could go rogue and invite randos, or the ticket holder might take on a fake identity. I'm fine with some cracks on the floor though. This transition is happening over the summer and Ill keep folks posted if they're [subscribed](/news).
---
### Abner's AI Philosophy
All right, it's a stretch to call my take on artificial intelligence a "real" philosophy, but it is informed from practical studies.
### My Thoughts on AI
All right, it's a stretch to call my take on artificial intelligence a "real" philosophy, but it is informed from careful study.
I'm no longer a stranger to AI; I can leverage [cline](https://cline.bot) bot to great effect. I know how to deploy MCP servers. I review, quantize, and self-host open models every other month. Indeed, I stay on top of the "latest and greatest" and even have AI-loving enemies on speed dial (keep dissenting opinions closer than friends!)
I'm no longer a stranger to AI; I can effectively use the [cline](https://cline.bot) bot and deploy MCP servers. I review, quantize, and self-host open models. I stay on top of the "latest and greatest" and have vibe coders on speed dial (I keep dissenting opinions closer than friends.)
So what's the conclusion? I offer two.
{{< image src="images/hmc/cline.png" caption="Cline Bot - Landing Page" alt="cline bot landing page" height="" width="" position="center" command="fill" option="q100" class="img-fluid" title="image title" webp="false" >}}
#### Conclusion #1: Serious study of the Handmade ethos makes one competitive.
#### Conclusion #1: Handmade Ethos is Competitive
Handmade software like my own [Terminal Click](https://terminal.click) does not benefit from AI tech. It does help at the margins: I've delegated website work to AI since last year and I enjoy seamless CI/CD for the builds. That is significant time saved.
Serious Handmade projects, like my own [Terminal Click](https://terminal.click), don't gain from AI. It does help at the margins: I've delegated website work since last year, and I enjoy seamless CI/CD for my builds. This is meaningful.
However, when solving novel problems or pushing boundaries, AI gets stuck fast. It's impractical to use for core programming work. (Skeptics should watch the bonus video at the end.)
However, it fails at novel problems and isnt practical for my systems programming work. (Skeptics should check out the bonus video at the end.)
#### Conclusion #2: A market is opening for the artisinal.
#### Conclusion #2: A Market for the Artisanal
Let's assume LLM agents become essential for true innovation: the top 5% of coders are officially threatened! I don't believe this will happen at all but we must entertain the notion. From what I observe at our in-person events, there's an eternal craving for the purely human.
Let's imagine LLM agents become essential for true innovation: the top 5% of 'manual' coders are officially threatened! From what I observe at our in-person events, there remains the eternal craving for what's purely human.
The most ardent believers of vibe coding I've met agree users will crave Handmade projects the same way people crave artisinal crafts, furniture or goods. They called this market fringe, but I call it sustainable.
Even True Believers conceded to me users will crave Handmade projects the same way people crave artisanal crafts, furniture or goods. They called this futuristic market fringe - I call it sustainable.
**TL;DR:** I don't lose sleep over my craft disappearing. I lose sleep over the automation of mediocrity.
---
### Is Handmade like Suckless? (Video)
Anyone who's made it this far deserves a fun video! To recall it easily I've set up a permalink at [terminal.click/suckless](https://terminal.click/suckless)
Anyone who made it this far deserves a cool video! I've set up a permalink at [terminal.click/suckless](https://terminal.click/suckless)
<div style="padding:56.25% 0 0 0;position:relative;"><iframe src="https://player.vimeo.com/video/1091637660?badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479" frameborder="0" allow="autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share" style="position:absolute;top:0;left:0;width:100%;height:100%;" title="Handmade is NOT Suckless"></iframe></div><script src="https://player.vimeo.com/api/player.js"></script>
Over the years, new community members sometimes consider [suckless](https://suckless.org) to be similar (if not the same) as Handmade. Out of respect for both communities I can no longer stay silent.
Over the years some new community members often think [suckless](https://suckless.org) and Handmade are similar if not the same. Out of respect for both, I feel it's time to respond.
*P.S. If the viewer expects a rigorous philosophical breakdown they might be disappointed. Instead, I've taken their signature suckless terminal and compared it against my own signature project: two real-world products from two competing ideologies.*
The payoff is worthwhile if viewers watch patiently.
*P.S. Dont expect a deep philosophical breakdown. Instead, I casually compare their signature terminal software against my own: two real-world products from competing ideologies.*
Your indie organizer,<br>Abner Coimbre

View File

@@ -0,0 +1,71 @@
---
title: "Winding Down"
meta_title: ""
description: "Our conferences are coming to an end"
date: 2025-08-12T12:00:00Z
image: "/images/hmc/out-of-order.jpg"
categories: ["Press Release"]
author: "Abner Coimbre"
tags: ["meta", "hmc"]
draft: false
---
Our conferences are coming to an end. I am re-evaluating how we socialize.
Dear Handmade folks,
This shutdown isn't the end of Handmade Cities, but it does mean we're ending our conferences in favor of local meetups. I'm officially collaborating with [The Offline Club](https://www.theoffline-club.com/) in the future, since we both agreed we admire each other's efforts.
Personally I'm optimistic for what's on the horizon. However, in this post I need to be blunt about reality. Stand strong.
*REMINDER: Handmade Cities is NOT affiliated with Handmade Hero nor the Handmade Network. We share the brand and that's it.*
#### What does it mean for the conferences in 2025?
The [Boston](/boston) and [Seattle](/seattle) dates stay on the calendar, but theyre meetups now; likely bigger than usual, just not a traditional tech conference. I expect the lectures and demos to remain exciting but in smaller packaging.
This change is reflected in Boston already, which is coming up this weekend. We changed the venue from the increasingly expensive JFK Presidential Library to the Boston Public Library instead:
{{< image src="images/companies/bpl.jpg" caption="Entrance to BPL" alt="Entrance to Boston Public Library" height="806" width="605" position="center" command="fill" option="q100" class="img-fluid" title="Entrance to BPL" webp="false" >}}
I've disabled the [tickets](/tickets) portal and, if theres room, new folks can join free. E-mail me to RSVP: abner@handmadecities.com. We'll meet in front of the library Saturday at 2PM: plus ones welcome.
Ticket holders disappointed with this change can email me directly at abner@handmadecities.com to negotiate refunds. Ive got sunk costs, so refunds might take up to a small number of weeks. However, I'm already processing them as fast as I can, and I'm deeply grateful to the folks allowing me to keep their contribution.
These upcoming events will be delightful all the same.
#### Why I'm doing this
This story has two parts: financial and personal.
1. **Financial**
I hinted at economic trouble at the beginning of [this](/news/summer-update-2025/) summer update and in the bottom section of my Terminal Click [announcement](https://terminal.click/posts/2025/07/open-beta/). It's common knowledge profitable conferences are a dying breed and I'm surprised I've lasted this long: Deconstruct, Strangeloop, Bang Bang Con, XOXO and other small-to-medium sized events vanished. Even corporate-backed conferences are no longer around: O'Reilly, Xfest, E3 and so on went away.
2. **Personal**
In the last Handmade Seattle I made a mistake with the balance of content. It was definitely jarring to have little in the way of old-school technical presentations. This caused a 50-50 split of positive versus negative feedback: the positive commentary came largely from newcomers, while the negative came largely from veterans. The reader can visit [older](/news) blog posts where I apologized and asked for feedback.
However, I stand by all my speakers and refuse to add disclaimers/warnings inside published recordings. It is obvious giving speakers air time doesn't mean I endorse all their views. In any case, the most controversial talk by far was Andrew Kelley's keynote on [Day One](/media/seattle-2024/hms-day-one/). I received a barrage of vile essays in my Inbox, Discord DMs, and unlisted YouTube videos calling me a communist (what?) for platforming Andrew's message. I lost genuine friendships from people who were caught up in the heat of it all.
This was personally traumatic, and I can't use this trauma to justify running half-hearted conferences, which is an important reason for stopping them.
*UPDATE 8/18/25: In my original post I aired dirty laundry, which feeds into online drama I'm supposed to denounce. It is now removed.*
#### Nature is healing
The Handmade meetups are awesome and they keep growing. We nerd out with demos and side projects. We help local programmers find work or make new friends every month. I train and mentor hosts, then they take the reins, so the scene is decentralized and self-sustaining. Meetups are cheap or free to run so I don't have to chase big revenue. Meanwhile, building [Terminal Click](https://terminal.click) as an indie dev is therapy compared to wrangling humans for a living!
An impressive number of people who ended their relationship with me have apologized as of late. I've forgiven them.
*UPDATE 8/18/25: In my original post I posted examples of private apologies, which is unfair to those friends. These are now removed.*
#### Could things have been different?
Without social media we could've had more perspective: in the end this was just one event. In fact a Seattle meetup member called me a “young grasshopper.” That caught me off guard until I looked around. Important things take time indeed: TED Talks have existed for four decades; DEFCON is thirty years old; many open-source conferences spent twenty years figuring things out. Herding cats is slow and messy.
Im done running conferences though. Besides the reasons above, they feed the egos of a few “anointed” speakers and require a social media hustle I just wont play. Im opting out. I'm excited about building stuff that gets people offline: better meetups, our own server racks, and self-hosted tools for indie devs with serious Handmade projects.
Ill keep publishing newsletters [here](/news) and on [Terminal Click](https://terminal.click/posts), and occasionally on my [personal](https://abner.page) website. I'd still love to see you at our upcoming events, even if they're not fancy conferences.
See you offline,<br>Abner Coimbre

View File

@@ -10,9 +10,9 @@ draft: false
#### About Co-Working Sessions
When there's no Handmade conference we have in-person meetups all year round. Usually, these are just monthly meetups: once a month we showcase the coolest demos or have round-table discussions.
When there's no Handmade conference we have in-person meetups all year round. Usually, these are just monthly meetups: once a month we demo the coolest projects or have round-table discussions.
However, certain cities also offer co-working sessions: these are a lot more informal and happen more regularly than the monthly meetups.
However, some cities also offer co-working sessions: these are more informal and happen more regularly.
#### What to Expect
@@ -26,7 +26,7 @@ Sometimes we pause to point at our progress or ask for technical feedback. And s
Note that you are not expected to work exclusively on systems programming. It's reasonable to do art, marketing, accounting and so on if needed.
#### How do I know if my city offers it?
#### How do I know if my city offers co-working?
First and foremost, please browse the cities on the [Meetups](/meetups) page and subscribe to your favorite one. If your city is not listed, wishlist one from the dropdown box: the more demand there is for a city, the more likely we can spin up an official group.

View 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.

View File

@@ -0,0 +1,4 @@
---
title: "Private Chat"
layout: "revolt"
---

View File

@@ -1,14 +1,14 @@
---
title: "Handmade Seattle 2025"
subtitle: "The West Coast's premier conference for systems programmers. Fully Hybrid"
subtitle: "The West Coast's mini conference for systems programmers."
image: "/images/hms/seattle-dark-mode.svg"
layout: "event"
# Event Details
event_dates: "December 12-14, 2025 (Fri-Sun)"
registration_date: "October 5th, 2025"
venue_name: "Seattle Center"
venue_address: "305 Harrison St, Seattle, WA 98109"
event_dates: "Saturday December 6th, 2025"
registration_date: "December 1st, 2025"
venue_name: "One Bite Cafe (2-5PM)"
venue_address: "1026 NE 65th St, Seattle, WA 98115"
# Event Features
event_format: "Fully Hybrid"
@@ -20,19 +20,25 @@ event_features:
- "Networking opportunities"
# Coming Soon Section
coming_soon_text: "Community Submissions"
coming_soon_description: "Submit a talk or demo below! Final deadline is Sunday, October 5th."
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: "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"
image: "/images/people/thompson.webp"
- name: "Caspar"
topic: "Full-time Solo Gamedev"
affiliation: "Slow Rush Studios"
image: "/images/companies/slow-rush-logo.webp"
- name: "This is You"
topic: "Audience members demo projects"
# Trade Show Information
trade_show:
@@ -64,6 +70,29 @@ previous_events:
show_description: true
---
Handmade Seattle is our flagship conference for low-level programmers worldwide: two days packed with short impactful talks, demos, and a trade show! The third day is for meetups across the city.
**Saturday Schedule (Seattle Timezone)**
We're famously hybrid - attend in person at the iconic Seattle Center or join remotely from anywhere. All talks and demos are streamed professionally, along with a [private](https://chat.handmadecities.com) chat server for live Q&A.
- [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.

View File

@@ -6,7 +6,7 @@ draft: false
layout: "tickets"
features:
- title: "Discounts Extended Until Sunday, June 22nd"
- title: "Discounts Until Friday, August 1st 2025"
title_class: "text-center text-white mt-2 md:mt-8 lg:mt-8 xl:mt-8 2xl:mt-8"
side: "center"
content_class: "mt-16 pt-0 pb-0 text-white"
@@ -17,8 +17,7 @@ features:
end_img: "/images/software-15.png"
end_img_class: "relative h-96 bg-contain bg-bottom bg-repeat-x"
description_class: "mt-4 mb-20"
description: |
Early-bird tickets for our annual tech conferences. Discounts are for a limited time only.
description: ""
tickets:
- title: "Physical Track"
title_class: "text-white"
@@ -34,11 +33,10 @@ features:
price_class: "text-orange-500"
price: "199"
button:
title: "Register"
title: "Unavailable"
class: "bg-transparent border border-orange-500 rounded-md cursor-pointer hover:bg-orange-500 hover:border-orange-500 hover:text-white focus-within:bg-orange-500 focus-within:border-orange-500 focus-within:text-white"
url: "https://book.stripe.com/fZe4gq8hBdhraGcfZP"
url: "/"
alt_title: "PayPal"
alt_paypal_id: "paypal-hmb-physical-ticket"
alt_class: "text-sm hover:underline mt-4"
features_class: "text-white"
features:
@@ -58,12 +56,11 @@ features:
price: "199"
original_price: "$250"
button:
title: "Register"
title: "Unavailable"
button_class: "seattle-bg"
class: "bg-transparent border border-orange-500 rounded-md cursor-pointer hover:bg-orange-500 hover:border-orange-500 hover:text-white focus-within:bg-orange-500 focus-within:border-orange-500 focus-within:text-white"
url: "https://book.stripe.com/14k8wG1Td6T38y45la"
url: "/"
alt_title: "PayPal"
alt_paypal_id: "paypal-hms-physical-ticket"
alt_class: "text-sm hover:underline mt-4"
features_class: "text-white text-center"
features:
@@ -84,12 +81,10 @@ features:
original_price: "$400"
features_class: "text-white"
button:
title: "Register"
title: "Unavailable"
class: "bg-transparent border border-orange-500 rounded-md cursor-pointer hover:bg-green-500 hover:border-green-500 hover:text-white focus-within:bg-green-500 focus-within:border-green-500 focus-within:text-white"
url: "https://book.stripe.com/bIYbISdBV4KV15C7tk"
url: "/"
alt_title: "PayPal"
alt_paypal_id: "paypal-hmc-physical-ticket"
alt_class: "text-sm hover:underline mt-4"
features:
- text: "Boston + Seattle Tickets"
text_class: "font-black"
@@ -131,11 +126,10 @@ features:
price_class: "text-orange-500"
price: "59"
button:
title: "Register"
title: "Unavailable"
class: "bg-transparent border border-orange-500 rounded-md cursor-pointer hover:bg-orange-500 hover:border-orange-500 hover:text-white focus-within:bg-orange-500 focus-within:border-orange-500 focus-within:text-white"
url: "https://book.stripe.com/cN29AKfK3dhrg0wdRF"
url: "/"
alt_title: "PayPal"
alt_paypal_id: "paypal-online-ticket"
alt_class: "text-sm hover:underline mt-4"
features_class: "text-black dark:text-white"
features:
@@ -155,11 +149,10 @@ features:
price: "99"
original_price: ""
button:
title: "Register"
title: "Unavailable"
class: "bg-transparent border border-orange-500 rounded-md cursor-pointer hover:bg-green-500 hover:border-green-500 hover:text-white focus-within:bg-green-500 focus-within:border-green-500 focus-within:text-white"
url: "https://book.stripe.com/aEUeV4fK36T37u0cNF"
url: "/"
alt_title: "PayPal"
alt_paypal_id: "paypal-online-ticket-premium"
alt_class: "text-sm hover:underline mt-4"
features_class: "text-black dark:text-white"
features:

View 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.

View 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)!

View 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

View File

@@ -0,0 +1,14 @@
+++
url = "/invite-success"
title="Complete"
subtitle="Invite Successful"
main_image=""
+++
#### Congrats!
You've invited a fellow human to our Handmade Revolt. If necessary, ask them to check the junk folder and mark us as safe!
Ready to [send another](/invite)?
⚠️ We use an invite tree [inspired](https://lobste.rs/about#invitations) by the Lobsters community: YOU are responsible for the users you invite, plus any users they've invited (and so on.)

View 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.
Were here to promote software quality, one meetup at a time.

View File

@@ -0,0 +1,26 @@
{{ define "main" }}
<section class="section">
<div class="container max-w-xl">
<h1 class="mb-4 text-3xl font-bold">{{ .Title }}</h1>
<p class="mb-8">Join our community chat or help it grow by inviting someone you trust.</p>
<div class="space-y-6">
<a href="/revolt/" class="block rounded border border-gray-300 p-6 hover:border-blue-500 hover:shadow-md transition">
<h2 class="text-xl font-semibold text-gray-900">Apply to Join</h2>
<p class="mt-2">
New to the community? Submit an application to join our Revolt chat server.
</p>
</a>
<a href="/invite/" class="block rounded border border-gray-300 p-6 hover:border-blue-500 hover:shadow-md transition">
<h2 class="text-xl font-semibold text-gray-900">Invite Someone</h2>
<p class="mt-2">
Already a member? Vouch for someone you know and send them an invite code.
</p>
</a>
</div>
</div>
</section>
{{ end }}

View File

@@ -23,7 +23,7 @@
<div class="inline-block bg-[#1a1a1a] p-4 rounded-lg mb-4">
<i class="fa fa-calendar text-2xl text-[#e63946]"></i>
</div>
<h2 class="text-xl md:text-2xl font-semibold text-white mb-2">Conference Dates</h2>
<h2 class="text-xl md:text-2xl font-semibold text-white mb-2">Event Dates</h2>
<p class="text-lg text-gray-200">{{ .Params.event_dates | default "June 10-11, 2025" }}</p>
{{ if .Params.registration_date }}
<p class="text-sm text-gray-400 mt-2">Submission deadline: {{ .Params.registration_date }}</p>
@@ -50,7 +50,7 @@
<!-- Initial Speakers Section (if available) -->
{{ if .Params.initial_speakers }}
<div class="mt-6">
<h3 class="text-xl font-semibold text-white mb-4 text-left">Initial Lineup</h3>
<h3 class="text-xl font-semibold text-white mb-4 text-left">Presenter Lineup</h3>
<div class="grid grid-cols-1 md:grid-cols-2 gap-4">
{{ range .Params.initial_speakers }}
<div class="bg-[#1a1a1a] p-4 rounded-lg flex items-center">
@@ -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>

View File

@@ -0,0 +1,71 @@
{{ 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" style="border-radius: 20px;">
<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 text-gray-900 focus:border-blue-500 focus:outline-none" />
</div>
<hr>
<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 text-gray-900 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 text-gray-900 focus:border-blue-500 focus:outline-none" />
</div>
<div class="flex items-center gap-2 mt-1">
<input type="checkbox" id="show-password" class="h-4 w-4" />
<label for="show-password">Show password</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 text-gray-900 focus:border-blue-500 focus:outline-none"></textarea>
</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 id="meatspace-note" style="display: none;">
This person will be granted a <a href="https://guide.handmadecities.com/docs/chat/#verified-human-badge" class="text-blue-600 underline">Verified Human</a> badge.
</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>forbidden.</strong>
</p>
</form>
</div>
<script>
document.getElementById("meatspace").addEventListener("change", function() {
document.getElementById("meatspace-note").style.display = this.checked ? "block" : "none";
});
document.getElementById("show-password").addEventListener("change", function() {
document.getElementById("revolt-password").type = this.checked ? "text" : "password";
});
</script>
</section>
{{ end }}

View 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: 20px;">
<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 }}

View File

@@ -37,12 +37,14 @@
<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>
<option value="Dallas">Dallas</option>
<option value="Denver">Denver</option>
<option value="Dublin">Dublin</option>
<option value="Hawaii">Hawaii</option>
<option value="Houston">Houston</option>
<option value="Istanbul">Istanbul</option>
<option value="Lisbon">Lisbon</option>
@@ -51,6 +53,7 @@
<option value="Madrid">Madrid</option>
<option value="Miami">Miami</option>
<option value="Minneapolis">Minneapolis</option>
<option value="Montreal">Montreal</option>
<option value="Moscow">Moscow</option>
<option value="Nashville">Nashville</option>
<option value="New Orleans">New Orleans</option>
@@ -63,12 +66,13 @@
<option value="Rome">Rome</option>
<option value="San Antonio">San Antonio</option>
<option value="San Diego">San Diego</option>
<option value="Tokyo">Tokyo</option>
<option value="San Juan">San Juan</option>
<option value="Toronto">Toronto</option>
<option value="Valencia">Valencia</option>
<option value="Vienna">Vienna</option>
<option value="Warsaw">Warsaw</option>
<option value="Zurich">Zurich</option>
<option value="Saudi Arabia">Saudi Arabia</option>
</select>
</div>
@@ -92,5 +96,9 @@
</button>
</form>
<br>
<hr>
<br>
<p>Not on the wishlist? Reach out at support@handmadecities.com</p>
<br>
</div>
{{ end }}

View File

@@ -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 }}

View File

@@ -1,5 +1,15 @@
{{ define "main" }}
{{ partial "page-header-rss" . }}
<div class="mb-6 text-center">
<a href="{{ "/news/index.xml" | relURL }}" class="btn flex items-center gap-2 justify-center" aria-label="Subscribe to Handmade Cities News RSS">
<svg width="18" height="18" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" focusable="false">
<path d="M4 11a1 1 0 100 2c5.523 0 10 4.477 10 10a1 1 0 102 0c0-6.627-5.373-12-12-12z"/>
<path d="M4 4a1 1 0 100 2c8.284 0 15 6.716 15 15a1 1 0 102 0C23 11.85 12.15 1 4 1a1 1 0 100 3z"/>
<circle cx="5" cy="19" r="2"/>
</svg>
<span>RSS</span>
</a>
</div>
<section class="section">
<div class="container">

BIN
static/images/chat.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 730 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 192 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 552 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 405 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 339 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 303 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 884 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 178 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 315 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 149 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 251 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 562 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 313 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 282 KiB

Some files were not shown because too many files have changed in this diff Show More