{"id":20484419,"url":"https://github.com/sap-samples/ui5-service-worker-sample","last_synced_at":"2025-07-03T22:07:13.080Z","repository":{"id":37468343,"uuid":"320377567","full_name":"SAP-samples/ui5-service-worker-sample","owner":"SAP-samples","description":"ui5-service-worker-sample demonstrates how the Service Worker API, available in modern web browsers, could be used in a UI5 app to realize different caching strategies.","archived":false,"fork":false,"pushed_at":"2025-06-15T10:58:21.000Z","size":7244,"stargazers_count":23,"open_issues_count":4,"forks_count":12,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-06-15T11:50:33.374Z","etag":null,"topics":["openui5","sample","sample-code","sapui5","service-worker","ui5"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/SAP-samples.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":"2020-12-10T20:04:54.000Z","updated_at":"2025-06-15T10:58:24.000Z","dependencies_parsed_at":"2023-02-15T22:01:23.117Z","dependency_job_id":"61330dc1-1fd4-4d9f-a67c-d36ad5a79729","html_url":"https://github.com/SAP-samples/ui5-service-worker-sample","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SAP-samples/ui5-service-worker-sample","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP-samples%2Fui5-service-worker-sample","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP-samples%2Fui5-service-worker-sample/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP-samples%2Fui5-service-worker-sample/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP-samples%2Fui5-service-worker-sample/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SAP-samples","download_url":"https://codeload.github.com/SAP-samples/ui5-service-worker-sample/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAP-samples%2Fui5-service-worker-sample/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263410776,"owners_count":23462299,"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":["openui5","sample","sample-code","sapui5","service-worker","ui5"],"created_at":"2024-11-15T16:22:15.993Z","updated_at":"2025-07-03T22:07:12.987Z","avatar_url":"https://github.com/SAP-samples.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"![UI5 logo](http://openui5.org/images/OpenUI5_new_big_side.png)\n\n# ui5-service-worker-sample\n[![REUSE status](https://api.reuse.software/badge/github.com/SAP-samples/ui5-service-worker-sample)](https://api.reuse.software/info/github.com/SAP-samples/ui5-service-worker-sample)\n\n## Description\n\nThis sample demonstrates how the [Service Worker API](https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API), available in modern web browsers, could be used in a UI5 app to realize different caching strategies.\n\nIt includes the [openui5-sample-app](https://github.com/SAP/openui5-sample-app) and combines it with the ui5-service-worker code itself.\n\n*DISCLAIMER*: This sample demonstrates possible usages of service workers for caching strategies of an UI5 app. You have to figure out what parts to adopt for your own productive applications.\n\n## Requirements\n\n- [Node.js](https://nodejs.org/) Version 14 or later\n\n## Download and Installation\n\n1. Clone this repository and navigate into it\n    ```sh\n    git clone https://github.com/SAP-samples/ui5-service-worker-sample.git\n    cd ui5-service-worker-sample\n    ```\n1. Install all dependencies\n    ```sh\n    npm install\n    ```\n\n1. Build the application\n    ```sh\n    npm run build-ui5\n    ```\n\n1. Start a local server and run the application\n    ```sh\n    npm start\n    ```\n\n1. Navigate to\n    http://localhost:8080/index.html\n\n## Video\n![Video](assets/service-worker.gif)\n\n\n## Content Structure\n\nThis ui5-service-worker-sample project consists of:\n1. openui5-sample-app\n    * Version: 0.3.0\n    * Commit: f71d13de9ba827d1429b568296a89b92cabb8315\n    * via public repository https://github.com/SAP/openui5-sample-app\n1. ui5-service-worker\n    * Version: 1.0.0\n    * via local folder [ui5-service-worker/](https://github.com/SAP-samples/ui5-service-worker-sample/tree/main/ui5-service-worker)\n\n## Integrate into Own App\nFollow the detailed [Integration](./docs/integration.md) section on how you could extract and integrate the ui5-service-worker into your own application.\n\n## Configuration\nFind additional configuration options of the ui5-service-worker in the\n[Configuration](./ui5-service-worker/README.md#configuration) section.\n\n## UI5con Presentation\n\nThis sample project was derived to showcase features originally presented at [UI5con](https://openui5.org/ui5con/germany2019/material2019.html):\n* [Presentation Slides](https://tobiasso85.github.io/ui5con2019-service-worker-slides)\n* [Video Recording](https://youtu.be/z_bwa1wMyT4)\n\n\n## Alternative Scenarios\n\n* Serve the sample application with a local server using h2\n    ```sh\n    npm run start-h2\n    ```\n\n## Known Issues\nNo major bugs known.\n\n## Contributing\nIn general the contributing guidelines of OpenUI5 also apply to this project. They can be found here:\nhttps://github.com/SAP/openui5/blob/master/CONTRIBUTING.md\n\nSome parts might not be relevant for this project (e.g. the browser-specific requirements like jQuery, CSS and accessibility in the \"Contribution Content Guidelines\") and the contribution process is easier (pull requests will be merged directly on GitHub).\n\n## Contributing with AI-generated code\nAs artificial intelligence evolves, AI-generated code is becoming valuable for many software projects, including open-source initiatives. While we recognize the potential benefits of incorporating AI-generated content into our open-source projects there are certain requirements that need to be reflected and adhered to when making contributions.\n\nPlease see our [guideline for AI-generated code contributions to SAP Open Source Software Projects](https://github.com/SAP/.github/blob/main/CONTRIBUTING_USING_GENAI.md) for these requirements.\n\n## License\nCopyright (c) 2021 SAP SE or an SAP affiliate company. All rights reserved. This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the [LICENSE](LICENSES/Apache-2.0.txt) file.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsap-samples%2Fui5-service-worker-sample","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsap-samples%2Fui5-service-worker-sample","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsap-samples%2Fui5-service-worker-sample/lists"}