
Modular, reusable mobile app components and libraries for email features, including UI primitives, composite, console and file logging, and a flexible Outcome result type for error handling.
A collection of components and libraries used in the Thunderbird mobile application.
[!WARNING] This repository is a work in progress and is not yet ready for production use. It is intended for development and testing purposes only.
Components in this repository are designed to be modular and reusable. Each component is self-contained and can be used independently or in combination with other components. We use Kotlin Multiplatform to share code across platforms, allowing us to write once and run on both Android and iOS.
The components are in different stages of development, and some may not be fully functional yet:
| Component | Status | Module | Maven Coordinate | Description |
|---|---|---|---|---|
| Logging | 🛠 In development | :components:core:logging |
net.thunderbird.components.core.logging |
Logging API with composite, console, and file logging. |
| Outcome | 🛠 In development | :components:core:outcome |
net.thunderbird.components.core:outcome |
Small result type with a flexible failure type, unlike Kotlin Result. |
We welcome contributions to this repository! If you would like to contribute, please read our contributing guidelines and code of conduct.
This repository is licensed under the MPL 2.0. By contributing to this repository, you agree to license your contributions under the same license.
A collection of components and libraries used in the Thunderbird mobile application.
[!WARNING] This repository is a work in progress and is not yet ready for production use. It is intended for development and testing purposes only.
Components in this repository are designed to be modular and reusable. Each component is self-contained and can be used independently or in combination with other components. We use Kotlin Multiplatform to share code across platforms, allowing us to write once and run on both Android and iOS.
The components are in different stages of development, and some may not be fully functional yet:
| Component | Status | Module | Maven Coordinate | Description |
|---|---|---|---|---|
| Logging | 🛠 In development | :components:core:logging |
net.thunderbird.components.core.logging |
Logging API with composite, console, and file logging. |
| Outcome | 🛠 In development | :components:core:outcome |
net.thunderbird.components.core:outcome |
Small result type with a flexible failure type, unlike Kotlin Result. |
We welcome contributions to this repository! If you would like to contribute, please read our contributing guidelines and code of conduct.
This repository is licensed under the MPL 2.0. By contributing to this repository, you agree to license your contributions under the same license.