Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@matsukky/gender) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Gender
Lightweight, dependency-free library for gender-specific terms in multiple languages
English - French - Spanish - Italian - German - Japanese - Chinese - Arabic - Russian
A minimalist library that provides a comprehensive way to handle gender representation in various languages. Zero dependencies, tree-shakeable, and type-safe.
Table of Contents
Installation
npm install @matsukky/gender
# or
yarn add @matsukky/gender
# or
bun add @matsukky/genderFeatures
- ðŠķ Lightweight
- ðĶ Zero dependencies
- ð Support for multiple languages
- ðĻ Color schemes for each gender
- ð Custom properties support
- ð Automatic capitalization
- ð Rich set of gender-specific terms
- ðŠ Fully typed (TypeScript)
Usage
Basic Usage
import gender from '@matsukky/gender';
const female = gender('F');
console.log(female.genderName); // "woman"
console.log(female.childTerm); // "girl"
console.log(female.emoji); // "ðš"
const male = gender('MALE'); // Alias support
console.log(male.genderName); // "man"
console.log(male.colors.primary); // "#1e90ff"
const neutral = gender('X');
console.log(neutral.genderName); // "person"Localization
import gender, { locale } from '@matsukky/gender';
// Load French locale
await locale('fr');
const female = gender('F');
console.log(female.genderName); // "femme"
console.log(female.childTerm); // "fille"Custom Properties
import gender from '@matsukky/gender';
// Definition of context-specific terms
const result = gender('F', {
custom: {
occupation: {
F: "actress",
M: "actor",
X: "performer"
},
workplace: {
F: "actresses' room",
M: "actors' room",
X: "performers' room"
},
award: {
F: "best actress",
M: "best actor",
X: "best performance"
}
}
});
// Basic usage
console.log(result.occupation); // "actress"
console.log(result.workplace); // "actresses' room"
// Combination with standard properties
console.log(`${result.title} ${result.genderName}`); // "Mrs woman"
console.log(`${result.occupation} ${result.objectPronoun}`); // "actress her"
// Usage with capitalization
const capitalizedResult = gender('F', {
capitalize: true,
custom: {
occupation: {
F: "actress",
M: "actor",
X: "performer"
}
}
});
console.log(capitalizedResult.occupation); // "Actress"The gender function allows extending standard properties with custom terms while maintaining gender consistency. Each custom property must define a value for all three genders (F, M, X) to ensure inclusive usage.
Capitalization
import gender from '@matsukky/gender';
const result = gender('F', { capitalize: true });
console.log(result.genderName); // "Woman"
console.log(result.childTerm); // "Girl"API Reference
gender(type, options)
gender(type: AvalaibleGender, options?: {
capitalize?: boolean;
custom?: Record<string, Record<'F' | 'M' | 'X', string>>;
language?: AvalaibleLanguage;
}): GenderDatalocale(language, define?)
locale(language: AvalaibleLanguage, define?: boolean): Promise<GenderCollection>Types
GenderData Properties
| Property | Description | Example (Female) |
|---|---|---|
| emoji | Gender emoji | ðš |
| colors | Color palette object | { rose, petal, bloom, blush, berry } |
| genderName | Gender name | "woman" |
| childTerm | Term for child | "girl" |
| adultTerm | Term for adult | "woman" |
| combined | Mostly used in social media as pronouns | "she/her" |
| subjectPronoun | Subject pronoun | "she" |
| objectPronoun | Object pronoun | "her" |
| indirectPronoun | Indirect pronoun | "her" |
| possessiveAdjective | Possessive adjective | "her" |
| reflexivePronoun | Reflexive pronoun | "herself" |
| demonstrative | Demonstrative pronoun | "she" |
| indeterminateArticle | Indeterminate article | "a" |
| genderAdjective | Gender adjective | "female" |
| pluralSubjectPronoun | Plural subject pronoun | "they" |
| pluralPossessiveAdj | Plural possessive adjective | "their" |
| title | Full honorific title | "Mrs." |
| shortTitle | Short honorific title | "Ms." |
Avalaible Gender Keys
| Role | Values |
|---|---|
| F | F, â, WOMAN, GIRL, FEMALE, SHE, HER |
| M | M, H, â, MAN, MEN, BOY, MALE, HE, HIM |
| X | X, N, â§, NEUTRAL, HUMAN, THEY, THEM |