humanizer 0.0.1-nullsafety humanizer: ^0.0.1-nullsafety copied to clipboard
Convert Dart values into human-friendly representations.
Humanizer #
Humanizer is currently in preview. APIs are not yet finalized. We welcome feedback and suggestions as we work towards a stable release.
What? #
A Dart library to convert values into human-friendly representations.
Why? #
When writing user interfaces we often want to present data we have in a raw format in a way that makes sense to the end user, but doing so is often non-trivial. This library aims to make such conversions easy and flexible.
Where? #
Firstly, install the humanizer package, then you can import Humanizer into your Dart code as follows:
import 'package:humanizer/humanizer.dart';
How? #
This library has a broad API surface, and in fact has multiple API layers as discussed here. The following table gives a high level overview of the various features, with links to deeper discussion:
Feature | Description |
---|---|
Symbols | Transform programming symbol names into human-friendly representations. |
String casing | Transforms input strings to Sentence case or Title Case . |
String truncation | Intelligently truncates input strings. |
Approximate relative time | Describes a DateTime relative to "now" in a human-friendly manner. |
Plurality | Alters the plurality of an input word. |
Ordinal numbers | Converts an integral value to ordinal form (1st / first , 2nd / second etc). |
Cardinal numbers | Converts an integral value to cardinal form (one , two , three etc). |
Units of measurement | Provides types to represent common units of measurement and the ability to convert those types to a human-readable form. |
Note that whilst this library is locale-aware, it currently only includes an English implementation.
Who? #
Thanks goes to these wonderful people (emoji key):
Kent Boogaart 💻 ⚠️ 📖 💡 |
This project follows the all-contributors specification. Contributions of any kind welcome!
Special thanks to these inspirational open source libraries: