{"repo":"pioner92/react-native-sync-tasks","free":true,"listed":false,"github":"https://github.com/pioner92/react-native-sync-tasks","clone":"git clone https://github.com/pioner92/react-native-sync-tasks.git","description":"🚀 JSI-based task scheduler for React Native — periodically polls APIs, hashes responses to prevent redundant updates, and manages all tasks natively.","language":"C++","stars":27,"topics":["android","api","ios","jsi","native","pulling","react-native","scheduler","sync","turbomodule"],"license":"MIT","category":"mobile-apps","readme_excerpt":"🚀 SyncTasksManager (JSI) SyncTasksManager is a native JSI-based library for React Native that allows you to manage and execute native-threaded sync tasks (such as periodic API polling) efficiently from JavaScript, while delegating the actual execution to the native layer for better performance. ⚠️ Note : This is not a background task manager — tasks do not continue running when the app is in the background or killed. The polling happens while the app is active, on a native thread, outside the JS thread. --- ⚙️ Features - 🔁 Periodic HTTP polling with configurable interval - 📡 Callback on data reception or error - 🧵 High-performance execution via native thread using JSI - 🧠 Centralized task management (start/stop all tasks) - ✅ Seamless integration with native modules (C++/JSI) - ✨ Built-in response deduplication using response body hash — avoids redundant onData calls if the response has not changed --- 📦 Installation Don’t forget to run pod install for iOS if using CocoaPods. --- 🛠️ Usage --- 🔍 API createTask (props: CreateTaskParams ): Task Creates a task that will periodically fetch data from the specified URL, executed on a native thread. Params: Name Type Description ----------- ---------------------------------------------------------------------- ----------------------------------------------- config { url: string; interval: number; headers?: Record } HTTP polling configuration onData (data: { body: T, status code: number }) = void Callback when data is successf","default_branch":null,"files":null,"tree":[],"storefront":"/r/pioner92","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/pioner92/react-native-sync-tasks/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}