relationships
Relationship modeling and kinship calculations for Dart, with localized descriptions.
Features
- Model family trees with parents, children, and spouses.
- Calculate relationship paths and labels (e.g., "grandson (son's son)").
- Built-in translations powered by Slang (Arabic and English included).
Getting started
Add the package to your pubspec.yaml:
dependencies:
relationships: ^0.0.1
Usage
import 'package:relationships/i18n/strings.g.dart';
import 'package:relationships/relationships.dart';
void main() {
LocaleSettings.setLocale(AppLocale.en);
final father = Person(name: 'Father', gender: Gender.male);
final daughter = Person(name: 'Daughter', gender: Gender.female);
father.addChild(daughter);
final rel = RelationshipCalculator.calculateRelationship(father, daughter);
print(rel?.detailedDescription); // daughter
}
Localization
- Import
package:relationships/i18n/strings.g.dart. - Set the locale using
LocaleSettings.setLocale(AppLocale.en)orAppLocale.ar. - All descriptions use the current locale.
Additional information
Issues and contributions are welcome once the repository is published.
Libraries
- i18n/strings.g
- Generated file. Do not edit.
- i18n/strings_en.g
- Generated file. Do not edit.
- relationships
- Relationship modeling and kinship calculations.