diff --git a/.github/workflows/dev-tools.yml b/.github/workflows/scripts.yml similarity index 68% rename from .github/workflows/dev-tools.yml rename to .github/workflows/scripts.yml index a0b4a74..6346d85 100644 --- a/.github/workflows/dev-tools.yml +++ b/.github/workflows/scripts.yml @@ -1,15 +1,13 @@ -name: Weekly Dev Tools Update +name: Weekly Script Updates on: schedule: - - cron: '0 0 * * 0' # Runs at 00:00 every Sunday - workflow_dispatch: # Allow manual runs + - cron: '0 0 * * 0' + workflow_dispatch: jobs: - run-dev-tools: + run-weekly-updates: runs-on: ubuntu-latest - - # Needs permissions to create a pull request permissions: contents: write pull-requests: write @@ -34,17 +32,16 @@ jobs: GITLAB_TOKEN: ${{ secrets.GITLAB_TOKEN }} run: npm run dev-tools + - name: Run member-organizations + working-directory: ./scripts + run: npm run member-organizations + - name: Check for differences id: check_diff run: | - # Adding main branch fetch just in case we need to diff against it explicitly - # git fetch origin main - # However, typical requirement is diff against the current branch changes, - # which git diff --quiet handles for unstaged/staged differences. if ! git diff --quiet; then echo "has_diff=true" >> $GITHUB_OUTPUT - # Check if only "lastUpdated" lines changed NON_LAST_UPDATED=$(git diff -U0 | grep '^[+-]' | grep -E -v '^(---|\+\+\+)' | grep -v '"lastUpdated":' || true) OTHER_CHANGES=$(git diff --name-status | grep -v '^M' || true) @@ -63,26 +60,22 @@ jobs: env: GH_TOKEN: ${{ secrets.GH_TOKEN }} run: | - BRANCH_NAME="chore/dev-tools-update-${{ github.run_id }}" + BRANCH_NAME="chore/weekly-updates-${{ github.run_id }}" - # Setup git config git config --global user.name 'github-actions[bot]' git config --global user.email 'github-actions[bot]@users.noreply.github.com' - # Commit and push changes git checkout -b $BRANCH_NAME git add . - git commit -m "Automated: Weekly Dev Tools Update Changes" + git commit -m "Automated: Weekly Script Updates" git push -u origin $BRANCH_NAME - # Create Pull Request gh pr create \ - --title "Automated: Weekly Dev Tools Update Changes" \ - --body "The weekly GitHub workflow has detected updates in the developer tools. Please review and approve these changes to ensure they are correct." \ + --title "Automated: Weekly Script Updates" \ + --body "The weekly GitHub workflow has detected updates from dev-tools and member-organizations scripts. Review and approve these changes." \ --label "automated" \ --base main if [ "${{ steps.check_diff.outputs.only_last_updated }}" == "true" ]; then - echo "Only lastUpdated fields changed. Auto-merging the PR..." gh pr merge "$BRANCH_NAME" --auto --merge || gh pr merge "$BRANCH_NAME" --merge || gh pr merge "$BRANCH_NAME" --auto --squash || gh pr merge "$BRANCH_NAME" --squash fi diff --git a/docs/_data/events.yml b/docs/_data/events.yml index 2a635fb..7b095ad 100644 --- a/docs/_data/events.yml +++ b/docs/_data/events.yml @@ -3,20 +3,30 @@ # - date_display: human-readable date label shown in the table # - cancelled: optional, renders with strikethrough + "(Cancelled)" +- name: 'W3C TPAC 2026' + url: 'https://www.w3.org/wiki/TPAC/2026' + date: '2026-10-26' + date_display: '26-30 October 2026' + +- name: 'W3C WoT PlugFest & Workshop in China' + url: https://www.w3.org/WoT/IG/wiki/Main_WoT_WebConf#Quick_Items_and_Notices_(Informative):~:text=Planning%3A%20W3C%20WoT%20PlugFest%20%26%20Workshop%20in%20China + date: '2026-06-15' + date_display: '15-18 June 2026' + - name: 'W3C TPAC 2025' url: 'https://www.w3.org/wiki/TPAC/2025' date: '2025-11-10' - date_display: '10–14 November 2025' + date_display: '10-14 November 2025' - name: 'WoT Week 2024' url: 'https://www.w3.org/WoT/IG/wiki/Wiki_for_WoT_Week_2024_planning' date: '2024-11-25' - date_display: '25–29 November 2024' + date_display: '25-29 November 2024' - name: 'W3C TPAC 2024' url: 'https://www.w3.org/2024/09/TPAC/Overview.html' date: '2024-09-23' - date_display: '23–27 September 2024' + date_display: '23-27 September 2024' - name: 'IEEE IIWOT 2024' url: 'https://iiwot24.nws.cs.unibo.it/' @@ -26,7 +36,7 @@ - name: 'W3C TPAC 2023' url: 'https://www.w3.org/2023/09/TPAC/' date: '2023-09-11' - date_display: '11–15 September 2023' + date_display: '11-15 September 2023' - name: 'W3C WoT Developer Meeting' url: 'https://github.com/w3c/wot-testing/tree/main/events/2023.03.DevMtg' @@ -41,17 +51,17 @@ - name: 'W3C WoT Testfest (December 2022)' url: 'https://github.com/w3c/wot-testing/tree/main/events/2022.12.Online' date: '2022-12-12' - date_display: '12–16 December 2022' + date_display: '12-16 December 2022' - name: 'TPAC 2022' url: 'https://www.w3.org/2022/09/TPAC/Overview.html' date: '2022-09-12' - date_display: '12–16 September 2022' + date_display: '12-16 September 2022' - name: 'W3C WoT Testfest (June 2022)' url: 'https://github.com/w3c/wot-testing/tree/main/events/2022.06.Online' date: '2022-06-06' - date_display: '6–10 June 2022' + date_display: '6-10 June 2022' - name: 'Node.js Global Summit' url: 'https://events.geekle.us/nodejs/' @@ -71,7 +81,7 @@ - name: 'Plugfest/Testfest (March 2022)' url: 'https://github.com/w3c/wot-testing/tree/main/events/2022.03.Online' date: '2022-03-14' - date_display: '14–18 March 2022' + date_display: '14-18 March 2022' - name: 'W3C Web of Things & ECHONET Lite Web API' url: 'https://wot-jp-cg.connpass.com/event/239394/' @@ -93,7 +103,7 @@ date: '2022-01-08' date_display: '8 January 2022' -- name: 'IoT Tech Expo Europe 2021 – IoT Security Panel' +- name: 'IoT Tech Expo Europe 2021 - IoT Security Panel' url: 'https://www.iottechexpo.com/europe/' date: '2021-11-30' date_display: '30 November 2021' @@ -101,7 +111,7 @@ - name: 'DIoT 2021' url: 'https://oeg-upm.github.io/DIoT/' date: '2021-11-08' - date_display: '8–12 November 2021' + date_display: '8-12 November 2021' cancelled: true - name: 'WoT at TPAC 2021' @@ -112,7 +122,7 @@ - name: 'TPAC 2021' url: 'https://www.w3.org/2021/10/TPAC/' date: '2021-10-18' - date_display: '18–29 October 2021' + date_display: '18-29 October 2021' - name: 'IoT Tech Expo North America 2021' url: 'https://www.iottechexpo.com/northamerica/track/iot-digital-infrastructures-day-1/' @@ -122,27 +132,27 @@ - name: 'RIoT Summit 2021' url: 'https://summit.riot-os.org/2021/' date: '2021-09-09' - date_display: '9–10 September 2021' + date_display: '9-10 September 2021' - name: 'Virtual F2F Meeting (June 2021)' url: 'https://www.w3.org/WoT/IG/wiki/F2F_meeting,_June_2021#Virtual_F2F' date: '2021-06-21' - date_display: '21 June – 2 July 2021' + date_display: '21 June - 2 July 2021' - name: 'Testfest (June 2021)' url: 'https://www.w3.org/WoT/IG/wiki/F2F_meeting,_June_2021#Testfest' date: '2021-06-07' - date_display: '7–11 June 2021' + date_display: '7-11 June 2021' - name: 'Virtual F2F Meeting (March 2021)' url: 'https://www.w3.org/WoT/IG/wiki/F2F_meeting,_March_2021' date: '2021-03-15' - date_display: '15–26 March 2021' + date_display: '15-26 March 2021' - name: 'Virtual F2F PlugFest (March 2021)' url: 'https://github.com/w3c/wot-testing/blob/master/events/2021.03.Online/README.md' date: '2021-03-01' - date_display: '1–5 March 2021' + date_display: '1-5 March 2021' - name: 'Virtual F2F Meeting (October 2020)' url: 'https://www.w3.org/WoT/IG/wiki/F2F_meeting,_October_2020' diff --git a/docs/_data/generated/memberOrganizationsOutput.json b/docs/_data/generated/memberOrganizationsOutput.json new file mode 100644 index 0000000..4619f62 --- /dev/null +++ b/docs/_data/generated/memberOrganizationsOutput.json @@ -0,0 +1,876 @@ +{ + "Web of Things Working Group": [ + { + "title": "|pipe|", + "homepage": "https://pi.pe" + }, + { + "title": "ACCESS CO., LTD.", + "homepage": "http://www.access-company.com/" + }, + { + "title": "ByteDance", + "homepage": "https://bytedance.com/" + }, + { + "title": "Conexxus", + "homepage": "http://www.conexxus.org" + }, + { + "title": "Ecole Mohammadia d'Ingenieurs Rabat (EMI)", + "homepage": "http://www.emi.ac.ma" + }, + { + "title": "Electronics and Telecommunications Research Institute (ETRI)", + "homepage": "http://www.etri.re.kr" + }, + { + "title": "ERICSSON", + "homepage": "https://www.ericsson.com" + }, + { + "title": "Fraunhofer Gesellschaft", + "homepage": "https://www.fraunhofer.de/en.html" + }, + { + "title": "Fujitsu Limited", + "homepage": "http://www.fujitsu.com" + }, + { + "title": "Fundacion CTIC", + "homepage": "http://www.fundacionctic.org" + }, + { + "title": "Gooroomee Inc.", + "homepage": "http://www.gooroomee.com" + }, + { + "title": "Hitachi, Ltd.", + "homepage": "https://www.hitachi.com/" + }, + { + "title": "Ignite Retail Technology", + "homepage": "http://ignite-retail.com" + }, + { + "title": "Institut Mines-Télécom", + "homepage": "https://www.imt.fr/" + }, + { + "title": "Institut National de Recherche en Informatique et en Automatique (Inria)", + "homepage": "https://www.inria.fr/" + }, + { + "title": "Intel Corporation", + "homepage": "http://www.intel.com/" + }, + { + "title": "Internet Research Institute, Inc.", + "homepage": "http://www.iri.co.jp/" + }, + { + "title": "MEDIA DO Co., Ltd.", + "homepage": "https://www.mediado.jp/english/" + }, + { + "title": "Microsoft Corporation", + "homepage": "https://www.microsoft.com/" + }, + { + "title": "OpenLink Software Inc.", + "homepage": "http://www.openlinksw.com" + }, + { + "title": "Oracle Corporation", + "homepage": "http://www.oracle.com/" + }, + { + "title": "Rakuten Group, Inc.", + "homepage": "https://global.rakuten.com/corp/" + }, + { + "title": "Siemens AG", + "homepage": "http://www.siemens.com" + }, + { + "title": "Universidad Politécnica de Madrid", + "homepage": "https://www.upm.es" + } + ], + "Web of Things Community Group": [ + { + "title": "52°North Initiative for Geospatial Open Source Software GmbH", + "homepage": null + }, + { + "title": "Advanced Distributed Learning (ADL) Initiative", + "homepage": null + }, + { + "title": "Agency for Digitisation", + "homepage": "https://en.digst.dk/" + }, + { + "title": "Akshayaguna Technologies", + "homepage": null + }, + { + "title": "ARCES University of Bologna", + "homepage": null + }, + { + "title": "Armor Safe Technologies", + "homepage": "https://www.armorsafe.com" + }, + { + "title": "Avantia Inc.", + "homepage": null + }, + { + "title": "Beijing University of Posts and Telecommunications", + "homepage": "http://www.bupt.edu.cn" + }, + { + "title": "BELIMO Automation AG", + "homepage": null + }, + { + "title": "C S Infocomm Pvt Ltd", + "homepage": null + }, + { + "title": "Centre for Development of Advanced Technologies (CDTA)", + "homepage": null + }, + { + "title": "CNR-ISTI (Istituto di Scienza e Tecnologie dell'Informazione \"A. Faedo\")", + "homepage": "http://www.isti.cnr.it/" + }, + { + "title": "Council, Thinktank for the Internet of Things", + "homepage": null + }, + { + "title": "CREATE-NET", + "homepage": null + }, + { + "title": "Crypho AS", + "homepage": null + }, + { + "title": "Daliworks", + "homepage": "http://www.daliworks.co.kr/" + }, + { + "title": "Datagraph GmbH", + "homepage": "https://dydra.com/" + }, + { + "title": "Datasance Teknoloji A.S.", + "homepage": "https://datasance.com/" + }, + { + "title": "Dell Inc.", + "homepage": "http://www.dell.com" + }, + { + "title": "Deutsche Telekom AG", + "homepage": "http://www.telekom.com" + }, + { + "title": "Electronics and Telecommunications Research Institute (ETRI)", + "homepage": "http://www.etri.re.kr" + }, + { + "title": "embeteco GmbH & Co. KG", + "homepage": null + }, + { + "title": "EnergyDeck", + "homepage": null + }, + { + "title": "FEITIAN Technologies", + "homepage": null + }, + { + "title": "Forschungszentrum Informatik (FZI)", + "homepage": "http://www.fzi.de" + }, + { + "title": "Fraunhofer Gesellschaft", + "homepage": "https://www.fraunhofer.de/en.html" + }, + { + "title": "GMO Internet", + "homepage": null + }, + { + "title": "Google LLC", + "homepage": "http://www.google.com/" + }, + { + "title": "Gooroomee Inc.", + "homepage": "http://www.gooroomee.com" + }, + { + "title": "Hansung University", + "homepage": null + }, + { + "title": "Hitachi, Ltd.", + "homepage": "https://www.hitachi.com/" + }, + { + "title": "HiveMQ", + "homepage": "https://www.hivemq.com/" + }, + { + "title": "HM Government", + "homepage": "https://www.gov.uk" + }, + { + "title": "Hochschule Hamm-Lippstadt", + "homepage": "https://www.hshl.de/" + }, + { + "title": "Hypothes.is Project", + "homepage": "http://hypothes.is" + }, + { + "title": "IBM Corporation", + "homepage": "http://www.ibm.com/" + }, + { + "title": "imec", + "homepage": "https://www.imec-int.com/" + }, + { + "title": "INSIGHT - The Centre for Data Analytics", + "homepage": "http://www.insight-centre.org" + }, + { + "title": "Institut Mines-Télécom", + "homepage": "https://www.imt.fr/" + }, + { + "title": "Institut National de Recherche en Informatique et en Automatique (Inria)", + "homepage": "https://www.inria.fr/" + }, + { + "title": "Intel Corporation", + "homepage": "http://www.intel.com/" + }, + { + "title": "Internet Research Institute, Inc.", + "homepage": "http://www.iri.co.jp/" + }, + { + "title": "INXITION", + "homepage": null + }, + { + "title": "Istituto Superiore Mario Boella", + "homepage": null + }, + { + "title": "Jameelware", + "homepage": null + }, + { + "title": "JOANNEUM RESEARCH Forschungsgesellschaft mbH", + "homepage": "http://www.joanneum.at/en" + }, + { + "title": "KAIST", + "homepage": "http://www.kaist.ac.kr" + }, + { + "title": "KDDI CORPORATION", + "homepage": "http://www.kddi.com/" + }, + { + "title": "Krellian", + "homepage": null + }, + { + "title": "Krypton Brothers", + "homepage": null + }, + { + "title": "Lahrin i Hajstorp", + "homepage": null + }, + { + "title": "Luminem", + "homepage": "http://luminem.org/" + }, + { + "title": "MITRE Corporation", + "homepage": "http://www.mitre.org/" + }, + { + "title": "Mobiletta", + "homepage": "http://www.mobiletta.com" + }, + { + "title": "Mycelion", + "homepage": "http://mycelion.art" + }, + { + "title": "MyCQ", + "homepage": null + }, + { + "title": "National Technical University of Athens", + "homepage": null + }, + { + "title": "NeverBlink sp. z o.o.", + "homepage": "https://neverblink.eu" + }, + { + "title": "NIC.br - Brazilian Network Information Center", + "homepage": "http://www.cgi.br" + }, + { + "title": "Nokia Corporation", + "homepage": "http://www.nokia.com/" + }, + { + "title": "NTT, Inc.", + "homepage": "https://group.ntt/en/" + }, + { + "title": "Open City Foundation", + "homepage": null + }, + { + "title": "Open Geospatial Consortium", + "homepage": "https://www.ogc.org/" + }, + { + "title": "OpenLink Software Inc.", + "homepage": "http://www.openlinksw.com" + }, + { + "title": "opensensors.io", + "homepage": null + }, + { + "title": "Oracle Corporation", + "homepage": "http://www.oracle.com/" + }, + { + "title": "Orange", + "homepage": "http://www.orange.com/" + }, + { + "title": "PA Consulting Group", + "homepage": null + }, + { + "title": "Plantronics, Inc.", + "homepage": "http://www.plantronics.com" + }, + { + "title": "Plutinsus", + "homepage": "https://www.plutinsus.com/" + }, + { + "title": "Politecnico di Bari", + "homepage": null + }, + { + "title": "PwC", + "homepage": null + }, + { + "title": "Robert Bosch GmbH", + "homepage": "https://www.bosch.com" + }, + { + "title": "Rokaware SL (Netzo)", + "homepage": null + }, + { + "title": "Samsung Electronics Co., Ltd.", + "homepage": "https://www.samsung.com" + }, + { + "title": "Sense Tecnic Systems, Inc.", + "homepage": null + }, + { + "title": "Siemens AG", + "homepage": "http://www.siemens.com" + }, + { + "title": "SMARTRAC TECHNOLOGY Fletcher, Inc.", + "homepage": "http://www.smartrac-group.com" + }, + { + "title": "Social Web Foundation", + "homepage": "http://socialwebfoundation.org" + }, + { + "title": "Sony Group Corporation", + "homepage": "https://www.sony.com/en/" + }, + { + "title": "Spec-Ops", + "homepage": "https://spec-ops.io" + }, + { + "title": "Sprint Nextel", + "homepage": null + }, + { + "title": "SSNCE", + "homepage": null + }, + { + "title": "Stiftelsen for internetinfrastruktur (IIS)", + "homepage": "https://iis.se" + }, + { + "title": "Telecom Italia SpA", + "homepage": "http://www.telecomitalia.com/tit/en.html" + }, + { + "title": "The Open University", + "homepage": "http://www.open.ac.uk" + }, + { + "title": "Thematix Partners, LLC", + "homepage": null + }, + { + "title": "Third Space Learning", + "homepage": null + }, + { + "title": "Tidepool", + "homepage": "https://www.tidepool.org/" + }, + { + "title": "Toshiba Corporation", + "homepage": "http://www.toshiba.com/" + }, + { + "title": "Universidad Politécnica de Madrid", + "homepage": "https://www.upm.es" + }, + { + "title": "Universitas Indonesia", + "homepage": null + }, + { + "title": "Université de Lyon", + "homepage": "http://www.universite-lyon.fr" + }, + { + "title": "University of Bath", + "homepage": null + }, + { + "title": "University of Calgary", + "homepage": null + }, + { + "title": "University of Malta", + "homepage": null + }, + { + "title": "University of Oklahoma", + "homepage": null + }, + { + "title": "University of Oulu", + "homepage": null + }, + { + "title": "University of Southampton", + "homepage": "http://www.ecs.soton.ac.uk" + }, + { + "title": "University of Surrey", + "homepage": "http://www.surrey.ac.uk" + }, + { + "title": "VAIMEE", + "homepage": null + }, + { + "title": "Vienna University of Technology", + "homepage": null + }, + { + "title": "Virtual Organization Management Institute", + "homepage": null + }, + { + "title": "WebDINO Japan", + "homepage": "https://www.webdino.org/" + }, + { + "title": "webRunes", + "homepage": null + }, + { + "title": "Weever Apps Inc.", + "homepage": null + }, + { + "title": "Yaler GmbH", + "homepage": null + }, + { + "title": "Zhejiang University", + "homepage": "http://www.zju.edu.cn" + }, + { + "title": "Zoetrope", + "homepage": null + }, + { + "title": "鴻海精密工業股份有限公司", + "homepage": null + } + ], + "Web Thing Protocol Community Group": [ + { + "title": "adafruit", + "homepage": null + }, + { + "title": "Baycloud Systems", + "homepage": "https://baycloud.com" + }, + { + "title": "Conexxus", + "homepage": "http://www.conexxus.org" + }, + { + "title": "Deutsche Telekom AG", + "homepage": "http://www.telekom.com" + }, + { + "title": "EVRYTHNG", + "homepage": "http://evrythng.com" + }, + { + "title": "Flerwin Group", + "homepage": null + }, + { + "title": "Krellian", + "homepage": null + }, + { + "title": "Luminem", + "homepage": "http://luminem.org/" + }, + { + "title": "Mozilla Foundation", + "homepage": "https://www.mozilla.org/" + }, + { + "title": "Mycelion", + "homepage": "http://mycelion.art" + }, + { + "title": "netavanza", + "homepage": "https://netavanza.com" + }, + { + "title": "TheChineseWriter Limited", + "homepage": "https://www.thechinesewriter.co.uk" + }, + { + "title": "University of Bath", + "homepage": null + } + ], + "Web of Things Japanese Community Group": [ + { + "title": "Data Society Alliance", + "homepage": "https://data-society-alliance.org/" + }, + { + "title": "Fujitsu Limited", + "homepage": "http://www.fujitsu.com" + }, + { + "title": "Hakuhodo DY media partners Inc.", + "homepage": "http://www.hakuhodody-media.co.jp/english/" + }, + { + "title": "Hitachi, Ltd.", + "homepage": "https://www.hitachi.com/" + }, + { + "title": "Internet Academy", + "homepage": "https://www.internetacademy.jp" + }, + { + "title": "Internet Research Institute, Inc.", + "homepage": "http://www.iri.co.jp/" + }, + { + "title": "Kadokawa Corporation", + "homepage": "https://www.kadokawa.co.jp/" + }, + { + "title": "KDDI CORPORATION", + "homepage": "http://www.kddi.com/" + }, + { + "title": "Keio University", + "homepage": "https://www.keio.ac.jp/" + }, + { + "title": "LY Corporation", + "homepage": "https://www.lycorp.co.jp/" + }, + { + "title": "MEDIA DO Co., Ltd.", + "homepage": "https://www.mediado.jp/english/" + }, + { + "title": "Newphoria Corporation", + "homepage": "http://www.newphoria.co.jp/" + }, + { + "title": "NHK (Japan Broadcasting Corporation)", + "homepage": "https://www.nhk.or.jp/strl/english/" + }, + { + "title": "SoftBank Corp.", + "homepage": "http://www.softbank.jp/en/" + }, + { + "title": "The Japan Electrical Manufacturers' Association", + "homepage": null + }, + { + "title": "The University of Tokyo", + "homepage": null + }, + { + "title": "Toshiba Corporation", + "homepage": "http://www.toshiba.com/" + }, + { + "title": "UPWIND TECHNOLOGY, INC.", + "homepage": null + }, + { + "title": "WebDINO Japan", + "homepage": "https://www.webdino.org/" + } + ], + "Web of Things Interest Group": [ + { + "title": "|pipe|", + "homepage": "https://pi.pe" + }, + { + "title": "360", + "homepage": "https://www.360.cn/" + }, + { + "title": "ACCESS CO., LTD.", + "homepage": "http://www.access-company.com/" + }, + { + "title": "Adobe", + "homepage": "https://www.adobe.com/" + }, + { + "title": "AT&T", + "homepage": "http://www.att.com/" + }, + { + "title": "British Broadcasting Corporation", + "homepage": "https://www.bbc.co.uk/" + }, + { + "title": "ByteDance", + "homepage": "https://bytedance.com/" + }, + { + "title": "China Mobile Communications Corporation", + "homepage": "http://www.chinamobileltd.com/en/global/home.php" + }, + { + "title": "Electronics and Telecommunications Research Institute (ETRI)", + "homepage": "http://www.etri.re.kr" + }, + { + "title": "ERICSSON", + "homepage": "https://www.ericsson.com" + }, + { + "title": "FIME", + "homepage": "https://www.fime.com/" + }, + { + "title": "Forschungszentrum Informatik (FZI)", + "homepage": "http://www.fzi.de" + }, + { + "title": "Fraunhofer Gesellschaft", + "homepage": "https://www.fraunhofer.de/en.html" + }, + { + "title": "Fujitsu Limited", + "homepage": "http://www.fujitsu.com" + }, + { + "title": "Fundacion CTIC", + "homepage": "http://www.fundacionctic.org" + }, + { + "title": "German Research Center for Artificial Intelligence (DFKI) Gmbh", + "homepage": "https://www.dfki.de" + }, + { + "title": "Google LLC", + "homepage": "http://www.google.com/" + }, + { + "title": "Hitachi, Ltd.", + "homepage": "https://www.hitachi.com/" + }, + { + "title": "HM Government", + "homepage": "https://www.gov.uk" + }, + { + "title": "Huawei", + "homepage": "http://www.huawei.com" + }, + { + "title": "imec", + "homepage": "https://www.imec-int.com/" + }, + { + "title": "INSIGHT - The Centre for Data Analytics", + "homepage": "http://www.insight-centre.org" + }, + { + "title": "Institut Mines-Télécom", + "homepage": "https://www.imt.fr/" + }, + { + "title": "Institut National de Recherche en Informatique et en Automatique (Inria)", + "homepage": "https://www.inria.fr/" + }, + { + "title": "Inswave Co., Ltd.", + "homepage": "http://www.inswave.com" + }, + { + "title": "Intel Corporation", + "homepage": "http://www.intel.com/" + }, + { + "title": "Internet Research Institute, Inc.", + "homepage": "http://www.iri.co.jp/" + }, + { + "title": "KDDI CORPORATION", + "homepage": "http://www.kddi.com/" + }, + { + "title": "Knowbility", + "homepage": "https://knowbility.org" + }, + { + "title": "Kodansha, Publishers, Ltd.", + "homepage": "https://www.kodansha.com/" + }, + { + "title": "Korea Electronics Technology Institute (KETI)", + "homepage": "https://www.keti.re.kr/eng/main/main.php" + }, + { + "title": "MEDIA DO Co., Ltd.", + "homepage": "https://www.mediado.jp/english/" + }, + { + "title": "Microsoft Corporation", + "homepage": "https://www.microsoft.com/" + }, + { + "title": "MITRE Corporation", + "homepage": "http://www.mitre.org/" + }, + { + "title": "Mitsubishi Electric Corporation", + "homepage": "http://www.mitsubishielectric.com/" + }, + { + "title": "Mozilla Foundation", + "homepage": "https://www.mozilla.org/" + }, + { + "title": "NHK (Japan Broadcasting Corporation)", + "homepage": "https://www.nhk.or.jp/strl/english/" + }, + { + "title": "NIC.br - Brazilian Network Information Center", + "homepage": "http://www.cgi.br" + }, + { + "title": "NTT, Inc.", + "homepage": "https://group.ntt/en/" + }, + { + "title": "OpenLink Software Inc.", + "homepage": "http://www.openlinksw.com" + }, + { + "title": "Oracle Corporation", + "homepage": "http://www.oracle.com/" + }, + { + "title": "Siemens AG", + "homepage": "http://www.siemens.com" + }, + { + "title": "SoftBank Corp.", + "homepage": "http://www.softbank.jp/en/" + }, + { + "title": "Sony Group Corporation", + "homepage": "https://www.sony.com/en/" + }, + { + "title": "Tencent", + "homepage": "http://www.tencent.com" + }, + { + "title": "TPGi", + "homepage": "https://www.tpgi.com" + }, + { + "title": "Universidad Politécnica de Madrid", + "homepage": "https://www.upm.es" + }, + { + "title": "Viacom inc.", + "homepage": "http://www.paramount.tech" + }, + { + "title": "Wikimedia Foundation", + "homepage": "https://wikimediafoundation.org/" + }, + { + "title": "WU (Wirschaftsuniversität Wien) - Vienna University of Economics and Business", + "homepage": "https://www.wu.ac.at/" + } + ] +} \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 57dc212..396748d 100644 --- a/docs/index.html +++ b/docs/index.html @@ -17,7 +17,7 @@ .hero-section > p { font-size: 18px; - line-height: 1.7; + line-height: 1.6; color: #444; max-width: 860px; } @@ -37,7 +37,7 @@ .section-block p { font-size: 16px; - line-height: 1.75; + line-height: 1.6; color: #333; } @@ -89,7 +89,7 @@ .learn-more { display: inline-block; margin-top: 8px; - font-size: 15px; + font-size: 16px; font-weight: 500; } @@ -105,6 +105,275 @@ .hero-section h2 { font-size: 26px; } + + .members-preview { + /* Show only top 4 cards on mobile */ + grid-template-columns: 1fr 1fr; + } + .members-preview .member-card:nth-child(n + 5) { + display: none; + } + } + @media (min-width: 768px) and (max-width: 1023px) { + .members-preview { + grid-template-columns: repeat(3, 1fr); + } + .members-preview .member-card:nth-child(n + 7) { + display: none; + } + } + @media (min-width: 1024px) { + .members-preview { + grid-template-columns: repeat(4, 1fr); + } + } + + .members-preview { + display: grid; + gap: 16px; + margin-bottom: 20px; + } + + .member-card { + display: flex; + align-items: center; + justify-content: center; + padding: 16px; + background: #fff; + border: 1px solid #dbe7f0; + border-radius: 8px; + text-align: center; + text-decoration: none !important; + color: #1a1a2e !important; + font-weight: 500; + transition: all 0.2s ease; + min-height: 80px; + } + + .member-card:hover { + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); + transform: translateY(-2px); + color: #005a9c; + border-color: #005a9c; + } + + .modal-overlay { + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: rgba(0, 0, 0, 0.5); + display: flex; + justify-content: center; + align-items: center; + z-index: 1000; + opacity: 0; + visibility: hidden; + transition: all 0.3s ease; + } + + .modal-overlay.active { + opacity: 1; + visibility: visible; + } + + .modal-content { + background: #fff; + width: 90%; + max-width: 1000px; + max-height: 80vh; + border-radius: 8px; + display: flex; + flex-direction: column; + box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2); + transform: translateY(20px); + transition: transform 0.3s ease; + } + + .modal-overlay.active .modal-content { + transform: translateY(0); + } + + .modal-header { + padding: 20px 24px; + border-bottom: 1px solid #eee; + display: flex; + justify-content: space-between; + align-items: center; + } + + .modal-header h3 { + margin: 0; + padding: 0; + border: none; + font-size: 24px; + font-weight: 600; + } + + .close-modal { + background: none; + border: none; + font-size: 28px; + cursor: pointer; + color: #888; + line-height: 1; + padding: 0; + } + + .close-modal:hover { + color: #1a1a2e; + } + + .members-container { + padding: 24px; + overflow-y: auto; + } + + .member-group { + margin-bottom: 32px; + } + + .member-group:last-child { + margin-bottom: 0; + } + + .member-group-title { + margin-top: 0; + margin-bottom: 16px; + font-size: 20px; + font-weight: 600; + color: #005a9c; + border-bottom: 2px solid #eee; + padding-bottom: 8px; + display: flex; + justify-content: space-between; + align-items: center; + } + + .member-group-count { + background: #f0f4f8; + color: #005a9c; + padding: 4px 12px; + border-radius: 12px; + font-size: 14px; + font-weight: 600; + } + + .members-grid { + display: grid; + gap: 16px; + grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); + } + + .activities-col { + display: flex; + flex-direction: column; + height: 100%; + } + + .articles-list { + display: grid; + grid-template-rows: 1fr 1fr 1fr; + gap: 16px; + margin-bottom: 20px; + flex-grow: 1; + } + + .article-item { + position: relative; + display: flex; + flex-direction: column; + padding: 16px; + background: #fff; + border: 1px solid #dbe7f0; + border-radius: 8px; + transition: all 0.2s ease; + height: 100%; + } + + .article-item:hover { + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); + transform: translateY(-2px); + border-color: #005a9c; + } + + .article-item h4 { + margin-top: 0; + margin-bottom: 8px; + font-size: 18px; + font-weight: 600; + line-height: 1.4; + display: flex; + align-items: center; + gap: 8px; + } + + .article-item h4 a { + color: #1a1a2e !important; + text-decoration: none !important; + transition: color 0.2s ease; + } + + .article-item:hover h4 a { + color: #005a9c !important; + } + + .article-item h4 a::after { + content: ''; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + z-index: 1; + } + + .article-meta { + margin-top: auto; + font-size: 14px; + color: #666; + } + + .badge-upcoming { + display: inline-flex; + align-items: center; + padding: 2px 8px; + background: #0074c1; + color: white; + font-size: 10px; + font-weight: 700; + text-transform: uppercase; + border-radius: 4px; + letter-spacing: 0.5px; + line-height: 1.2; + } + + .activities-grid { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 32px; + margin-bottom: 20px; + } + + @media (max-width: 767px) { + .activities-grid { + grid-template-columns: 1fr; + } + } + + .toots { + max-width: none; + width: 100%; + } + + .toot .attachment { + max-height: 300px; + aspect-ratio: unset; + } + .toot .attachment img { + object-fit: contain; + width: auto; } @@ -118,7 +387,7 @@

