https://github.com/ghostdogpr/purelogic
Direct-style pure domain logic for Scala
https://github.com/ghostdogpr/purelogic
direct-style domain logic pure scala
Last synced: 2 months ago
JSON representation
Direct-style pure domain logic for Scala
- Host: GitHub
- URL: https://github.com/ghostdogpr/purelogic
- Owner: ghostdogpr
- License: apache-2.0
- Created: 2026-03-09T06:02:03.000Z (3 months ago)
- Default Branch: master
- Last Pushed: 2026-04-01T17:08:49.000Z (2 months ago)
- Last Synced: 2026-04-04T02:43:09.358Z (2 months ago)
- Topics: direct-style, domain, logic, pure, scala
- Language: Scala
- Homepage: https://ghostdogpr.github.io/purelogic/
- Size: 419 KB
- Stars: 39
- Watchers: 2
- Forks: 6
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Agents: AGENTS.md
Awesome Lists containing this project
README
# PureLogic
[](https://central.sonatype.com/artifact/com.github.ghostdogpr/purelogic_3)
[](https://www.apache.org/licenses/LICENSE-2.0)
**PureLogic** is a **[Scala](https://www.scala-lang.org/) open source library** for writing **direct-style, pure business logic** using **context functions** (aka capabilities).
It is designed to be **monad-free**, meaning that effects like `Reader`, `Writer`, `State`, and `Abort` compose naturally through Scala 3's `given`/`using` mechanism instead of monad transformers or for-comprehensions.
It provides an **opinionated way to write pure domain logic** in Scala, using a limited set of primitives.
It has **zero dependencies** and is available for Scala 3.3.x LTS and later versions for Scala JVM, Scala.js, and Scala Native.
### Consult the [Documentation](https://ghostdogpr.github.io/purelogic/) to learn how to use PureLogic.