All pages · Contributing
Help
Contributing
Add a job source, a starter list or a fix. Job sources for other countries are especially welcome.
Last updated 31 October 2026
RolePort is open source, and you don't need to be a developer to help. If a page here is wrong, use Edit this page on GitHub at the bottom of it.
Run RolePort locally
npm install cp .env.example .env.local npm run dev
No keys or database server are needed. npm run dev:lite runs the Lite edition on port 3100.
Before opening a pull request, run:
npx tsc --noEmit npm run lint npm test npm run build
CONTRIBUTING.md has the project layout and ground rules.
Add a job source
Know a board that publishes its jobs openly? Not a coder? Propose it and someone can build it.
To build it yourself, a source is one file in lib/jobs/sources/, one test against a saved sample response, and one line in registry.ts. It also needs a docs page here. Adding a job source has the source policy and a checklist. In short, core sources use official APIs, open data or pages the site allows to be read automatically, identify as RolePort, and never work around a refusal.
Add a starter list
The Popular employers lists are one JSON file per country in lib/companies/starters/:
[{ "name": "Example Labs", "ats": "greenhouse", "slug": "examplelabs" }]Only add companies whose public job feed answers and that have open jobs in that country now. A new country is a new file plus one line in lib/companies/starters.ts.
Improve these docs
Each page is one Markdown file in content/docs, and the sidebar is lib/docs/nav.ts. Fix the docs in the same pull request as the code they describe, and set updated: at the top of each page you change to today's date, which is the date readers see. npm test fails if a page is missing, has no date, a link inside the docs is broken, or a job source has no page.