{"id":18862230,"url":"https://github.com/lucbpz/svelte-template-docker-extension","last_synced_at":"2026-02-09T23:30:19.312Z","repository":{"id":84408880,"uuid":"587868424","full_name":"lucbpz/svelte-template-docker-extension","owner":"lucbpz","description":"A sample Docker Desktop extension that uses Svelte for the Frontend","archived":false,"fork":false,"pushed_at":"2023-01-11T19:25:27.000Z","size":47,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-30T20:49:21.612Z","etag":null,"topics":["docker-extension","docker-extensions"],"latest_commit_sha":null,"homepage":"","language":"Svelte","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/lucbpz.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":"2023-01-11T19:23:36.000Z","updated_at":"2023-01-11T19:27:38.000Z","dependencies_parsed_at":null,"dependency_job_id":"228116dd-c885-4830-8b14-5386f158c494","html_url":"https://github.com/lucbpz/svelte-template-docker-extension","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucbpz%2Fsvelte-template-docker-extension","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucbpz%2Fsvelte-template-docker-extension/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucbpz%2Fsvelte-template-docker-extension/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucbpz%2Fsvelte-template-docker-extension/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lucbpz","download_url":"https://codeload.github.com/lucbpz/svelte-template-docker-extension/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239803243,"owners_count":19699635,"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":["docker-extension","docker-extensions"],"created_at":"2024-11-08T04:33:43.828Z","updated_at":"2026-02-09T23:30:19.284Z","avatar_url":"https://github.com/lucbpz.png","language":"Svelte","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Svelte extension\n\nThis repository defines an example of a Docker extension. The files in this repository have been automatically generated as a result of running `docker extension init`.\n\nThis extension is composed of:\n\n- A [frontend](./ui) app in React that makes a request to the `/hello` endpoint and displays the payload in Docker Desktop.\n- A [backend](./backend) container that runs an API in Go. It exposes the `/hello` endpoint which returns a JSON payload.\n\n\u003e You can build your Docker Extension using your fav tech stack:\n\u003e\n\u003e - Frontend: React, Angular, Vue, Svelte, etc.\n\u003e   Basically, any frontend framework you can bundle in an `index.html` file with CSS, and JS assets.\n\u003e - Backend (optional): anything that can run in a container.\n\n\u003cdetails\u003e\n  \u003csummary\u003eLooking for more templates?\u003c/summary\u003e\n\n1. [React + NodeJS](https://github.com/benja-M-1/node-backend-extension).\n2. [React + .NET 6 WebAPI](https://github.com/felipecruz91/dotnet-api-docker-extension).\n\nRequest one or submit yours [here](https://github.com/docker/extensions-sdk/issues).\n\n\u003c/details\u003e\n\n## Local development\n\nYou can use `docker` to build, install and push your extension. Also, we provide an opinionated [Makefile](Makefile) that could be convenient for you. There isn't a strong preference of using one over the other, so just use the one you're most comfortable with.\n\nTo build the extension, use `make build-extension` **or**:\n\n```shell\n  docker buildx build -t lucasbernalte981/svelte-extension:latest . --load\n```\n\nTo install the extension, use `make install-extension` **or**:\n\n```shell\n  docker extension install lucasbernalte981/svelte-extension:latest\n```\n\n\u003e If you want to automate this command, use the `-f` or `--force` flag to accept the warning message.\n\nTo preview the extension in Docker Desktop, open Docker Dashboard once the installation is complete. The left-hand menu displays a new tab with the name of your extension. You can also use `docker extension ls` to see that the extension has been installed successfully.\n\n### Frontend development\n\nDuring the development of the frontend part, it's helpful to use hot reloading to test your changes without rebuilding your entire extension. To do this, you can configure Docker Desktop to load your UI from a development server.\nAssuming your app runs on the default port, start your UI app and then run:\n\n```shell\n  cd ui\n  npm install\n  npm run dev\n```\n\nThis starts a development server that listens on port `3000`.\n\nYou can now tell Docker Desktop to use this as the frontend source. In another terminal run:\n\n```shell\n  docker extension dev ui-source lucasbernalte981/svelte-extension:latest http://localhost:3000\n```\n\nIn order to open the Chrome Dev Tools for your extension when you click on the extension tab, run:\n\n```shell\n  docker extension dev debug lucasbernalte981/svelte-extension:latest\n```\n\nEach subsequent click on the extension tab will also open Chrome Dev Tools. To stop this behaviour, run:\n\n```shell\n  docker extension dev reset lucasbernalte981/svelte-extension:latest\n```\n\n### Backend development (optional)\n\nThis example defines an API in Go that is deployed as a backend container when the extension is installed. This backend could be implemented in any language, as it runs inside a container. The extension frameworks provides connectivity from the extension UI to a socket that the backend has to connect to on the server side.\n\nNote that an extension doesn't necessarily need a backend container, but in this example we include one for teaching purposes.\n\nWhenever you make changes in the [backend](./backend) source code, you will need to compile them and re-deploy a new version of your backend container.\nUse the `docker extension update` command to remove and re-install the extension automatically:\n\n```shell\ndocker extension update lucasbernalte981/svelte-extension:latest\n```\n\n\u003e If you want to automate this command, use the `-f` or `--force` flag to accept the warning message.\n\n\u003e Extension containers are hidden from the Docker Dashboard by default. You can change this in Settings \u003e Extensions \u003e Show Docker Extensions system containers.\n\n### Clean up\n\nTo remove the extension:\n\n```shell\ndocker extension rm lucasbernalte981/svelte-extension:latest\n```\n\n## What's next?\n\n- To learn more about how to build your extension refer to the Extension SDK docs at https://docs.docker.com/desktop/extensions-sdk/.\n- To publish your extension in the Marketplace visit https://www.docker.com/products/extensions/submissions/.\n- To report issues and feedback visit https://github.com/docker/extensions-sdk/issues.\n- To look for other ideas of new extensions, or propose new ideas of extensions you would like to see, visit https://github.com/docker/extension-ideas/discussions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flucbpz%2Fsvelte-template-docker-extension","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flucbpz%2Fsvelte-template-docker-extension","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flucbpz%2Fsvelte-template-docker-extension/lists"}