Skip to content

Commit fe1f7c6

Browse files
authored
Merge pull request #3 from trading-point/update-docs
Update docs
2 parents ac5d96e + b36f205 commit fe1f7c6

File tree

3 files changed

+17
-12
lines changed

3 files changed

+17
-12
lines changed

LICENSE

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2020 Athanasios Loukas
3+
Copyright (c) 2023 TP Servglobal Ltd
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

README.md

+16-11
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# A Kotlin port of The Composable Architecture (aka **TKA**)
22

3-
⚠️ THERE ARE STILL SEVERAL ROUGH EDGES SO USE IT AT YOUR OWN RISK ⚠️
3+
⚠️ ALTHOUGH IT'S BEING USED IN PRODUCTION, THERE ARE STILL SEVERAL ROUGH EDGES SO USE IT AT YOUR OWN RISK ⚠️
44

55
[Point-Free's](https://github.com/pointfreeco) [The Composable Architecture](https://github.com/pointfreeco/swift-composable-architecture) is a Swift library so this "fork" has ported the core concepts in Kotlin in order to help share domain logic amongst Android/iOS apps.
66

@@ -49,7 +49,6 @@ The Composable Architecture is a library for building applications in a consiste
4949
- [FAQ](#faq)
5050
- [Requirements](#requirements)
5151
- [Help](#help)
52-
- [Credits and thanks](#credits-and-thanks)
5352
- [Other libraries](#other-libraries)
5453
- [License](#license)
5554

@@ -298,6 +297,7 @@ No debugging tools have been ported yet... apart from a simple `reducer.debug()`
298297
* How does the Composable Architecture compare to Elm, Redux, and others?
299298
<details>
300299
<summary>Expand to see answer</summary>
300+
301301
The Composable Architecture (TCA) is built on a foundation of ideas popularized by Elm and Redux, but made to feel at home in the Swift language and on Apple's platforms.
302302

303303
In some ways TCA is a little more opinionated than the other libraries. For example, Redux is not prescriptive with how one executes side effects, but TCA requires all side effects to be modeled in the `Effect` type and returned from the reducer.
@@ -306,6 +306,7 @@ No debugging tools have been ported yet... apart from a simple `reducer.debug()`
306306

307307
And then there are certain things that TCA prioritizes highly that are not points of focus for Redux, Elm, or most other libraries. For example, composition is very important aspect of TCA, which is the process of breaking down large features into smaller units that can be glued together. This is accomplished with the `pullback` and `combine` operators on reducers, and it aids in handling complex features as well as modularization for a better-isolated code base and improved compile times.
308308
</details>
309+
</br>
309310

310311
* Why isn't `Store` thread-safe? <br> Why isn't `send` queued? <br> Why isn't `send` run on the main thread?
311312
<details>
@@ -314,6 +315,18 @@ No debugging tools have been ported yet... apart from a simple `reducer.debug()`
314315
When an action is sent to the `Store`, a reducer is run on the current state, and this process cannot be done from multiple threads. If you are using an effect that may deliver its output on a non-main thread, you must explicitly perform `.observeOn()` in order to force it back on the main thread.
315316

316317
This approach makes the fewest number of assumptions about how effects are created and transformed, and prevents unnecessary thread hops and re-dispatching. It also provides some testing benefits. If your effects are not responsible for their own scheduling, then in tests all of the effects would run synchronously and immediately. You would not be able to test how multiple in-flight effects interleave with each other and affect the state of your application. However, by leaving scheduling out of the `Store` we get to test these aspects of our effects if we so desire, or we can ignore if we prefer. We have that flexibility.
318+
</details>
319+
</br>
320+
321+
* How to run the tests?
322+
<details>
323+
<summary>Expand to see answer</summary>
324+
325+
Via the command line:</br>
326+
&emsp;Run `./gradlew test`</br>
327+
Via Android Studio:</br>
328+
&emsp;Right-click on the `tka` module and select `Run "Tests in 'kotlin-composable-architecture.tka'"`
329+
</details>
317330

318331
## Requirements
319332

@@ -331,15 +344,7 @@ You can add ComposableArchitecture to an Xcode project by adding it as a package
331344

332345
## Help
333346

334-
If you want to discuss the Composable Architecture or have a question about how to use it to solve a particular problem, ask around on [its Swift forum](https://forums.swift.org/c/related-projects/swift-composable-architecture).
335-
336-
## Credits and thanks
337-
338-
The following people gave feedback on the library at its early stages and helped make the library what it is today:
339-
340-
Paul Colton, Kaan Dedeoglu, Matt Diephouse, Josef Doležal, Eimantas, Matthew Johnson, George Kaimakas, Nikita Leonov, Christopher Liscio, Jeffrey Macko, Alejandro Martinez, Shai Mishali, Willis Plummer, Simon-Pierre Roy, Justin Price, Sven A. Schmidt, Kyle Sherman, Petr Šíma, Jasdev Singh, Maxim Smirnov, Ryan Stone, Daniel Hollis Tavares, and all of the [Point-Free](https://www.pointfree.co) subscribers 😁.
341-
342-
Special thanks to [Chris Liscio](https://twitter.com/liscio) who helped us work through many strange SwiftUI quirks and helped refine the final API.
347+
If you want to discuss the Composable Architecture or have a question about how to use it to solve a particular problem, ask around on [its Swift forum](https://forums.swift.org/c/related-projects/swift-composable-architecture) **or contact us**.
343348

344349
## Other libraries
345350

gradlew

100644100755
File mode changed.

0 commit comments

Comments
 (0)