{"id":29469686,"url":"https://github.com/caioaletroca/queueduino","last_synced_at":"2026-05-18T00:31:15.826Z","repository":{"id":177471975,"uuid":"169612189","full_name":"caioaletroca/QueueDuino","owner":"caioaletroca","description":"A action queue list for Arduino, with persistent data","archived":false,"fork":false,"pushed_at":"2019-02-19T22:12:11.000Z","size":19,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-07-14T12:29:52.453Z","etag":null,"topics":["actions","list","nodemcu","persistent","queue"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/caioaletroca.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-02-07T17:27:28.000Z","updated_at":"2019-10-08T18:45:42.000Z","dependencies_parsed_at":null,"dependency_job_id":"5e353b90-280c-4e9d-bc01-0995f6722c24","html_url":"https://github.com/caioaletroca/QueueDuino","commit_stats":null,"previous_names":["caioaletroca/queueduino"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/caioaletroca/QueueDuino","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caioaletroca%2FQueueDuino","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caioaletroca%2FQueueDuino/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caioaletroca%2FQueueDuino/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caioaletroca%2FQueueDuino/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/caioaletroca","download_url":"https://codeload.github.com/caioaletroca/QueueDuino/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caioaletroca%2FQueueDuino/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33160452,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-17T22:39:12.733Z","status":"ssl_error","status_checked_at":"2026-05-17T22:39:10.741Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["actions","list","nodemcu","persistent","queue"],"created_at":"2025-07-14T11:12:50.714Z","updated_at":"2026-05-18T00:31:15.821Z","avatar_url":"https://github.com/caioaletroca.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# QueueDuino \u0026middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)\n\nThis libraries creates a queue list with Strings data, passed as argument to a user configured action. Recommended when you have to perform a current action later, like request a server. The list is also stored on the flash memory.\n\n# Quick Start\n\n## Installation\nDownload as zip and use the Arduino Library Manager. QueueDuino requires [ArduinoSTL](https://github.com/mike-matera/ArduinoSTL) to run.\n\n## Usage\nInclude the library on your sketch\n\n```cpp\n#include \u003cQueueDuino.h\u003e\n```\nInitialize a global instance of the library\n\n```cpp\nQueueDuino queue;\n```\n\nIn your loop function, run the queue loop\n\n```cpp\nqueue.loop();\n```\n\n# Documentation\n\n### Constructors\n\n```cpp\nQueueDuino();\n```\n\u003e Default constructor. Uses a default file name on the flash memory\n\n```cpp\nQueueDuino(String filename);\n```\n\u003e Defines a custom filename to save or load on the flash memory\n\n## Methods\n\n### push\n```cpp\nvoid push(String item)\n```\n\u003e Adds (push) a new string item to the queue\n\n### pop\n```cpp\nvoid pop()\n```\n\u003e Removes (pop) the last item from the queue\n\n### clear\n```cpp\nvoid clear()\n```\n\u003e Clears and wipe out all items\n\n### run\n```cpp\nvoid run()\n```\n\u003e Set the queue to run the next time the loop method will be called\n\n### cancel\n```cpp\nvoid cancel()\n```\n\u003e Cancels the queue execution\n\n### loop\n```cpp\nvoid loop()\n```\n\u003e The queue main method. When active, tries to perform the actions and triggers events about the results. If some of the actions failed, the queue is cancelled\n\n## Events\n\n### onStart\n```cpp\nvoid onStart( [] () -\u003e void {} )\n```\n\u003e Receives a lambda function as argument, or you can also defines a function separated. onStart event is fired when the queue starts\n\n##### Example\n```cpp\nvoid callback() {\n  // do your stuff\n}\nqueue.onStart(callback);\n```\n\n### onSuccess\n```cpp\nvoid onSuccess( [] () -\u003e void {} )\n```\n\u003e Receives a lambda function as argument, or you can also defines a function separated. onSuccess event is fired when the entire queue was successful\n\n##### Example\n```cpp\nvoid callback() {\n  // do your stuff\n}\nqueue.onSuccess(callback);\n```\n\n### onFailed\n```cpp\nvoid onFailed( [] () -\u003e void {} )\n```\n\u003e Receives a lambda function as argument, or you can also defines a function separated. onFailed event is fired when one item action failed\n\n##### Example\n```cpp\nvoid callback() {\n  // do your stuff\n}\nqueue.onSuccess(callback);\n```\n\n## Action Methods\n\n### setAction\n```cpp\nvoid setAction( [] (const String item) -\u003e bool {} )\n```\n\u003e Receives a lambda function as argument. Configures the action that will run on every queue item. Must return a boolean if the action was successful or not\n\n### runAction\n```cpp\nvoid runAction(String item)\n```\n\u003e Runs the current configured action if a argument item\n\n## Misc Methods\n\n### save\n```cpp\nvoid save()\n```\n\u003e Saves the current queue on the flash memory. Push, pop and loop automatically saves the queue\n\n\n### load\n```cpp\nvoid load()\n```\n\u003e Loads the queue saved on the flash memory. The queue is loaded automatically on the constructor\n\n### toSerial\n```cpp\nvoid toSerial()\n```\n\u003e Prints the entire queue, line by line on the default Serial\n\n# Example\n\nFollow the simple setup to undestand how to use the queue [here](https://github.com/caioaletroca/QueueDuino/blob/master/Examples/SimpleExample/SimpleExample.ino).\n\n# Extra Information\n\nIt was only tested on NodeMCU, but may work on commom devices as Arduino Uno, Nano and Mega.\nFeel free to make pull request to improve this library as you want.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaioaletroca%2Fqueueduino","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcaioaletroca%2Fqueueduino","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaioaletroca%2Fqueueduino/lists"}