A self-taught Senior Engineer (Android, iOS, Flutter, NestJs, ...) with 7+ years of experience (since 2018 Summer)
Has a strong knowledge of Clean Architecture, MVVM, MVI, Reactive Programming (RxJava/RxKotlin, RxSwift, rxdart, RxJs, Kotlinx Coroutines Flow, ...), Kotlin/Android, Dart/Flutter, iOS/Swift. Official RxDart maintainer π€
Contact Rx Mobile Team via https://rx-mobile-team.github.io/profile/ for freelance jobs π€
Details
GPS speedometer can easily track / measure your speed (in km/h or m/s), your distance (in km or m), your time, your current location and show your location in map, with beautiful route. Motorcycle GPS Speedometer app will measure your traveling speed and when speed exceed limit alarm will start warning alarm with sound and vibration. Distance tracking app supports different speed units like kilometer per hour (km/h), meter per second (m/s) and ...
- FlowExt (https://search.maven.org/artifact/io.github.hoc081098/FlowExt, https://github.com/hoc081098/FlowExt) - Kotlinx Coroutines Flow Extensions. Extensions to the Kotlin Flow library.
- kmp-viewmodel (https://search.maven.org/artifact/io.github.hoc081098/kmp-viewmodel, https://github.com/hoc081098/kmp-viewmodel) - π Kotlin Multiplatform ViewModel. Kotlin Multiplatform MVVM. Common/Shared ViewModel in Kotlin Multiplatform - A Kotlin Multiplatform library that provides shared MVVM for UI applications.
- solivagant (https://search.maven.org/artifact/io.github.hoc081098/solivagant-navigation, https://github.com/hoc081098/solivagant) - π Compose Multiplatform Navigation - πΈ Pragmatic, type safety navigation for Compose Multiplatform. Based on Freeletics Khonshu Navigation.
β₯οΈ ViewModel, SavedStateHandle, Lifecycle, Multi-Backstacks, Transitions, Back-press handling, and more... - kotlin-channel-event-bus (https://search.maven.org/artifact/io.github.hoc081098/channel-event-bus, https://github.com/hoc081098/kotlin-channel-event-bus) - A Kotlin Multiplatform library that provides a simple event bus implementation using KotlinX Coroutines Channels. Multi-keys, multi-producers, single-consumer and thread-safe event bus backed by
kotlinx.coroutines.channels.Channels.
-
ViewBindingDelegate (https://jitpack.io/#hoc081098/ViewBindingDelegate, https://github.com/hoc081098/ViewBindingDelegate) - Simple one-liner
ViewBindinginFragmentsandActivitieswith Kotlin Property Delegates. -
Contributed to https://github.com/freeletics/khonshu
- PhDownloader (https://cocoapods.org/pods/PhDownloader, https://github.com/hoc081098/PhDownloader) - Simple, reactive and functional downloader for
iOS Swiftwith the power ofRxSwift,RxAlamofire.
- RxDart official maintainer https://github.com/ReactiveX/rxdart/commits?author=hoc081098 - An implementation of the popular
ReactiveXapi for asynchronous programming, leveraging the nativeDart StreamsAPI. - rx_shared_preferences (https://pub.dev/packages/rx_shared_preferences, https://github.com/hoc081098/rx_shared_preferences) - Reactive shared preferences for
Flutter. - rx_redux (https://pub.dev/packages/rx_redux, https://github.com/hoc081098/rx_redux) -
Reduximplementation based onDart Stream, with the power ofRxDart. Reactive redux store forDart&Flutter. - disposebag (https://pub.dev/packages/disposebag, https://github.com/hoc081098/disposebag) - A package helps to cancel
StreamSubscriptions and closeSinks. - flutter_disposebag (https://pub.dev/packages/flutter_disposebag, https://github.com/Flutter-Dart-Open-Source/flutter_disposebag) - Automatically disposes
StreamSubscriptions and closesSinks when disposingState<T>. - sqlbrite (https://pub.dev/packages/sqlbrite, https://github.com/hoc081098/sqlbrite) - Reactive stream wrapper around
sqfliteforFlutterinspired bysqlbrite. - stream_loader (https://pub.dev/packages/stream_loader, https://github.com/hoc081098/stream_loader) - Loading content asynchronously with Dart stream.
- rxdart_ext (https://pub.dev/packages/rxdart_ext, https://github.com/hoc081098/rxdart_ext) - Some extension methods and classes built on top of
RxDart. - rx_storage (https://pub.dev/packages/rx_storage, https://github.com/Flutter-Dart-Open-Source/rx_storage) - Reactive storage for
Dart/Flutter.RxDartStorage forDart/Flutter. - listenable_stream (https://pub.dev/packages/listenable_stream, https://github.com/Flutter-Dart-Open-Source/listenable_stream) - Convert
Listenable(eg.ChangeNotifier),ValueListenable(eg.ValueNotifier) toStream/ValueStream. - distinct_value_connectable_stream (https://pub.dev/packages/distinct_value_connectable_stream, https://github.com/hoc081098/distinct_value_connectable_stream) - Distinct value connectable stream for
RxDart, useful forBLoCpattern. - did_change_dependencies (https://pub.dev/packages/did_change_dependencies, https://github.com/hoc081098/did_change_dependencies) - Return a
Streamthat emitsnulland done event whendidChangeDependenciesis called for the first time. - dart_either (https://pub.dev/packages/dart_either, https://github.com/hoc081098/dart_either) - Either monad for Dart, including monad comprehensions.
- flutter_bloc_pattern (https://pub.dev/packages/flutter_bloc_pattern, https://github.com/hoc081098/flutter_bloc_pattern) - Base class,
BLoCprovider andrxdartbuilder forBLoCpattern inFlutter. - flutter_provider (https://pub.dev/packages/flutter_provider, https://github.com/hoc081098/flutter_provider) - Flutter generic provider using InheritedWidget. An helper to easily exposes a value using InheritedWidget without having to write one.
- cancellation_token_hoc081098 (https://pub.dev/packages/cancellation_token_hoc081098, https://github.com/hoc081098/cancellation_token_hoc081098) - Dart Cancellation Token. Inspired by CancellationToken in C#. A Dart utility package for easy async task cancellation.
- http_client_hoc081098 (https://pub.dev/packages/http_client_hoc081098, https://github.com/hoc081098/http_client_hoc081098) - Simple and powerful HTTP client for Flutter and Dart application.
https://profile-summary-for-github.com/user/hoc081098






