Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/rcardin/functional-portfolio

A toy implementation of a portfolio application that uses functional domain modeling and functional programming
https://github.com/rcardin/functional-portfolio

cats domain-driven-design functional-programming scala

Last synced: 29 days ago
JSON representation

A toy implementation of a portfolio application that uses functional domain modeling and functional programming

Awesome Lists containing this project

README

        

# functional-portfolio

A toy implementation of a portfolio application that uses functional domain modeling and functional
programming.

## Domain Models

The domain models development uses the _smart constructor_ technique. The use of
_smart constructor_s allows to avoid the possibility to create models that are invalid.

## Cats Library

The project uses the [Cats](https://typelevel.org/cats/) library by Typelevel. The type classes used
in the code are (updating):

* [`Validated`](https://typelevel.org/cats/datatypes/validated.html)
* [`Reader`](https://typelevel.org/cats/datatypes/kleisli.html)