/dartoos

Collection of object-oriented Dart primitives

Primary LanguageDartMIT LicenseMIT

EO principles respected here DevOps By Rultor.com

pub license PDD status

build codecov CodeFactor Grade style: lint Hits-of-Code

Dartoos — Dart Object-Oriented Software

This package is a collection of object-oriented Dart primitives that implement classic data structures, algorithms, encoding/decoding, encryption and more. It is aimed to serve as a base framework for more specific packages.

Motivation: These data structures and algorithms have been implemented in Dart by other packages already, but there are some issues with them:

  • None of them is pure object-oriented. Indeed they do their job, but mostly through static methods, mixins, procedures, etc.
  • These packages are spread throughout the pub.dev ecosystem. This means that a user need to find different packages for basic things like encryption, encoding, or even for a plain Queue data structure.

This project is heavily inspired by Java jcabi-cactoos

Features

  • No external dependencies.
  • Object-Oriented mindset: each concept is implemented by an immutable class.
  • Straightforward integration with the underlying Dart sdk.

Getting started

Usage

Contribute

Contributors are welcome!

  1. Open an issue regarding an improvement, a bug you noticed, or ask to be assigned to an existing one.
  2. If the issue is confirmed, fork the repository, do the changes on a separate branch and make a Pull Request.
  3. After review and acceptance, the Pull Request is merged and closed.

Make sure the commands below passes before making a Pull Request.

  dart analyze && sudo dart test

Additional information