{"id":16654450,"url":"https://github.com/commanderredyt/homeiot-webdashboard","last_synced_at":"2026-05-13T16:31:14.299Z","repository":{"id":105006928,"uuid":"335115954","full_name":"CommanderRedYT/homeiot-webdashboard","owner":"CommanderRedYT","description":"Customizable Web-Dashboard for thinger.io","archived":false,"fork":false,"pushed_at":"2021-02-02T15:34:30.000Z","size":101,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-19T11:25:20.558Z","etag":null,"topics":["dashboard","iot","php"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CommanderRedYT.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2021-02-01T23:47:32.000Z","updated_at":"2021-02-12T21:23:55.000Z","dependencies_parsed_at":null,"dependency_job_id":"9f28bec2-4d6d-4a7e-be10-20dbc3246fdb","html_url":"https://github.com/CommanderRedYT/homeiot-webdashboard","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CommanderRedYT%2Fhomeiot-webdashboard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CommanderRedYT%2Fhomeiot-webdashboard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CommanderRedYT%2Fhomeiot-webdashboard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CommanderRedYT%2Fhomeiot-webdashboard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CommanderRedYT","download_url":"https://codeload.github.com/CommanderRedYT/homeiot-webdashboard/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243269234,"owners_count":20264014,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["dashboard","iot","php"],"created_at":"2024-10-12T09:49:48.733Z","updated_at":"2025-12-27T20:54:26.998Z","avatar_url":"https://github.com/CommanderRedYT.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Web-UI\n\n## General\n  \nThis project is a web-dashboard that interfaces with the API of [Thinger.io](https://thinger.io/).\n  It works on any apache instance (PHP module required). Or you could just use `php -S IP:80`.\n  ***Required PHP Version \u003e 7.3***\n\n----------\n ## Usage (Server-Side)\n\n- Steps to create your own UI:\n    1. Duplicate the file `dashboard_template.php` and rename it to `dashboard_$USERNAME`, but replace `$USERNAME` with your username!\n    2. Open the login-page and execute `createHash({username}, {password})` and copy the hash returned!\n    3. Then, create a file called `.credentials`. In this file, put the copied hash into the first line and your username into the second!\n    4. Customize the UI with the functions listed below!\n\u003cbr\u003e\u003cbr\u003e\n\n- OUTPUT\n  \n    ***`$device` refers to the device name you declared \u003ca href=\"https://console.thinger.io/\" target=\"_blank\"\u003ehere\u003c/a\u003e.***\n\n    ***`$thing` refers to the \"thing\" created in the device code! (for example from an NodeMCU or ESP8266!)***\n    \u003cbr\u003e\u003cbr\u003e\n    - `status(string $device)` Use this to display current status (offline/online + *optional stats*)\n    \u003cbr\u003e\u003cbr\u003e\n    - `temperature(string $device, string $thing, int $maxVal, int $width, bool $unit)` Use this to display temperature! \n       - `$maxVal` is the maximum value the gauge will display\n       -  `$width` defines the width and size of the canvas\n       -  `$unit` defines which unit. °C (*`true`*) or °F (*`false`*)\n    \u003cbr\u003e\u003cbr\u003e\n    - `humidity(string $device, string $thing, int $width)` Use this to display humidity! (0-100%)\n      -  `$width` defines the width and size of the canvas\n    \u003cbr\u003e\u003cbr\u003e\n    - `textValue(string $device, string $thing)` Use this to display plain messages!\n    \u003cbr\u003e\u003cbr\u003e\n    - `led(string $device, string $thing, int $size = 32)` A little LED/Light bulb to display a boolean value.\n      -  `$size` (Optional) Defaults to `32`. Value will be used in the css-unit `p (pixels)` for height and width for the \"led\"\n      - The state **`true`** will be triggered, if API-Response is `true`*(boolean)*, `\"true\"`*(string)* or `1`*(number)*.\n      - The state **`false`** will be triggered from every other value that doesn't trigger **`true`**!\n    \u003cbr\u003e\u003cbr\u003e\n\n- INPUT\n\n    - `button($device, $thing, $value = '{\"in\":true}', $text = \"\", $style = \"primary\")` A normal push button to trigger an action!\n      - `$value` (Optional) Defaults to `'{\"in\":true}'`. Can be set to any value, for example `'{\"in\":true}'`\n      - `$text` (Optional) Defaults to `$thing`. Can be set to any string to for custom Text on Button!\n      - `$style` (Optional) Defaults to `\"primary\"`. Can be set to any bootstrap-color-value (for example *danger*, *success*, ...)\n    \u003cbr\u003e\u003cbr\u003e\n\n- LAYOUT\n\n    - `layout($type, $isfluid = false)` Use this for layout! It behaves like html tags, so you have to call `layout($type)` again to \"close the layout\".\n      - `$type` Type of layout. ('grid')\n      - `$isfluid` (Optional) Defaults to `false`. If it is set to *`true`*, the container will be a fluid container.\n      \u003cbr\u003e\u003cbr\u003e\n\n----------\n## Usage (User-Side)\n\n- Gauges will have `$thing` displayed in brackets after the value","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcommanderredyt%2Fhomeiot-webdashboard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcommanderredyt%2Fhomeiot-webdashboard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcommanderredyt%2Fhomeiot-webdashboard/lists"}