Awesome Open Source
Awesome Open Source

Bow Lite

Compile and test iPad+ iOS + macOS + linux bow-lite Playground >

Bow Lite is a cross-platform library for Typed Functional Programming in Swift. It is a lightweight version of Bow where some complexity, like Higher Kinded Type emulation, has been removed.


All documentation is available in our website. Notice that the documentation presents all examples using the full version of Bow. Although Bow Lite maintains compatibility with the API of Bow, there may be cases where there are some variations.


Bow Lite offers an umbrella module BowLite that contains:

  • BowLiteCore: a collection of the main data types typically used in FP projects, that you can find in the core module of Bow.
  • BowLiteEffects: an implementation of the IO and EnvIO data types to deal with side effects, that you can find in the BowEffects module.
  • BowLiteOptics: a monomorphic implementation of some optics, that you can find in the BowOptics module.

How to get it

Bow Lite is available using Swift Package Manager. You can include it using the corresponding wizard in Xcode, or adding the following line to your Package.swift manifest:

.package(url: "", from: "{version}")
import BowLite


Copyright (C) 2018-2020 The Bow Authors

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Swift (95,447
Functional Programming (3,089
Spm (297
Fp (293
Composition (285
Optics (228
Swift Package (227
Category Theory (164
Related Projects