Code Monkey home page Code Monkey logo

monix-bio's Introduction

Monix-BIO

Maven Central Join the chat at https://gitter.im/monix/monix-bio Snapshot

Asynchronous data type with typed errors. An enhanced version of monix.eval.Task.

Visit Documentation Website

The latest version

The latest stable version, compatible with Monix 3.x, Cats 2.x and Cats-Effect 2.x:

libraryDependencies += "io.monix" %% "monix-bio" % "1.0.0"

Published for ScalaJS 0.6.x, 1.x, Scala 2.12 and 2.13.

Roadmap

  • Complete documentation (see #133 for current progress)
  • reactive module to use monix.reactive.Observable with monix.bio.IO
  • built-in interop with monix.eval.Task without any imports
  • better stack traces
  • (?) UIO-friendy builders for cats.effect.concurrent and monix-catnap
  • (?) Coeval with typed errors

Contributing

I will really appreciate feedback, bugs and complaints about the project.

If you'd like to contribute code then look for issues tagged with good first issue or just ask me on gitter and I should be able to find something regardless of your level of expertise. :)

I'm happy to mentor anyone interested in contributing.

Credits

Most of the code comes from Monix which was customized to include support for error type parameter directly in the internals.

The idea of a second type parameter comes from ZIO. Its implementation and API for error handling with two error channels served as an inspiration to the entire idea and some of the solutions. A lot of the benchmarks also come from their repository.

Cats-bio has been extremely useful at the beginning because of many similarities between monix.eval.Task and cats.effect.IO internals.

monix-bio's People

Contributors

avasil avatar scala-steward avatar pjurczenko avatar allantl avatar mrkustra94 avatar svenvdam avatar aleksandarskrbic avatar cucumissativus avatar paualarco avatar pk044 avatar executioner1939 avatar bszwej avatar gitter-badger avatar z1kkurat avatar xplosunn avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.