Skip to content

Latest commit

 

History

History
97 lines (64 loc) · 3.48 KB

README.MD

File metadata and controls

97 lines (64 loc) · 3.48 KB

ULTRA components for Kotlin Servers and Android

Kotlin CodeFactor Maven Central Snapshot

ULTRA is a set of libraries and helpers to enhance your everyday Kotlin coding with more power, stability and enjoyment.

Check out the sub-projects. There you will find details, descriptive test cases and usage examples.

ultra::common

ultra::common - Helper functions and utilities for:
ultra::commonmp - Multiplatform helper functions and utilities for:

  • Collections, Lists, Files, Functions
  • Hashing (like MD5, SHA256, ...)
  • Utility Classes and Interfaces
  • Recursive programming
    • map recursive objects to plain lists
      • find all child objects that match a certain criteria
  • Reflection
    • type safe type references
    • reification of KType
  • random data generation
    • LoremIpsum texts

ultra::kontainer

ultra::kontainer - A multi stage dependency injection mechanism

READ MORE || EXAMPLES || TESTS

ultra::logging

ultra::logging - A lean logging framework that integrates with the Kontainer

ultra::meta

ultra::meta - Meta Programming Tools for Kotlin Annotation Processing and code generation

Projects using this:

  • ultra::slumber
  • ultra::vault
  • karango (ArangoDB repositories for ultra::vault)

ultra::mutator

ultra::mutator - Mutate the Immutable!

READ MORE || EXAMPLES || TESTS

Mutator is a kotlin library inspired by immerjs.
It enables you to manipulate deeply nested immutable data structures.
With zero boilerplate code at all and some powerful additional features.

  • It gives you a powerful way for mutating deeply nested immutable data structures.
  • By doing so, it encourages a 100% immutable data design
  • ... and more of functional programming style.
  • Therefore you will have far less tricky bugs.

ultra::security

ultra::security - Everyday security features

ultra::slumber

ultra::slumber - Object serialization with nullability awareness

READ MORE || EXAMPLES || TESTS

Slumber is aware of the Null Safety that is built into Kotlin.

Pure Java serialization libraries like Jackson are not.

Kotlin handles the Billion Dollar Mistake very well. And so should your serialization framework! Slumber does it for you.

TODOs:

  • ( ) Remove com.github.matfax.klassindex:library completely

    • ( ) Replace with own implementation using KSP
  • ( ) Slumber

    • ( ) Full java time support
  • ( ) Mutator

    • ( ) support better code generation for nested classes