{"id":19422804,"url":"https://github.com/wooningeire/onscreen-stenotype","last_synced_at":"2026-04-29T19:31:35.088Z","repository":{"id":167727736,"uuid":"643339809","full_name":"wooningeire/onscreen-stenotype","owner":"wooningeire","description":"Web proof of concept for an on-screen stenotype for touchscreens. — This project has already been ported to Python as a Plover plugin: https://github.com/wooningeire/plover-touchscreen-stenotype","archived":false,"fork":false,"pushed_at":"2023-06-08T21:10:11.000Z","size":35,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-26T18:44:46.268Z","etag":null,"topics":["plover","svelte"],"latest_commit_sha":null,"homepage":"https://wooningeire.github.io/onscreen-stenotype/","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/wooningeire.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-05-20T21:04:03.000Z","updated_at":"2023-06-08T01:22:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"9c08cc86-2437-4866-99e3-2f61f84c4546","html_url":"https://github.com/wooningeire/onscreen-stenotype","commit_stats":null,"previous_names":["wooningeire/onscreen-stenotype"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wooningeire/onscreen-stenotype","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wooningeire%2Fonscreen-stenotype","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wooningeire%2Fonscreen-stenotype/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wooningeire%2Fonscreen-stenotype/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wooningeire%2Fonscreen-stenotype/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wooningeire","download_url":"https://codeload.github.com/wooningeire/onscreen-stenotype/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wooningeire%2Fonscreen-stenotype/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32440849,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T18:12:22.909Z","status":"ssl_error","status_checked_at":"2026-04-29T18:11:33.322Z","response_time":110,"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":["plover","svelte"],"created_at":"2024-11-10T13:35:18.848Z","updated_at":"2026-04-29T19:31:35.073Z","avatar_url":"https://github.com/wooningeire.png","language":"Svelte","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Svelte + TS + Vite\n\nThis template should help get you started developing with Svelte and TypeScript in Vite.\n\n## Recommended IDE Setup\n\n[VS Code](https://code.visualstudio.com/) + [Svelte](https://marketplace.visualstudio.com/items?itemName=svelte.svelte-vscode).\n\n## Need an official Svelte framework?\n\nCheck out [SvelteKit](https://github.com/sveltejs/kit#readme), which is also powered by Vite. Deploy anywhere with its serverless-first approach and adapt to various platforms, with out of the box support for TypeScript, SCSS, and Less, and easily-added support for mdsvex, GraphQL, PostCSS, Tailwind CSS, and more.\n\n## Technical considerations\n\n**Why use this over SvelteKit?**\n\n- It brings its own routing solution which might not be preferable for some users.\n- It is first and foremost a framework that just happens to use Vite under the hood, not a Vite app.\n  `vite dev` and `vite build` wouldn't work in a SvelteKit environment, for example.\n\nThis template contains as little as possible to get started with Vite + TypeScript + Svelte, while taking into account the developer experience with regards to HMR and intellisense. It demonstrates capabilities on par with the other `create-vite` templates and is a good starting point for beginners dipping their toes into a Vite + Svelte project.\n\nShould you later need the extended capabilities and extensibility provided by SvelteKit, the template has been structured similarly to SvelteKit so that it is easy to migrate.\n\n**Why `global.d.ts` instead of `compilerOptions.types` inside `jsconfig.json` or `tsconfig.json`?**\n\nSetting `compilerOptions.types` shuts out all other types not explicitly listed in the configuration. Using triple-slash references keeps the default TypeScript setting of accepting type information from the entire workspace, while also adding `svelte` and `vite/client` type information.\n\n**Why include `.vscode/extensions.json`?**\n\nOther templates indirectly recommend extensions via the README, but this file allows VS Code to prompt the user to install the recommended extension upon opening the project.\n\n**Why enable `allowJs` in the TS template?**\n\nWhile `allowJs: false` would indeed prevent the use of `.js` files in the project, it does not prevent the use of JavaScript syntax in `.svelte` files. In addition, it would force `checkJs: false`, bringing the worst of both worlds: not being able to guarantee the entire codebase is TypeScript, and also having worse typechecking for the existing JavaScript. In addition, there are valid use cases in which a mixed codebase may be relevant.\n\n**Why is HMR not preserving my local component state?**\n\nHMR state preservation comes with a number of gotchas! It has been disabled by default in both `svelte-hmr` and `@sveltejs/vite-plugin-svelte` due to its often surprising behavior. You can read the details [here](https://github.com/rixo/svelte-hmr#svelte-hmr).\n\nIf you have state that's important to retain within a component, consider creating an external store which would not be replaced by HMR.\n\n```ts\n// store.ts\n// An extremely simple external store\nimport { writable } from 'svelte/store'\nexport default writable(0)\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwooningeire%2Fonscreen-stenotype","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwooningeire%2Fonscreen-stenotype","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwooningeire%2Fonscreen-stenotype/lists"}