Skip to content
ohmoveagain
0/70 · 0%
Community-maintained · open source · MIT licensed

Contribute

The Pipeline is only useful if it stays accurate. Help keep it that way.

Why contribute

Relocation rules change constantly. Every stage in the Pipeline cites an official source and a verified-on date. The longer those dates slip, the less useful the Pipeline becomes. Contributors are what keep it honest.

Every improvement ships as a public commit under the contributor’s name.

Who this is for

You are a good fit to contribute if any of these apply:

You do not need to be technical. Typo-level and copy-level improvements are just as valuable as new checklist items.

What you can contribute

Verify and refresh a source. Every checklist item links to an official government or EU page with an asOf date. If a source has moved, been re-numbered, or the underlying rule has changed, update the link and bump the date.

Add a missing checklist item. If a real step bit you during your own move and the Pipeline does not cover it, add it to the right stage with a source link.

Flag a gotcha. Each stage has a gotchas block. These are non-obvious traps that do not fit neatly into a checklist. Add yours.

Share field experience. Timings (“OIB took 3 hours in Zagreb, 3 days in Split”), costs, municipality-specific quirks — these live in item notes and gotchas.

Add a persona dimension. The Pipeline already filters by visa, family, and pets. If you notice a checklist item behaves differently for a persona you belong to, add an appliesTo block or propose a new persona dimension.

Improve the writing. Clearer copy, better formatting, fixing awkward English.

Translate. Thanks to the Pipeline’s data/strings split (see below), translating is mechanical: copy content/stages/<slug>.md to content/stages/<slug>.<lang>.md and rewrite only the string values. All URLs, dates, and filters stay canonical in data/stages/*.yaml — so a translation cannot drift from the source of truth.

How to contribute

The full source lives on GitHub. Three ways to send a change, in order of friction:

  1. Open an issue. Describe the change you would like to see. Fastest path if you are not comfortable editing files directly. Include a source link if you have one.
  2. Edit a file on GitHub and open a pull request. Every stage page has an “edit on GitHub” link. Click it, make the change in the browser, and GitHub will walk you through the pull request. No local setup required.
  3. Clone, edit, and open a pull request. Standard Hugo project. hugo server runs the site locally at http://localhost:1313/ohmoveagain/. Structural facts (URLs, asOf dates, persona filters) live in data/stages/*.yaml. Translatable strings (labels, notes, source labels) live in content/stages/*.md front-matter under itemStrings.<item-id>. Templates merge the two by item ID at build time.

Every pull request is reviewed publicly. Expect a response within a few days.

Quality bar

To keep the Pipeline trustworthy, contributions should meet a few ground rules:

What the Pipeline is not

The boundary on scope matters as much as the content itself. To keep the Pipeline usable:

License

All content is published under the MIT license. Reuse, adapt, and redistribute freely — attribution is appreciated but not required.

Contact

Open an issue on GitHub for anything public. For private questions (e.g. you want to contribute but would prefer not to attach your name to a sensitive immigration topic), the repository README lists a contact email.