{"id":21134801,"url":"https://github.com/fxstein/smartthings-smartlib","last_synced_at":"2026-06-29T20:31:31.183Z","repository":{"id":20270646,"uuid":"23543733","full_name":"fxstein/smartthings-smartlib","owner":"fxstein","description":"A re-useable library for SmartThings SmartApps ","archived":false,"fork":false,"pushed_at":"2014-09-04T19:11:40.000Z","size":192,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2026-02-18T13:27:08.179Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Groovy","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fxstein.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}},"created_at":"2014-09-01T13:39:14.000Z","updated_at":"2016-01-08T08:27:19.000Z","dependencies_parsed_at":"2022-09-01T10:51:12.437Z","dependency_job_id":null,"html_url":"https://github.com/fxstein/smartthings-smartlib","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/fxstein/smartthings-smartlib","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fxstein%2Fsmartthings-smartlib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fxstein%2Fsmartthings-smartlib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fxstein%2Fsmartthings-smartlib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fxstein%2Fsmartthings-smartlib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fxstein","download_url":"https://codeload.github.com/fxstein/smartthings-smartlib/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fxstein%2Fsmartthings-smartlib/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34942665,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-29T02:00:05.398Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2024-11-20T06:35:58.354Z","updated_at":"2026-06-29T20:31:31.157Z","avatar_url":"https://github.com/fxstein.png","language":"Groovy","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Small Thermostat](https://raw.githubusercontent.com/fxstein/smartthings-smartlib/master/smartlib.png) SmartThings-SmartLib\n====================\n\nA re-useable library for SmartThings SmartApps. Born out of the need to share re-useable code across various SmartApps. These are various best practices for how to operationalize and instrument your SmartApp.\n\nYou are encouraged to contribute your own re-useable functions and helpers.\n\nThis library is licensed as [Apache V2](https://github.com/fxstein/smartthings-smartlib/blob/master/LICENSE \"Apache V2 License\") and hosted on github: https://github.com/fxstein/smartthings-smartlib\n\n\nSmartLib Library\n================\n\nThese are some of the primitives included in the library:\n\nLogging\n-------\n\nTo better support debugging and operationalization here are some logging helpers to be used instead of\n\n```\ncode example\n```\n\nConversions\n-----------\n\nCommonly required data type conversions when building Apps for SmartThings\n\n```\ncode example\n```\n\nInstallation\n------------\n\n*Describe install and setup required for the SmartLib library*\n\n\nDeveloper Tools\n===============\n\nWhen developing SmartApps and custom devices for SmartThings in Groovy there are some useful tools to help with productivity and where the online IDE falls short.\n\n* First consider using [github](github.com \"GitHub\") for your primary repository of all your work. Track changes, label versions and allow others to contribute through pull requests.\n\n* Depending on your platform install and setup the github client: [Mac](https://mac.github.com \"Github for Mac\") | [Windows](https://windows.github.com \"GitHub for Windows\")\n\n* The development team at github open-sourced their howgrown highly flexible and extensible editor: [Atom](atom.io \"Atom - A hackable text editor for the 21st Century\")\n\n* In order to add groovy support to Atom simply add [Groovy Language Support](https://atom.io/packages/language-groovy \"Groovy Language Support for Atom\")\n\nShould not take more than 5-10 minutes to get you up and running.  \n\nHow to Develop for SmartThings\n------------------------------\n\nLeverage the tool set of your choice or the selection listed above for all your edit, version control, issue tracking and collaboration and simply Copy/Paste your App Code into the [SmartThings Online IDE](https://graph.api.smartthings.com/ide/app/editor \"SmartThings Developer IDE\")\n\n*Wishlist: RESTful API to allow a developer to upload and publish the source code for an App*\n\nUseful Resources\n----------------\n\nThese are some useful resources that will help you develop better SmartThings Apps and device drivers.\n\n### Icons\n\nAlways looking for a suitable icon for your app. SmartThings provides a decent list of icons that can be used as a starting point. It easily allows you to replace the ugly default icon and select a more appropriate one.\n\nThanks to Brian Steere (@Dianoga SmartThings Community) there is a useful icon explorer that allows you to browse some example icons as used by SmartThings:\n[SmartThings Shared Icons](http://scripts.3dgo.net/smartthings/icons/ \"SmartThings Shared Icons on AWS\")\n\nIn order to use any of the icons for your SmartApp simple browse the collection and copy/paste the link into your app. The Icons displayed are the larger 2x sizes.\n\nThermostat Example:\n\n![Thermostat](https://s3.amazonaws.com/smartthings-device-icons/Home/home1-icn@2x.png)\n\n```\nhttps://s3.amazonaws.com/smartthings-device-icons/Home/home1-icn@2x.png\n```\n\nIn order to get the smaller size simply drop the `@2x` from the file name:\n\n```\nhttps://s3.amazonaws.com/smartthings-device-icons/Home/home1-icn.png\n```\n\nSmall Thermostat Example:\n\n![Small Thermostat](https://s3.amazonaws.com/smartthings-device-icons/Home/home1-icn.png)\n\nTo host your own icons and images simply add them to your github repository and reference them through the raw image url like this:\n\n```\nhttps://raw.githubusercontent.com/fxstein/smartthings-smartlib/master/smartlib@2x.png\nhttps://raw.githubusercontent.com/fxstein/smartthings-smartlib/master/smartlib.png\n```\n![SmartLib](https://raw.githubusercontent.com/fxstein/smartthings-smartlib/master/smartlib@2x.png)\n ![SmartLib Small](https://raw.githubusercontent.com/fxstein/smartthings-smartlib/master/smartlib.png)\n\n\n### Markdown Cheatsheet\n\nIn order to write nicely written Markdown documents there is a great resource available here on github that gives lots of examples of how to structure a Markdown Document (Thanks to @adam-p):\n\n[Markdown Cheatsheet](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet \"adam-p's Markdown Cheatsheet\")\n\n\n**To be continued...**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffxstein%2Fsmartthings-smartlib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffxstein%2Fsmartthings-smartlib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffxstein%2Fsmartthings-smartlib/lists"}