Initial commit
|
|
@ -0,0 +1,5 @@
|
||||||
|
+++
|
||||||
|
title = '{{ replace .File.ContentBaseName "-" " " | title }}'
|
||||||
|
date = {{ .Date }}
|
||||||
|
draft = true
|
||||||
|
+++
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
"compilerOptions": {
|
||||||
|
"baseUrl": ".",
|
||||||
|
"paths": {
|
||||||
|
"*": [
|
||||||
|
"../themes/hugo-mod-jslibs-dist/popperjs/package/dist/cjs/*",
|
||||||
|
"../themes/twbs/bootstrap/js/*"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,90 @@
|
||||||
|
---
|
||||||
|
title: "Chat Server"
|
||||||
|
weight: 400
|
||||||
|
icon: "chat"
|
||||||
|
description: "How to access the Revolt instance."
|
||||||
|
---
|
||||||
|
|
||||||
|
We've tried many services: we dabbled on IRC, worked [closely](https://archive.is/IkHGh) with the Matrix team and even [attempted](https://handmadecities.com/news/new-discord-server/) a Discord server. Ultimately we've [landed](https://handmadecities.com/news/revolt-against-discord/) with Revolt.
|
||||||
|
|
||||||
|
It is our home from now on.
|
||||||
|
|
||||||
|
## Joining Revolt
|
||||||
|
|
||||||
|
Our Revolt [instance](https://revolt.handmadecities.com) requires users to register an account:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Notice how an **invite code** is needed to complete registration:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
In order to receive one, the user [submits an application](https://handmadecities.com/revolt). We ask all applicants to reveal their human identity during the application process. Applying is trivial - fill in an email address, real name and optionally a personal website. The more believable the application (read: not a bot) the higher the chances of getting an invite.
|
||||||
|
|
||||||
|
The application is submitted to `support@handmadecities.com`. The founder or his volunteer staff typically reviews it within three business days.
|
||||||
|
|
||||||
|
{{< alert context="primary" text="Meetup hosts also have the ability to send invites. Whoever attends a meetup may request one from the host." />}}
|
||||||
|
|
||||||
|
After approval, users can register with any username. This offers some degree of privacy when interacting with the community at large.
|
||||||
|
|
||||||
|
## Two Emails
|
||||||
|
|
||||||
|
When a user is approved to join, **they should have two emails in their Inbox:**
|
||||||
|
|
||||||
|
1. First email is to register a new account with the invite code.
|
||||||
|
2. The remaining one is an invite to join the actual server.
|
||||||
|
|
||||||
|
One should follow the proper order of operations.
|
||||||
|
|
||||||
|
## Going Mobile
|
||||||
|
|
||||||
|
Revolt's mobile app doesn't support custom domains yet. Instead, we must install our Revolt instance as a Progressive Web App (PWA).
|
||||||
|
|
||||||
|
Please visit [revolt.handmadecities.com](https://revolt.handmadecities.com) on the phone's native browser (e.g. Safari on iOS), then look for an **Add to Homescreen** option (or similar):
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Our Revolt instance should now be available like any other app.
|
||||||
|
|
||||||
|
**Turning on Mobile Notifications**
|
||||||
|
|
||||||
|
First select the gear icon to go into settings:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Then we find and choose **Notifications**:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Now ensure the setting **Enable Push Notifications** is checked.
|
||||||
|
|
||||||
|
{{< alert context="primary" text="Mobile notifications only work when a user is tagged or pinged directly." />}}
|
||||||
|
|
||||||
|
## Verified Human Badge
|
||||||
|
|
||||||
|
The **Verified Human** badge is granted to users we've met in person:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
The most efficient way to receive a badge is to attend a [meetup](/docs/meetups), because the host can invite people into the chat during this time (automatically marking them verified.)
|
||||||
|
|
||||||
|
Alternatively an *existing* Verified Human may vouch for someone they've met in real life.
|
||||||
|
|
||||||
|
{{< alert context="primary" text="Currently only [the founder](/docs/support/contact/) can manually grant badges, so the appeal is made to him." />}}
|
||||||
|
|
||||||
|
## Limitations
|
||||||
|
|
||||||
|
Revolt is known as Discord Lite because of some missing features. The quirks or limitations are as follows:
|
||||||
|
|
||||||
|
1. **Can't point Revolt app to custom domain.** This is discussed under [Going Mobile](/docs/chat/#going-mobile).
|
||||||
|
2. **Missing bells & whistles**. There’s no message pinning. No threads. Strange restrictions apply with emoji reactions.
|
||||||
|
3. **Lack of end-to-end encryption.** Discord has this issue too. Handmade Cities policy is to safeguard private DMs and never inspect their contents.
|
||||||
|
|
||||||
|
These are all minor irritations to us, not deal breakers.
|
||||||
|
|
||||||
|
{{< alert context="warning" text="NEVER disclose sensitive material on our servers. Instead, one should ask the person they're talking to for their [Signal](https://signal.org) handle and hop over there." />}}
|
||||||
|
|
||||||
|
|
||||||
|
## Revolt Rebrand
|
||||||
|
|
||||||
|
Handmade Cities is aware Revolt is [rebranding](https://stoat.chat/updates/long-live-stoat) to Stoat. However, their efforts are in flux and nothing has fully stabilized. Since we operate our own instance, we will retain the Revolt brand this year (2026) and decide whether to switch to Stoat in 2027.
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
---
|
||||||
|
title: "Contributing"
|
||||||
|
weight: 600
|
||||||
|
icon: "heart_plus"
|
||||||
|
description: "Help us improve Handmade Cities!"
|
||||||
|
---
|
||||||
|
|
||||||
|
Intro text for the section landing page (optional). This page can show up when you click the section header.
|
||||||
|
|
@ -0,0 +1,49 @@
|
||||||
|
---
|
||||||
|
title: "Funding"
|
||||||
|
weight: 10
|
||||||
|
---
|
||||||
|
|
||||||
|
Handmade Cities (HMC) is a small business wholly owned and operated by [Abner Coimbre](https://abner.page). HMC offers the following community services for free:
|
||||||
|
|
||||||
|
## Free Community Services
|
||||||
|
|
||||||
|
- Job referral program: see [Employment Opportunities](/docs/support/employment/)
|
||||||
|
- Mass-newsletter system used by [local meetups](/docs/meetups)
|
||||||
|
- Training and guidance for [meetup hosts](/docs/meetups/hosts)
|
||||||
|
- Self-hosted [chat server](/docs/chat)
|
||||||
|
|
||||||
|
These genuinely cost time, money, or both. However, it's entirely self-funded by HMC. For example we never charge fees when connecting employers with engineers.
|
||||||
|
|
||||||
|
{{< alert context="warning" text="We reserve the right to deny service if we don't align on values." />}}
|
||||||
|
|
||||||
|
## How We Make Profits
|
||||||
|
|
||||||
|
The founder makes a profit indirectly when community members subscribe to his indie project [Terminal Click](https://terminal.click) (TC). From a pure business lens, we might see HMC as a **loss leader** to occasionally promote our commercial software.
|
||||||
|
|
||||||
|
{{< alert context="danger" text="Great care is taken to prevent Handmade Cities from turning into one giant advertisement. Contact support@handmadecities.com if you've felt otherwise." />}}
|
||||||
|
|
||||||
|
Subscribers can never pay more than the highest tier, capped at 20.00 USD per month: this eliminates whale customers exerting influence on leadership.
|
||||||
|
|
||||||
|
Revenue from TC is sufficient to cover the founder's basic needs: rent, groceries, healthcare and simple savings. We ask community members to exercise patience whenever TC is briefly advertised. (It helps to envision an annoying sponsor from your favorite YouTuber.)
|
||||||
|
|
||||||
|
Prior to this we sold tickets for indie conferences, but it's [no longer](https://handmadecities.com/news/winding-down/) feasible to make a living from it.
|
||||||
|
|
||||||
|
## Why We're Not a Non-Profit
|
||||||
|
|
||||||
|
Since HMC is *building communities* we're often asked why we don't switch to a 501(c)(3) or 501(c)(6).
|
||||||
|
|
||||||
|
Non-profits and open-source software are gaining in strength (which is great!) but this cannot be the sole method for transforming our industry. We must also flood the market with indie devs and small shops, and we need them to sell closed-source software *for personal gain*.
|
||||||
|
|
||||||
|
That's not a dirty phrase.
|
||||||
|
|
||||||
|
This is a very competitive approach for keeping Big Tech afraid and on its toes. It makes perfect sense for HMC to practice what it preaches: we've been community-building as a small business for a decade.
|
||||||
|
|
||||||
|
{{< alert context="primary" text="We also acknowledge the dangers of venture capital and acquisitions. Bottomless greed plagues our society: we **strongly prefer it** when devs retain ownership and serve customers directly." />}}
|
||||||
|
|
||||||
|
Valve is another great example, where they hire community managers for the Steam platform.
|
||||||
|
|
||||||
|
## Legacy Donations
|
||||||
|
|
||||||
|
We have a Donorbox with some monthly donors remaining. We're grateful, but we no longer link to it anywhere: donations are declining over time, getting replaced with subscriptions to TC.
|
||||||
|
|
||||||
|
If the reader wishes to contribute, without subscribing to TC, we can always use [more volunteers](/docs/contributing/volunteer)!
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
---
|
||||||
|
title: "Volunteering"
|
||||||
|
weight: 20
|
||||||
|
---
|
||||||
|
|
||||||
|
This page is a work-in-progress. However, we could use immediate help with the following:
|
||||||
|
|
||||||
|
- Subscribe to a [meetup](https://handmadecities.com/meetups) near you and tell your friends about it!
|
||||||
|
- If you're a programmer, become a meetup host for your area
|
||||||
|
- Employers should notify us about job offers. We'll introduce you to competent candidates at [no cost](/docs/contributing/funding/#free-community-services) to you
|
||||||
|
|
||||||
|
[Contact us](/docs/support/contact) anytime. Our response time is typically within three business days.
|
||||||
|
|
@ -0,0 +1,34 @@
|
||||||
|
---
|
||||||
|
title: "Coworking"
|
||||||
|
weight: 500
|
||||||
|
icon: "computer"
|
||||||
|
description: "Learn how our coworking sessions work."
|
||||||
|
---
|
||||||
|
|
||||||
|
We have in-person [meetups](/docs/meetups) all year round. Usually, these are just monthly meetups: once a month we demo the coolest projects or have round-table discussions.
|
||||||
|
|
||||||
|
However, some cities also offer co-working sessions: these are more informal and happen more regularly.
|
||||||
|
|
||||||
|
## What to Expect
|
||||||
|
|
||||||
|
We're a mixed bag of programmers in these sessions. Some do remote work for their normal 9-5 job (they even have Slack open!) while others are indie devs working on a serious product. There's also those who take time off their work for a side project.
|
||||||
|
|
||||||
|
At each session we introduce ourselves and briefly explain what we’re working on for the day. Then we get right to it!
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Sometimes we pause to point at our progress or ask for technical feedback. And sometimes, a couple folks or so team up for a new project! The ultimate goal, however, is to feel connected in meatspace.
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
## Does Your City Offer Coworking?
|
||||||
|
|
||||||
|
First and foremost, please browse the cities on the [Meetups](https://handmadecities.com/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.
|
||||||
|
|
||||||
|
Then you should email the meetup host and ask whether they offer co-working sessions (email address is on the city's meetup page.)
|
||||||
|
|
||||||
|
{{< alert context="primary" text="Coworking sessions are still new and schedules vary wildly across cities. This is why we need to explicitly email to inquire about them." />}}
|
||||||
|
|
||||||
|
## Notice to Washington Residents
|
||||||
|
|
||||||
|
At the time of writing we only offer a [Seattle](https://handmadecities.com/meetups/seattle) mailing list, which is *also* used for events in nearby cities e.g. Kirkland coworking. You should subscribe to Seattle for these so-called "Seattle area" invitations.
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
---
|
||||||
|
title: "Meetup Guide"
|
||||||
|
weight: 300
|
||||||
|
icon: "local_cafe"
|
||||||
|
description: "Learn how our offline meetups work."
|
||||||
|
---
|
||||||
|
|
||||||
|
Intro text for the section landing page (optional). This page can show up when you click the section header.
|
||||||
|
|
@ -0,0 +1,34 @@
|
||||||
|
---
|
||||||
|
title: "Meetup Hosts"
|
||||||
|
weight: 20
|
||||||
|
---
|
||||||
|
|
||||||
|
Meetup hosts are the lifeblood of Handmade Cities, and we depend on them to grow decentralized offline meetups all over the world. In this guide we discuss their responsibilities before [deciding](/docs/contributing/volunteer) to volunteer.
|
||||||
|
|
||||||
|
## Meetup Principles
|
||||||
|
|
||||||
|
We require every meetup host to abide by two principles:
|
||||||
|
|
||||||
|
1. You care about software quality
|
||||||
|
2. Your love for the craft extends *beyond* a paycheck
|
||||||
|
|
||||||
|
We don't want our coding meetups to devolve into a generic networking club, padding GitHub stars and sharing resumes. We've met too many people perfectly content with stitching together black boxes or calling magic functions, without an ounce of technical curiosity. **Those programmers don't belong with us.**
|
||||||
|
|
||||||
|
As the host it's your burden to call out uncaring programmers in a civil manner, one-on-one, and if they don't change their ways removing them from the group. In our experience folks will come around or simply leave after talking to them respectfully.
|
||||||
|
|
||||||
|
{{< alert context="primary" text="Whoever's in real need of a job can look into our [Job Referral Program](/docs/support/employment)" />}}
|
||||||
|
|
||||||
|
## Mentoring Services
|
||||||
|
|
||||||
|
Handmade Cities offers free mentoring to all potential hosts. We realize organizing a meetup is a nerve-wracking ordeal and our ultimate goal is getting you comfortable with this. The more social butterflies among us programmers the better!
|
||||||
|
|
||||||
|
## Sponsor-Free Events
|
||||||
|
|
||||||
|
We are 100% indie and [very vocal](https://handmadecities.com/about) about having zero sponsors. If we discover your in-person event is financially backed by some entity, **the ban is immediate** and publicly disclosed to the community.
|
||||||
|
|
||||||
|
|
||||||
|
{{< alert context="danger" text="If you're searching for loopholes (\"a single employee sponsored me, not the company!\") you're doing everything wrong." />}}
|
||||||
|
|
||||||
|
Notice we're [not against](/docs/contributing/funding/#why-were-not-a-non-profit) making profits: your meetup group may occasionally promote commercial projects during a demo or presentation, as long as people dive into the juicy technical details.
|
||||||
|
|
||||||
|
Feeling undeterred? [Reach out](/docs/support/contact) and let's get to work!
|
||||||
|
|
@ -0,0 +1,37 @@
|
||||||
|
---
|
||||||
|
title: "Regular Members"
|
||||||
|
weight: 10
|
||||||
|
---
|
||||||
|
|
||||||
|
Handmade meetups are monthly gatherings for programmers who enjoy digging into how computers actually work. We also welcome other tech workers, such as artists and cybersecurity professionals, to help us craft polished and secure software.
|
||||||
|
|
||||||
|
The community is famous for its obsession with performance and making things snappy or buttery smooth. As we enter our second decade, Handmade Cities has a vested interest in proper UI and UX (affectionately dubbed [UXUI](https://peter-slattery.github.io/handmade-prototyping/), pronounced ooks-wee.)
|
||||||
|
|
||||||
|
Performance is rather useless if we ship another GIMP.
|
||||||
|
|
||||||
|
|
||||||
|
## Meetup Structure
|
||||||
|
|
||||||
|
How a local meetup is run depends on the [meetup host](/docs/meetups/hosts) in question. However, the overall structure goes like this:
|
||||||
|
|
||||||
|
1. The host sends a newsletter announcing the monthly meetup
|
||||||
|
2. You RSVP if you wish to attend
|
||||||
|
3. Meetup takes place at a coffee shop for a couple of hours
|
||||||
|
4. Folks demo their software projects
|
||||||
|
5. Optionally, group has round-table discussions on a hot programming topic
|
||||||
|
|
||||||
|
We then head out for dinner and drinks afterwards. What's important to remember is this is a basic template. Most of our meetups follow it, but hosts are allowed to deviate when it makes sense for the group.
|
||||||
|
|
||||||
|
Group size also varies depending on city. At the time of writing our biggest meetup ([Seattle](https://handmadecities.com/meetups/seattle)) exceeds thirty-plus any given month, while new ones ([Tokyo](https://handmadecities.com/meetups/tokyo)) hover at just a half dozen or so. Most cities fall somewhere in between.
|
||||||
|
|
||||||
|
## Meetup Newsletter
|
||||||
|
|
||||||
|
You can subscribe to a local newsletter by visiting [Meetups](https://handmadecities.com/meetups) and finding the city or region nearest to you. This way you'll receive meetup invites in the Inbox.
|
||||||
|
|
||||||
|
{{< alert context="primary" text="If you're unsure about the next meetup, message the host directly. Email address is on the city's meetup page." />}}
|
||||||
|
|
||||||
|
## Meetup Wishlist
|
||||||
|
|
||||||
|
Unfortunately we haven't taken over the world yet, so there's cities or countries we don't operate in. Please wishlist a "dormant" location by visiting [Meetups](https://handmadecities.com/meetups) and scrolling to the bottom of the page.
|
||||||
|
|
||||||
|
We will reach out as soon as we've amassed enough subscribers and found a suitable host.
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
---
|
||||||
|
title: "Quickstart"
|
||||||
|
weight: 100
|
||||||
|
icon: "speed"
|
||||||
|
description: "Take advantage of Handmade Cities right off the gate."
|
||||||
|
---
|
||||||
|
|
||||||
|
Welcome to Handmade Cities!
|
||||||
|
|
||||||
|
Many of us are [systems programmers](https://en.wikipedia.org/wiki/Systems_programming), and we're often *really* into making video games, but we're also a community of software professionals who **adore the craft in general** and **care about quality**. If you embody our ethos one way or another you're more than welcome here.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
*One of our gatherings in Boston.* ([Source](/images/hmb_source.webp))
|
||||||
|
|
||||||
|
It wouldn't be **Quickstart** if this page kept droning on, so the two fastest ways to jump in are:
|
||||||
|
1. [Subscribe](https://handmadecities.com/meetups) to a local meetup near you
|
||||||
|
2. [Submit](https://handmadecities.com/revolt) an application to join our [chat server](/docs/chat)
|
||||||
|
|
||||||
|
You might also [volunteer](/docs/contributing/volunteer) to help us succeed. We'll see you soon!
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
---
|
||||||
|
title: "Support"
|
||||||
|
weight: 700
|
||||||
|
icon: "concierge"
|
||||||
|
description: "Need some help?"
|
||||||
|
---
|
||||||
|
|
||||||
|
Intro text for the section landing page (optional). This page can show up when you click the section header.
|
||||||
|
|
@ -0,0 +1,28 @@
|
||||||
|
---
|
||||||
|
title: "Contact Us"
|
||||||
|
weight: 20
|
||||||
|
---
|
||||||
|
|
||||||
|
As we [don't have](/docs/timeline/2026/#mass-delete-social-media) social media, the most efficient way to reach out is by sending an email.
|
||||||
|
|
||||||
|
## Our Founder
|
||||||
|
|
||||||
|
Our founder is [Abner Coimbre](https://abner.page) and may be contacted at `abner@handmadecities.com`.
|
||||||
|
|
||||||
|
Allow up to three business days to receive a response. As community organizer his Inbox is perpetually cluttered: send a reminder after three business days if there's no response.
|
||||||
|
|
||||||
|
It might take multiple poking attempts to get his attention.
|
||||||
|
|
||||||
|
## Editor
|
||||||
|
|
||||||
|
Zac Nowicki is editor and maintainer of Handmade Cities. He's also tech lead for [Kagi Search](https://kagi.com)—opinions here do not represent his employer.
|
||||||
|
|
||||||
|
Find him at `zac@handmadecities.com`.
|
||||||
|
|
||||||
|
## Support Staff
|
||||||
|
|
||||||
|
In order to ease the burden on Abner you may email support staff at `support@handmadecities.com`. Trusted community members have access to this Inbox and your chances of getting a faster reply goes up.
|
||||||
|
|
||||||
|
## Meetup Hosts
|
||||||
|
|
||||||
|
Meetup hosts have [their own](https://handmadecities.com/meetups) dedicated pages with corresponding email addresses. Note that we don't control office hours, so response times may vary.
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
---
|
||||||
|
title: "Employment Opportunities"
|
||||||
|
weight: 10
|
||||||
|
---
|
||||||
|
|
||||||
|
Handmade Cities offers a job referral program as a free [community service](/docs/contributing/funding/#free-community-services). We have a solid track record, for many years, where dozens of companies hire Handmade devs thanks to our referrals!
|
||||||
|
|
||||||
|
## For Employers
|
||||||
|
|
||||||
|
If you're a boss, hiring manager, or simply a well-connected engineer [contact us](/docs/support/contact) if you're looking to work with systems programmers who care about making quality software.
|
||||||
|
|
||||||
|
## For Engineers
|
||||||
|
|
||||||
|
Software engineers wanting to get hired by Handmade-friendly companies should [reach out](/docs/support/contact) as well. We have a priority list which works out as follows:
|
||||||
|
1. Laid-off engineers with [dependents](https://www.irs.gov/credits-deductions/individuals/dependents)
|
||||||
|
2. Juniors unable to find employment after graduation
|
||||||
|
3. Laid-off engineers in general
|
||||||
|
4. Everyone else
|
||||||
|
|
||||||
|
Do not be discouraged if you're bottom of the list. We're not a charity. We value competence and technical excellence above all else, so we'll take your resume seriously if you show us what you're made of.
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
---
|
||||||
|
title: "2026"
|
||||||
|
weight: 10
|
||||||
|
---
|
||||||
|
|
||||||
|
Handmade Cities (HMC) calls this year a period of *quiet growth*: making sure offline [meetups](/docs/meetups) reach a critical mass of attendees. The term offline is very important, because social media **may not** be used for our own advertisement.
|
||||||
|
|
||||||
|
## Mass-Delete Social Media
|
||||||
|
|
||||||
|
Our founder's [made it clear](https://abner.page/post/exit-the-feed/) competent programmers must leave for-profit social media. In January 2026 the following accounts will be deleted:
|
||||||
|
- Discord Servers ([read more](https://handmadecities.com/news/revolt-against-discord))
|
||||||
|
- YouTube Channels
|
||||||
|
- Twitch Channels
|
||||||
|
- GitHub accounts
|
||||||
|
|
||||||
|
This includes Abner's own profiles, not just HMC. We're not linking them here, and we've already deleted Twitter/X, Instagram/Threads, Bluesky and Mastodon prior to 2026.
|
||||||
|
|
||||||
|
Since it's impractical to leave this world *completely*, we do stick with Hacker News and Lobsters as needed, which we personally control through [FreshRSS](https://freshrss.org/index.html).
|
||||||
|
## Neighborhood Marketing
|
||||||
|
|
||||||
|
Spring 2026 we're launching a professional campaign across all Handmade cities to post flyers, pamphlets and zines for coffee shops, bulleting boards, and even out on the streets. It will be done tastefully, and for strategic reasons this is all we have to say on the matter.
|
||||||
|
|
||||||
|
## World Tour
|
||||||
|
|
||||||
|
As part of the goal to grow offline, Abner is visiting [most cities](https://handmadecities.com/meetups) with a Handmade presence to attend their local meetups. As we're based off Seattle, we're starting with the nearest ones and expanding from there.
|
||||||
|
|
||||||
|
Interested readers should subscribe to the [public newsletter](https://handmadecities.com/news) to find out where Abner is located all year round. Travel begins in March.
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
---
|
||||||
|
title: "2027"
|
||||||
|
weight: 20
|
||||||
|
---
|
||||||
|
|
||||||
|
The Great Convention
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
---
|
||||||
|
title: "Timeline"
|
||||||
|
weight: 200
|
||||||
|
icon: "calendar_clock"
|
||||||
|
description: "The community roadmap."
|
||||||
|
---
|
||||||
|
|
||||||
|
Intro text for the section landing page (optional). This page can show up when you click the section header.
|
||||||
|
|
@ -0,0 +1,139 @@
|
||||||
|
# Note: Template blocks require a 'weight' parameter so they're correctly ordered on the landing page
|
||||||
|
|
||||||
|
# Hero
|
||||||
|
hero:
|
||||||
|
enable: true
|
||||||
|
weight: 10
|
||||||
|
template: hero
|
||||||
|
|
||||||
|
backgroundImage:
|
||||||
|
path: "images/templates/hero"
|
||||||
|
filename:
|
||||||
|
desktop: "gradient-desktop.webp"
|
||||||
|
mobile: "gradient-mobile.webp"
|
||||||
|
|
||||||
|
badge:
|
||||||
|
text: v0.5.0
|
||||||
|
color: primary # primary, secondary, success, danger, warning, info, light, dark
|
||||||
|
pill: false # boolean
|
||||||
|
soft: true # boolean
|
||||||
|
|
||||||
|
# titleLogo:
|
||||||
|
# path: "images/logos"
|
||||||
|
# filename: "title_logo.png"
|
||||||
|
# alt: "Lotus Docs Logo"
|
||||||
|
# height: 80px
|
||||||
|
|
||||||
|
title: "HMC Guide"
|
||||||
|
subtitle: Your **quick guide** to the Handmade Cities (HMC) community. Participate in real life with engineers who **love software quality**.
|
||||||
|
|
||||||
|
image:
|
||||||
|
path: "images" # path to image under configured assets directory. default 'images'
|
||||||
|
filename: "hmc_docs_screenshot.png" # filename of your hero image (including file extension)
|
||||||
|
alt: "HMC Docs Screenshot" # Optional but recommended
|
||||||
|
boxShadow: true # default 'false' (excludes .svg images)
|
||||||
|
rounded: true # round the image corners? default 'false' (excludes .svg images)
|
||||||
|
|
||||||
|
ctaButton:
|
||||||
|
icon: done_all
|
||||||
|
btnText: "Get Started"
|
||||||
|
url: "/docs"
|
||||||
|
cta2Button:
|
||||||
|
icon: keyboard_return
|
||||||
|
btnText: "Back to HMC"
|
||||||
|
url: "https://handmadecities.com"
|
||||||
|
|
||||||
|
info: "**Maintained** by [Zac Nowicki](/docs/support/contact/#editor)."
|
||||||
|
|
||||||
|
# Feature Grid
|
||||||
|
featureGrid:
|
||||||
|
enable: true
|
||||||
|
weight: 20
|
||||||
|
template: feature grid
|
||||||
|
|
||||||
|
title: "Why choose Handmade Cities?"
|
||||||
|
subtitle: "[Our founder](https://handmadecities.com/about) has organized the Handmade community for over a decade."
|
||||||
|
|
||||||
|
items:
|
||||||
|
- title: Touching Grass
|
||||||
|
icon: grass
|
||||||
|
description: Prefer meatspace over cyber
|
||||||
|
|
||||||
|
- title: No Black Boxes
|
||||||
|
icon: orders
|
||||||
|
description: Curiosity through systems programming
|
||||||
|
|
||||||
|
- title: Beyond a Paycheck
|
||||||
|
icon: digital_wellbeing
|
||||||
|
description: Love for the craft comes before profits
|
||||||
|
|
||||||
|
- title: Independent Culture
|
||||||
|
icon: looks_one
|
||||||
|
description: We're indie devs or just temporarily embarassed
|
||||||
|
|
||||||
|
- title: Engineering First
|
||||||
|
icon: logo_dev
|
||||||
|
description: And in general *tech workers* first
|
||||||
|
|
||||||
|
- title: Artists Welcome
|
||||||
|
icon: brush
|
||||||
|
description: "We can't innovate without polished [UXUI](https://peter-slattery.github.io/handmade-prototyping/)"
|
||||||
|
|
||||||
|
# Image compare
|
||||||
|
imageCompare:
|
||||||
|
enable: false
|
||||||
|
weight: 30
|
||||||
|
template: image compare
|
||||||
|
|
||||||
|
title: Customise The Lotus Docs Appearance
|
||||||
|
subtitle: Much of Lotus Docs' appearance can be customised. Dark mode is optional (enabled by default) and you can choose a Google font that suites you via the config parameters.
|
||||||
|
|
||||||
|
items:
|
||||||
|
- title: Dark Mode
|
||||||
|
config: {
|
||||||
|
startingPoint: 50,
|
||||||
|
addCircle: true,
|
||||||
|
addCircleBlur: false,
|
||||||
|
showLabels: true,
|
||||||
|
labelOptions: {
|
||||||
|
before: 'Dark',
|
||||||
|
after: 'Light',
|
||||||
|
onHover: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
imagePath: "images/screenshots"
|
||||||
|
imageBefore: "lotusdocs_dark_v0.8.webp"
|
||||||
|
imageAfter: "lotusdocs_light_v0.8.webp"
|
||||||
|
|
||||||
|
- title: Custom Fonts
|
||||||
|
config: {
|
||||||
|
controlColor: "#3C4257",
|
||||||
|
startingPoint: 25,
|
||||||
|
addCircle: true,
|
||||||
|
addCircleBlur: false,
|
||||||
|
showLabels: true,
|
||||||
|
labelOptions: {
|
||||||
|
before: 'Inter',
|
||||||
|
after: 'Life Saver',
|
||||||
|
onHover: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
imagePath: "images/screenshots"
|
||||||
|
imageBefore: "lotusdocs_google_font_demo_inter_screenshot.webp"
|
||||||
|
imageAfter: "lotusdocs_google_font_demo_lifesavers_screenshot.webp"
|
||||||
|
|
||||||
|
- title: Accent Color
|
||||||
|
config: {
|
||||||
|
startingPoint: 25,
|
||||||
|
addCircle: true,
|
||||||
|
addCircleBlur: true,
|
||||||
|
showLabels: true,
|
||||||
|
labelOptions: {
|
||||||
|
before: 'Blue',
|
||||||
|
after: 'Cardinal',
|
||||||
|
onHover: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
imagePath: "images/screenshots"
|
||||||
|
imageBefore: "lotusdocs_blue_theme_colour.webp"
|
||||||
|
imageAfter: "lotusdocs_cardinal_theme_colour.webp"
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
baseURL = '/'
|
||||||
|
languageCode = 'en-us'
|
||||||
|
title = 'Handmade Cities Guide'
|
||||||
|
enableEmoji = true
|
||||||
|
|
||||||
|
[module]
|
||||||
|
replacements = "github.com/colinwilson/lotusdocs -> lotusdocs, github.com/gohugoio/hugo-mod-bootstrap-scss -> hugo-mod-bootstrap-scss, github.com/gohugoio/hugo-mod-jslibs-dist/popperjs -> hugo-mod-jslibs-dist/popperjs, github.com/twbs/bootstrap -> twbs/bootstrap"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/colinwilson/lotusdocs"
|
||||||
|
disable = false
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gohugoio/hugo-mod-bootstrap-scss"
|
||||||
|
disable = false
|
||||||
|
|
||||||
|
[params]
|
||||||
|
[params.footer]
|
||||||
|
copyright = "© :YEAR: Handmade Cities. Docs licensed under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/)."
|
||||||
|
|
||||||
|
[params.social]
|
||||||
|
rss = true
|
||||||
|
|
||||||
|
[params.docs]
|
||||||
|
title = "HMC Guide"
|
||||||
|
darkMode = true
|
||||||
|
sidebarIcons = true
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
{"Target":"docs/scss/style.min.fa51420f186b8584d858e0a7c205656ee56f0eaeee0e2c8660dfcbf57c5bc83524a5a196ec71bbc8cd2762f12169b3be.css","MediaType":"text/css","Data":{"Integrity":"sha384-+lFCDxhrhYTYWOCnwgVlbuVvDq7uDiyGYN/L9XxbyDUkpaGW7HG7yM0nYvEhabO+"}}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
{"Target":"docs/scss/style.css","MediaType":"text/css","Data":{}}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
{"Target":"scss/style.css","MediaType":"text/css","Data":{}}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
{"Target":"scss/style.min.e24e975378012514e3c9409732c7537188ba2dc7f6b650df0cc536d6d1b133bd35a1d11a2df19698601273ca407abe56.css","MediaType":"text/css","Data":{"Integrity":"sha384-4k6XU3gBJRTjyUCXMsdTcYi6Lcf2tlDfDMU21tGxM701odEaLfGWmGASc8pAer5W"}}
|
||||||
|
After Width: | Height: | Size: 29 KiB |
|
After Width: | Height: | Size: 69 KiB |
|
After Width: | Height: | Size: 42 KiB |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 564 B |
|
After Width: | Height: | Size: 52 KiB |
|
After Width: | Height: | Size: 54 KiB |
|
After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 40 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 49 KiB |
|
After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 57 KiB |
|
After Width: | Height: | Size: 35 KiB |
|
After Width: | Height: | Size: 36 KiB |
|
After Width: | Height: | Size: 30 KiB |
|
After Width: | Height: | Size: 50 KiB |
|
After Width: | Height: | Size: 42 KiB |
|
After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 53 KiB |
|
After Width: | Height: | Size: 51 KiB |
|
After Width: | Height: | Size: 57 KiB |
|
After Width: | Height: | Size: 36 KiB |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 43 KiB |
|
After Width: | Height: | Size: 55 KiB |
|
After Width: | Height: | Size: 55 KiB |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 58 KiB |
|
After Width: | Height: | Size: 42 KiB |
|
After Width: | Height: | Size: 41 KiB |
|
After Width: | Height: | Size: 43 KiB |
|
After Width: | Height: | Size: 58 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 39 KiB |
|
After Width: | Height: | Size: 50 KiB |
|
After Width: | Height: | Size: 43 KiB |
|
After Width: | Height: | Size: 43 KiB |
|
After Width: | Height: | Size: 55 KiB |
|
After Width: | Height: | Size: 57 KiB |
|
After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 37 KiB |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 40 KiB |
|
After Width: | Height: | Size: 52 KiB |
|
After Width: | Height: | Size: 50 KiB |
|
After Width: | Height: | Size: 59 KiB |
|
After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 42 KiB |
|
After Width: | Height: | Size: 43 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 33 KiB |
|
After Width: | Height: | Size: 40 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 36 KiB |
|
After Width: | Height: | Size: 52 KiB |
|
After Width: | Height: | Size: 36 KiB |
|
After Width: | Height: | Size: 39 KiB |
|
After Width: | Height: | Size: 51 KiB |
|
After Width: | Height: | Size: 51 KiB |
|
After Width: | Height: | Size: 53 KiB |
|
After Width: | Height: | Size: 45 KiB |
|
After Width: | Height: | Size: 54 KiB |