Contribute

Add to the Archive

The archive grows one entry at a time. If you’ve found a fictional expletive that isn’t here, here’s how to add it.

Check first

Check the browse page first to make sure the entry doesn’t already exist. Use the search bar — we may have it under a slightly different spelling or franchise name.

How to contribute

Contributions are made via GitHub pull request to the main repository. Fork the repo, add your entry to data/entries.json, and open a PR. A maintainer will review it for completeness and accuracy.

Required fields

FieldTypeDescription
termstringThe fictional word or phrase, as it appears in source material.
slugstringURL-safe version of the term: lowercase, hyphens, no special chars.
englishEquivalentstringThe closest real-world profanity equivalent.
phoneticPronunciationstringHow it's pronounced, e.g. "FRAK" or "FREL".
partOfSpeechstringe.g. expletive, noun, verb, adjective, phrase.
franchisestringThe franchise where it originates. Match existing names exactly.
mediumenumTV | Film | Book | Comic | Game | Animation
categoryenumExpletive | Insult | Euphemism | Curse | Oath | Slang
severityenumMild | Moderate | Strong | Extreme
notableSpeakerstringThe character most associated with the word.
firstAppearancestringEpisode, chapter, issue, or film where it first appeared.
shortDescriptionstringA 1–2 sentence description. Tone: playful, precise, editorial.
etymologyNarrativestringHow the word was invented; in-universe and/or real-world origin.
usageHistoryNarrativestringHow and by whom it was used across the source material.
tabooTrajectoryNarrativestringHow its transgressive status evolved over time.
regionalNotesstringIn-universe regional variations, if any.
exampleQuoteobject{ text: "...", source: "Speaker, Episode/Chapter" }
relatedWordsstring[]Slugs of related entries in this archive.
realWorldEuphemismsstring[]Real words that serve a similar function.

Validate your entry

Run the validation script before opening your PR:

node scripts/validate-entries.js

This checks all required fields, valid enum values, and duplicate slugs. PRs that fail validation will not be merged.

Style guide

  • Write in the present tense for in-universe descriptions.
  • Keep shortDescription under 200 characters when possible.
  • Narrative fields should be engaging — this is a reference archive, not a Wikipedia article.
  • Be precise about first appearances. “Season 1” is acceptable; “Episode 3” is better.
  • Don’t add entries for real-world profanity, only fictional coinages.
  • The id field should be the next available integer as a string.

Ready to add an entry?

Fork the repository on GitHub, add your entry following this guide, and open a pull request. All contributions are reviewed by a maintainer before merging.

View on GitHub