structures 0.1.0 structures: ^0.1.0 copied to clipboard
A suite of commonly used standalone data structures, types, interfaces, utility classes and extensions that simplify app development.
Structures #
Welcome to the structures package!
We designed this package to help simplify application development by providing various commonly used tools and resources.
Here are a few of the critical feature categories of this package:
- Structures: Include a collection of common data structures in application development, such as lists, queues, and trees.
- Types: Consists of a set of custom data types that can define the structure of your data, such as strings, integers, and booleans.
- Interfaces: A set of interfaces defining the expected behaviour of different objects, such as collections and iterators.
- Utilities: A set of utility functions that perform everyday tasks, such as sorting, searching, and filtering.
- Extensions: provide methods that add new functionality to existing types.
This package aims to minimize the time and effort it takes to put together the business logic for your application. We approach this from a business logic design perspective rather than focusing on the UI or backend.
Whether you're a seasoned developer or just starting, the structures package can help you create powerful and efficient applications. So why wait? Try it out today, and let us know what you think.
Notice. #
The name of this package alone bears a considerable promise, and the aim listed above doesn't help but fuel the illusion of a well-oiled library that solves all that ails you.
The fact is, this package is a gradual effort; give it some time to grow. What is familiar to the contributor of this package may be rare and not even apply to your use case. Expect it to be opinionated.
Hopefully, we can grow together.
The following are groups of what this package does and intend to provide.
Basic Reactive #
This package includes some basic reactive types and structures that can build responsive and efficient applications. The current status of each feature is listed below:
Status: Bata
Name | Description | Status |
---|---|---|
Live | A listenable (reactive) interface class that you use to create objects that you can observe for changes. | ✅✅✅ |
Value | A listenable value interface class that you use to create objects that you can observe for value updates. | ✅✅✅ |
Notifier | A Live implementation that enables you use to create objects that you can observe for for changes. | ✅✅✅ |
LiveValue | Implementation of Value interface | ✅✅✅ |
UI Component Structures #
Status:| Beta
Name | Description | Status |
---|---|---|
Choice | A convenience interface representing an object that can be selected out of many | ✅✅✅ |
ChoiceList | This is fixed-length single choice Choice List | ✅✅✅ |
Validation | An interface of a validation, containing a message to give context to the validation | ✅✅ |
Validatable | An Object whose definition is validatable A Validatable can verify to see if its instance is valid. | ✅✅ |
Success | A representation of a successful Validation | ✅✅ |
Failure | A representation of a failed Validation | ✅✅ |
Clean Data Types #
Status:| WIP
Utility classes #
Status:| WIP
Extensions #
Status:| WIP
Name | Description | Status |
---|---|---|
AList | An extension of a List | ✅✅✅ |
Loop | An extension to Iterable | ✅✅✅ |
Merger | Merger on Pair | ✅✅ |