Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/euphocat/awesome-fp-ts
A collection of awesome things regarding the fp-ts ecosystem.
https://github.com/euphocat/awesome-fp-ts
List: awesome-fp-ts
Last synced: 16 days ago
JSON representation
A collection of awesome things regarding the fp-ts ecosystem.
- Host: GitHub
- URL: https://github.com/euphocat/awesome-fp-ts
- Owner: euphocat
- Created: 2021-03-05T08:42:15.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2023-04-03T13:17:41.000Z (over 1 year ago)
- Last Synced: 2024-05-20T05:13:34.357Z (7 months ago)
- Size: 16.6 KB
- Stars: 14
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- ultimate-awesome - awesome-fp-ts - A collection of awesome things regarding the fp-ts ecosystem. (Other Lists / Monkey C Lists)
README
# Awesome fp-ts
A collection of awesome things regarding the fp-ts ecosystem.
--------
### fp-ts
#### General Resources
> fp-ts is a library for typed functional programming in TypeScript.
* [github fp-ts](https://github.com/gcanti/fp-ts)
* [fp-ts documention](https://gcanti.github.io/fp-ts/)
* [API documention](https://gcanti.github.io/fp-ts/modules/)#### Giulio Canti (fp-ts creator) blog posts
- [Interoperability with non functional code](https://dev.to/gcanti/interoperability-with-non-functional-code-using-fp-ts-432e)
- [Eq](https://dev.to/gcanti/getting-started-with-fp-ts-setoid-39f3)
- [Ord](https://dev.to/gcanti/getting-started-with-fp-ts-ord-5f1e)
- [Semigroup](https://dev.to/gcanti/getting-started-with-fp-ts-semigroup-2mf7)
- [Monoid](https://dev.to/gcanti/getting-started-with-fp-ts-monoid-ja0)
- [Category](https://dev.to/gcanti/getting-started-with-fp-ts-category-4c9a)
- [Functor](https://dev.to/gcanti/getting-started-with-fp-ts-functor-36ek)
- [Applicative](https://dev.to/gcanti/getting-started-with-fp-ts-applicative-1kb3)
- [Monad](https://dev.to/gcanti/getting-started-with-fp-ts-monad-6k)
- [Either vs Validation](https://dev.to/gcanti/getting-started-with-fp-ts-either-vs-validation-5eja)
- [IO](https://dev.to/gcanti/getting-started-with-fp-ts-io-36p6)
- [Reader](https://dev.to/gcanti/getting-started-with-fp-ts-reader-1ie5)
- [Combinators Part I](https://dev.to/gcanti/functional-design-combinators-14pn)
- [Combinators Part II](https://dev.to/gcanti/functional-design-how-to-make-the-time-combinator-more-general-3fge)
- [Tagless final](https://dev.to/gcanti/functional-design-tagless-final-332k)
- [Smart constructors](https://dev.to/gcanti/functional-design-smart-constructors-14nb)
- [Introduction to property based testing](https://dev.to/gcanti/introduction-to-property-based-testing-17nk)
- [Algebraic Data Types](https://dev.to/gcanti/functional-design-algebraic-data-types-36kf)#### Guilio Canti Functional design series
- [Combinators Part I](https://dev.to/gcanti/functional-design-combinators-14pn)
- [Combinators Part II](https://dev.to/gcanti/functional-design-how-to-make-the-time-combinator-more-general-3fge)
- [Tagless final](https://dev.to/gcanti/functional-design-tagless-final-332k)
- [Smart constructors](https://dev.to/gcanti/functional-design-smart-constructors-14nb)
- [Introduction to property based testing](https://dev.to/gcanti/introduction-to-property-based-testing-17nk)
- [Algebraic Data Types](https://dev.to/gcanti/functional-design-algebraic-data-types-36kf)#### Advanced code examples
- "`fp-ts` to the max" (TypeScript port of John De Goes's ["FP to the max"](https://www.youtube.com/watch?v=sxudIMiOo68) in Scala)
- [Part I](https://github.com/gcanti/fp-ts/blob/master/examples/fp-ts-to-the-max-I.ts)
- [Part II](https://github.com/gcanti/fp-ts/blob/master/examples/fp-ts-to-the-max-II.ts)#### Community documentation
- [fp-ts recipes](https://grossbart.github.io/fp-ts-recipes/) – A collection of practical recipes for working with `fp-ts`
- [Should I use fp-ts Option?](https://dev.to/anthonyjoeseph/should-i-use-fp-ts-option-28ed)
- [Option: fp-ts](https://dev.to/waynevanson/fp-ts-meets-if-else-and-switch-part-1-3-2lpf)
- [Either: fp-ts](https://dev.to/waynevanson/either-fp-ts-meets-if-else-and-switch-part-2-3-893)
- [fp-ts, sequenceT, and sweet sweet async typed FP](https://dev.to/gnomff_65/fp-ts-sequencet-and-sweet-sweet-async-typed-fp-5aop)
- [TypeScript + fp-ts: ReaderTaskEither Foundations](https://andywhite.xyz/posts/2021-01-27-rte-foundations/) - great article about ReaderTaskEither that deeply explains the Reader + Task + Either concepts
- [TypeScript + fp-ts: ReaderTaskEither and React](https://andywhite.xyz/posts/2021-01-28-rte-react/) - a continuation of the explaination about ReaderTaskEither concept with real world and human-friendly example in React### io-ts
> Runtime type system for IO decoding/encoding#### General Resources
* [github io-ts](https://github.com/gcanti/io-ts)
* [io-ts documention](https://github.com/gcanti/io-ts/blob/master/index.md)
* [API Documention](https://gcanti.github.io/io-ts/)#### io-ts Tools
* [github io-ts-types](https://github.com/gcanti/io-ts-types) - A collection of runtime types and combinators
* [io-ts-reporters](https://github.com/gillchristian/io-ts-reporters) - transform `t.Error` into nice `string`### Libraries based on fp-ts
* [fp-ts-std](https://samhh.github.io/fp-ts-std/) - As the say: "The missing pseudo-standard library for fp-ts"### Videos
- [fp 101](https://www.youtube.com/watch?v=ci_rKKvvkJo&list=PLEwNZN34BR6IX2zE3h-c4iYCLvR-UkoNV) functional programming courses based on fp-ts
- [Functional Programming in TypeScript](https://www.youtube.com/playlist?list=PLuPevXgCPUIMbCxBEnc1dNwboH6e2ImQo) - Discover functional programming with Typescript and create a library like fp-ts alongside Sahand Javid in this beginner-friendly YouTube playlist.