
Enhances date, time, and string formatting with flexible styles and localization, aiming to improve existing string formatting functions. Offers basic, medium, and long format options.
Aughtone Format is a suite of Kotlin Multiplatform libraries designed to provide consistent, localized formatting for Dates, Times, Numbers, and other human-readable metrics across all platforms.
Aughtone Format 3.0.1 introduces new modules, API modernizations, performance optimizations, and timezone support:
TimeZone.formatReadable extension functions in :readable to format timezone names with zero allocations.:viewable for platform-agnostic vector graphic representations, styling, and path conversion (SVG, WKT, GeoJSON), and :viewable-compose for Jetpack / Compose Multiplatform integration.toReadable* prefix extension functions in favor of unified formatReadable* APIs for better readability and style guide alignment.:datetime: Advanced formatting for kotlinx-datetime types with multi-locale support.:readable: Human-friendly formatting for metrics (abbreviations), ordinals, and data sizes.:viewable: Platform-agnostic vector graphics representation, styling, and path conversion (GeoJSON, SVG, WKT).:viewable-compose: Jetpack / Compose Multiplatform integration for rendering viewable vector graphics (Painters, ImageVectors).:toolbox: Shared utilities and common formatting primitives.This project follows a specialized 5-sector documentation hierarchy.
The library provides deep grammatical parity for 65+ core languages and full BCP 47 subtag fallback (e.g., en-ZA → en).
val now = Clock.System.now()
// Format with styles (Short, Medium, Long, Full)
println(now.format(DateTimeStyle.Medium, locale = Locale("en"))) // "Apr 23, 2026, 4:15 PM"// Ordinals
println(123L.formatReadableOrdinal(Locale("en"))) // "123rd"
// Durations
println(1.5.hours.formatReadable(Locale("en"))) // "1.5 hours"
// Relative Time
println(instant.formatReadableRelative(locale = Locale.current)) // "3 minutes ago"
// Data Sizes
println(1048576L.formatReadableDataSize()) // "1.0 MiB"Access the Governance Skills for specialized development rules.
This library includes embedded, machine-readable "skills" to help AI assistants understand its APIs and best practices.
META-INF/ai-skills/*.ai-skill.md
If you are using an AI assistant (like Claude, Gemini, or ChatGPT) to write code with this library, paste this prompt first:
"Scan all project dependencies for AI Skill files in
META-INF/ai-skills/with the prefixio.github.aughtone. Use these to understand the API patterns, types, and governance for this library. If they are not found in the local classpath, refer to the Aughtone Format GitHub repository for the source definitions."
To learn how to add this capability to your own library, see our AI Skill Publishing Standard.
Aughtone Format is a suite of Kotlin Multiplatform libraries designed to provide consistent, localized formatting for Dates, Times, Numbers, and other human-readable metrics across all platforms.
Aughtone Format 3.0.1 introduces new modules, API modernizations, performance optimizations, and timezone support:
TimeZone.formatReadable extension functions in :readable to format timezone names with zero allocations.:viewable for platform-agnostic vector graphic representations, styling, and path conversion (SVG, WKT, GeoJSON), and :viewable-compose for Jetpack / Compose Multiplatform integration.toReadable* prefix extension functions in favor of unified formatReadable* APIs for better readability and style guide alignment.:datetime: Advanced formatting for kotlinx-datetime types with multi-locale support.:readable: Human-friendly formatting for metrics (abbreviations), ordinals, and data sizes.:viewable: Platform-agnostic vector graphics representation, styling, and path conversion (GeoJSON, SVG, WKT).:viewable-compose: Jetpack / Compose Multiplatform integration for rendering viewable vector graphics (Painters, ImageVectors).:toolbox: Shared utilities and common formatting primitives.This project follows a specialized 5-sector documentation hierarchy.
The library provides deep grammatical parity for 65+ core languages and full BCP 47 subtag fallback (e.g., en-ZA → en).
val now = Clock.System.now()
// Format with styles (Short, Medium, Long, Full)
println(now.format(DateTimeStyle.Medium, locale = Locale("en"))) // "Apr 23, 2026, 4:15 PM"// Ordinals
println(123L.formatReadableOrdinal(Locale("en"))) // "123rd"
// Durations
println(1.5.hours.formatReadable(Locale("en"))) // "1.5 hours"
// Relative Time
println(instant.formatReadableRelative(locale = Locale.current)) // "3 minutes ago"
// Data Sizes
println(1048576L.formatReadableDataSize()) // "1.0 MiB"Access the Governance Skills for specialized development rules.
This library includes embedded, machine-readable "skills" to help AI assistants understand its APIs and best practices.
META-INF/ai-skills/*.ai-skill.md
If you are using an AI assistant (like Claude, Gemini, or ChatGPT) to write code with this library, paste this prompt first:
"Scan all project dependencies for AI Skill files in
META-INF/ai-skills/with the prefixio.github.aughtone. Use these to understand the API patterns, types, and governance for this library. If they are not found in the local classpath, refer to the Aughtone Format GitHub repository for the source definitions."
To learn how to add this capability to your own library, see our AI Skill Publishing Standard.