W3C Web of Things

-

Web of Things in a Nutshell

+

WoT in a Nutshell

@@ -127,49 +396,36 @@

Web of Things in a Nutshell

communication protocols, differing data models, and varying security requirements. Applications built this way demand high effort for narrow use cases and become difficult to extend, maintain, or reuse over time.

-
-
- Fragmented IoT landscape showing diverse protocols and systems -
-
- -
-

WoT provides standardized building blocks that simplify IoT application development by applying the well-established Web paradigm. This approach boosts flexibility and interoperability—especially for cross-domain scenarios—while enabling reuse of proven standards and tooling. WoT unlocks the commercial potential held back by IoT fragmentation.

- - Read the WoT Architecture specification → -
-
- Web of Things logo +
+ Fragmented IoT landscape showing diverse protocols and systems
- -
-

WoT Interactions

+ +
+

Use Cases

- WoT introduces a simple, universal interaction model based on - Properties, Actions, and Events. Any IoT network interface - can be described using this abstraction, giving applications a common way to discover an IoT service's metadata - and understand how to access its data and functions—regardless of the underlying technology. + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore + magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo + consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla + pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est + laborum.

- - Learn about the interaction model → -
WoT Interactions
- -
-

WoT Building Blocks

+ +
+ {% assign grouped_members = site.data.generated.memberOrganizationsOutput %} {% assign total_members = 0 %} {% for + group in grouped_members %} {% assign group_size = group[1] | size %} {% assign total_members = total_members | plus: + group_size %} {% endfor %} +

Members

+

+ Many W3C member organizations are involved in the Web of Things ecosystem across various groups. Click on any group + below to explore its active members. +

- -
-
-

- The WoT Thing Description (TD) is the central building block of the Web of Things. Much like an - index.html serves as a website's entry point, a TD documents everything needed to interact with an - IoT device: available data and functions, communication protocols, payload encoding, and security mechanisms. - Expressed in JSON-LD, TDs can be served directly by devices or hosted in a TD Directory. -

- - Explore the Thing Description specification → - -
-
- WoT Thing Description (TD) illustrated with a robot arm + + +
+ {% for group in grouped_members %} +
+
+ {{ group[1] | size }} +
+
{{ group[0] }}
+ {% endfor %}
+
- -
-
-

- WoT is protocol-agnostic. WoT Binding Templates define how specific protocols—such as MQTT, - HTTP, CoAP, or Modbus—map onto the Properties–Actions–Events abstraction. Each binding template provides a - guideline for clients to activate WoT interactions through the corresponding network interface. -

- - Read the Binding Templates specification → - + +