Language · Inclusion · Awareness
Detect non-inclusive language and get contextual suggestions. Runs entirely in your browser via Pyodide — no data ever leaves your device.
Each language has its own folder under inclusivewriting/resources/.
The two main files per language are:
list.json — non-inclusive terms and their replacementspronouns.json — pronoun-specific suggestions
Languages are registered in
inclusivewriting/configuration.json — this is where the app discovers which files to load.
Open the list.json for the language you want to improve
(e.g. English → resources/en/list.json)
and add a new top-level entry using this structure:
{
"phrase-to-flag": {
"lexeme": ["https://www.wikidata.org/wiki/Lexeme:LXXXXX"],
"replacement": {
"preferred-alternative": {
"lexeme": ["https://www.wikidata.org/wiki/Lexeme:LYYYYY"],
"references": [
"https://source-that-recommends-this-replacement.example/"
]
}
}
}
}
lexeme to a Wikidata lexeme URL where one exists (use [] if unknown).python -m unittest tests.resource_schema_testpython -m tests.testsinclusivewriting/resources/<locale>/
(e.g. resources/de/ for German).
list.json and/or pronouns.json inside that folder, following the structure above.
inclusivewriting/configuration.json:
"de": [ "./resources/de/list.json", "./resources/de/pronouns.json" ]
pybabel init -i inclusivewriting/locales/inclusivewriting.bot -d inclusivewriting/locales/ -D inclusivewriting -l de,
then edit inclusivewriting/locales/de/LC_MESSAGES/inclusivewriting.po
and compile with pybabel compile -d inclusivewriting/locales -D inclusivewriting.
<option> for the new language to the <select> in docs/index.html.