{"id":46476798,"url":"https://github.com/hololinked-dev/thing-control-panel","last_synced_at":"2026-03-06T07:11:52.212Z","repository":{"id":249555843,"uuid":"815995261","full_name":"hololinked-dev/thing-control-panel","owner":"hololinked-dev","description":"visual admin client for Things compliant with W3C WoT, like a control panel, to test or interact with a server that has no GUI. Based on material design.","archived":false,"fork":false,"pushed_at":"2026-02-12T20:04:17.000Z","size":2489,"stargazers_count":5,"open_issues_count":33,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-01T08:39:19.079Z","etag":null,"topics":["admin-panel","dev-tools","iot","lab-automation","wot"],"latest_commit_sha":null,"homepage":"https://control-panel.hololinked.dev/","language":"TypeScript","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/hololinked-dev.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"license.txt","code_of_conduct":"CODE_OF_CONDUCT.md","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"VigneshVSV","open_collective":"hololinked-dev","buy_me_a_coffee":"vigneshvsv"}},"created_at":"2024-06-16T19:03:01.000Z","updated_at":"2026-02-12T20:04:22.000Z","dependencies_parsed_at":"2026-01-30T20:20:55.478Z","dependency_job_id":null,"html_url":"https://github.com/hololinked-dev/thing-control-panel","commit_stats":null,"previous_names":["vigneshvsv/thing-control-panel","hololinked-dev/thing-control-panel"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/hololinked-dev/thing-control-panel","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hololinked-dev%2Fthing-control-panel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hololinked-dev%2Fthing-control-panel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hololinked-dev%2Fthing-control-panel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hololinked-dev%2Fthing-control-panel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hololinked-dev","download_url":"https://codeload.github.com/hololinked-dev/thing-control-panel/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hololinked-dev%2Fthing-control-panel/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30165065,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-06T04:43:31.446Z","status":"ssl_error","status_checked_at":"2026-03-06T04:40:30.133Z","response_time":250,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":["admin-panel","dev-tools","iot","lab-automation","wot"],"created_at":"2026-03-06T07:11:51.581Z","updated_at":"2026-03-06T07:11:52.198Z","avatar_url":"https://github.com/hololinked-dev.png","language":"TypeScript","funding_links":["https://github.com/sponsors/VigneshVSV","https://opencollective.com/hololinked-dev","https://buymeacoffee.com/vigneshvsv"],"categories":[],"sub_categories":[],"readme":"# Thing Control Panel\n\nAdmin control panel in React for Things having a standard WoT Thing Description with HTTP protocol binding or\nimplemented with [`hololinked`](https://github.com/VigneshVSV/hololinked). Suitable for development of server backend,\ntest properties, actions and events or generic use purposes to interact with the Thing.\n\nBased on Eclipse Thingweb.\n\nThe GUI is only coming up, its still rough on the edges. If anything is not upto your standard or buggy/broken,\nplease do feel free to reach me, open a discussion in the discussions tab or an issue, or contribute to an existing issue.\n\u003cbr\u003e\n\nThis project is developed on [gitlab](https://gitlab.com/hololinked/thing-control-panel) further, this is only a mirror.\n\n[![email](https://img.shields.io/badge/email%20me-brown)](mailto:info@hololinked.dev)\n\n[Visit Here](https://control-panel.hololinked.dev) for predeployed website with SSL. \u003cbr\u003e\n[Visit Here](http://no-ssl-control-panel.hololinked.net) for predeployed website without SSL. \u003cbr\u003e \u003cbr\u003e\nBased on your server SSL support, you can choose the appropriate link.\n\n![Website Status](https://img.shields.io/website?url=https%3A%2F%2Fcontrol-panel.hololinked.dev\u0026label=SSL%20Website)\n![Website Status](https://img.shields.io/website?url=http%3A%2F%2Fno-ssl-control-panel.hololinked.net\u0026label=Non%20SSL%20Website) \u003cbr\u003e\n![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/hololinked-dev/thing-control-panel/docker-publish.yml?label=Build%20Docker%20Image)\n\n### Installation\n\nIf you intend to self host or use as a desktop app:\n\n`npm install . ` or `npm install . --force` to install the requirements and dependencies \u003cbr/\u003e\n`npm run dev` to run as react app \u003cbr/\u003e\n`npm run dev -- --host --port 12345` to run on the network \u003cbr/\u003e\n`npm run build` to build and host with your own HTTP server \u003cbr/\u003e\n\nThis application is written in plain React and therefore CSR. It is intended to keep it like that.\n\n### Examples\n\n| Device                  | **SSL**                                                                                                                 | **Non-SSL**                                                                                                                  |\n| ----------------------- | ----------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |\n| Oscilloscope Simulator  | [Link](https://control-panel.hololinked.dev/#https://examples.hololinked.dev/simulations/oscilloscope/resources/wot-td) | [Link](http://no-ssl-control-panel.hololinked.net/#http://examples.hololinked.net/simulations/oscilloscope/resources/wot-td) |\n| Data Schema Thing       | [Link](https://control-panel.hololinked.dev/#https://external-examples.hololinked.dev/data-schema-thing)                | [Link](http://no-ssl-control-panel.hololinked.net/#http://external-examples.hololinked.net/data-schema-thing)                |\n| Advanced Coffee Machine | [Link](https://control-panel.hololinked.dev/https://external-examples.hololinked.dev/advanced-coffee-machine)           | [Link](http://no-ssl-control-panel.hololinked.net/#http://external-examples.hololinked.net/advanced-coffee-machine)          |\n| Spectrometer Simulator  | [Link](https://control-panel.hololinked.dev/https://examples.hololinked.dev/simulations/spectrometer/resources/wot-td)  | [Link](http://no-ssl-control-panel.hololinked.net/#http://examples.hololinked.net/simulations/spectrometer/resources/wot-td) |\n\n### Usage\n\nInsert the address of the device or the endpoint of the thing description, then press load. If you are using your own Thing server runtime or a standard location to store\nyour thing descriptions, click on settings (cog-wheel on top left) and edit \"default endpoint for fetching thing description\" to suit\nyour requirements. The address entered in the address bar will then be considered as base URL and the default endpoint will be appended.\n\nIf you are using `hololinked` as the server, the default endpoint can be one of `/resources/wot-td` or `/resources/wot-td?ignore_errors=true`, and you can enter the Thing address as `http(s)://{address of host}/{instance name of the thing}`.\n\nIf self signed HTTP(s) certificate is used, you might have to give permission to the browser. You can open the endpoint in new tab using the new tab button on top right.\nThis should fetch the thing description without fail. Sometimes, the permission given for self signed certificate given may not match the form (TD form field) entries, so please do make sure you can atleast fetch/read one property from a browser tab if the GUI is still not working.\n\nIf you are using one of the pre-hosted websites, make sure your server sets a CORS header as the domain will not match and cross domain resource sharing needs to be enabled. There are currently no cookies and credentials moving around in the website, so its completely safe.\n\nAfter you load, your defined properties, actions and events are shown. You can freely interact with them as shown below:\n\n![Read-Write-Observe Properties](documentation/readme-assets/properties.png)\n![Execute Actions](documentation/readme-assets/actions.png)\n![Stream Events](documentation/readme-assets/events.png)\n\nSupported ops are\n\n- read, write \u0026 observe property\n- invoke action\n- subscribe \u0026 unsubscribe event\n\nWhenever an operation is executed, the output is printed in the console below.\nIts recommended to install a JSON viewer for your web browser, like [this](https://chromewebstore.google.com/detail/json-viewer/gbmdgpbipfallnflgajpaliibnhdgobh).\n\nCredentials or security definitions are not supported yet, sorry, please feel free to add support for it. The client is built on top of node-wot so all\nnode-wot features can, in principle, be supported.\n\nYou can then load the console entries in a new tab and read it in a correctly formatted way or download it for other purposes.\nEdit the number of entries that can stored in the console output by setting the value of \"Max Entries\" from the drop down.\nMore entries will take more RAM, but useful for capturing events or eventful measurement data directly in the GUI.\n\n### Configuration - app.config.ts\n\nThis file contains certain configurations that can be modified according to your requirements:\n\n- `useSSL` - when set to `true`, the app will rendered with a self signed SSL certificate from vite, and the clients will be forced to use SSL.\n\n### Some More Images\n\n\u003cp float=\"left\"\u003e\n    \u003cimg src=\"documentation/readme-assets/surface-pro.png\" alt=\"Tablet View\" width=\"75%\" /\u003e\n    \u003cimg src=\"documentation/readme-assets/phone.png\" alt=\"Phone View\" width=\"20%\" /\u003e\n\u003c/p\u003e\n\n![TD Fragment View](documentation/readme-assets/object-inspector.png)\n\n### Contributing\n\nContributors welcome.\n\nA Scrum workflow is followed for development. You can take a issue, we will assign a timeline/sprint and review it once the sprint is over. Of course, as an individual contributor there is no need to follow this or understand what is SCRUM etc. as its all free work, but it will help us to keep track of the issues and features.\n\n[Project Planning](https://github.com/orgs/hololinked-dev/projects/7)\n\nMeeting date: first wednesday every month, started in April 2025, see details [in organization info](https://github.com/hololinked-dev/#monthly-meetings).\n\nFeel free to also propose new ideas or add more WoT ops. There are also similar projects available from Web of Things community.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhololinked-dev%2Fthing-control-panel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhololinked-dev%2Fthing-control-panel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhololinked-dev%2Fthing-control-panel/lists"}