{"id":15513526,"url":"https://github.com/githubocto/snowpack-vscode-extension-template","last_synced_at":"2025-04-10T16:43:17.226Z","repository":{"id":47558430,"uuid":"360427986","full_name":"githubocto/snowpack-vscode-extension-template","owner":"githubocto","description":null,"archived":false,"fork":false,"pushed_at":"2021-10-22T21:42:04.000Z","size":562,"stargazers_count":9,"open_issues_count":2,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-03-17T23:23:16.700Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/githubocto.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}},"created_at":"2021-04-22T07:19:54.000Z","updated_at":"2023-04-10T03:15:29.000Z","dependencies_parsed_at":"2022-07-25T04:46:07.811Z","dependency_job_id":null,"html_url":"https://github.com/githubocto/snowpack-vscode-extension-template","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/githubocto%2Fsnowpack-vscode-extension-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/githubocto%2Fsnowpack-vscode-extension-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/githubocto%2Fsnowpack-vscode-extension-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/githubocto%2Fsnowpack-vscode-extension-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/githubocto","download_url":"https://codeload.github.com/githubocto/snowpack-vscode-extension-template/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248252736,"owners_count":21072703,"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":[],"created_at":"2024-10-02T09:54:23.030Z","updated_at":"2025-04-10T16:43:17.208Z","avatar_url":"https://github.com/githubocto.png","language":"TypeScript","readme":"# snowpack-vscode-extension-template\n\nThis is a template for create-snowpack-app which scaffolds a VS Code extension with webviews.\n\n```\nnpx create-snowpack-app my-vscode-extension --template @githubocto/snowpack-vscode-extension-template\n```\n\n🚫 **Edit:** Nope, this won't work for `create-snowpack-app` because CSA strips out all the parts in package.json that are needed for a VS Code extension.\n\n✅ **Workaround**: Clone this repo, `rm -rf .git` and then edit to your hearts' content.\n\n## Why does this exist?\n\nThe VS Code extension environment comes with a lot of limitations that make it difficult to develop for. Webviews run inside an iframe, and must communicate with the extension via message passing. A strict content security policy is imposed, so that extensions can't go off and do Bad Things™ willy-nilly. There's no such thing as HMR.\n\nWhile it's still fundamentally web technologies, it's a bear to set up in a fashion that feels like modern web development.\n\nThis CSA template offers the following niceties:\n\n- A working Typescript setup for both the extension _and_ the webview.\n- A sample react app\n- Tailwind CSS for styling, using JIT\n- VS Code theme colors exposed as Tailwind colors for ease of \"theme-native\" styling.\n- Lots of little quality-of-life refinements, like a tasks.json which knows to wait for builds to complete before launching the extension host, and css_custom_data.json so that VS Code doesn't complain at you for using `@tailwind` directives in your css.\n- … And, of course, Snowpack for the fastest possible builds.\n\nSadly, incremental builds are not possible with the way that VS Code currently works. That means that each build is effectively \"bundling for production\" and is executing `snowpack build` for you.\n\n# License\n\nMIT\n","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgithubocto%2Fsnowpack-vscode-extension-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgithubocto%2Fsnowpack-vscode-extension-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgithubocto%2Fsnowpack-vscode-extension-template/lists"}