{"id":15870964,"url":"https://github.com/rayraegah/sfc-language","last_synced_at":"2026-05-09T15:19:37.088Z","repository":{"id":119164814,"uuid":"82585030","full_name":"Rayraegah/sfc-language","owner":"Rayraegah","description":"Better syntax for Single File Components (like Riot, Vue, Svelte etc.)","archived":false,"fork":false,"pushed_at":"2017-05-30T09:11:35.000Z","size":10,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-07T14:39:54.873Z","etag":null,"topics":["html-element","polymer","riotjs","sublime-syntax","sveltejs","vuejs","web-components"],"latest_commit_sha":null,"homepage":"","language":null,"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/Rayraegah.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":"2017-02-20T17:38:52.000Z","updated_at":"2017-05-30T09:13:54.000Z","dependencies_parsed_at":"2023-07-10T01:51:33.876Z","dependency_job_id":null,"html_url":"https://github.com/Rayraegah/sfc-language","commit_stats":{"total_commits":4,"total_committers":1,"mean_commits":4.0,"dds":0.0,"last_synced_commit":"6f9ba02a683341724ae5fc73fd5b4db0dc00fcc3"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rayraegah%2Fsfc-language","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rayraegah%2Fsfc-language/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rayraegah%2Fsfc-language/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rayraegah%2Fsfc-language/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Rayraegah","download_url":"https://codeload.github.com/Rayraegah/sfc-language/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246719636,"owners_count":20822781,"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":["html-element","polymer","riotjs","sublime-syntax","sveltejs","vuejs","web-components"],"created_at":"2024-10-06T00:41:11.132Z","updated_at":"2026-05-09T15:19:32.056Z","avatar_url":"https://github.com/Rayraegah.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Single File Component Syntax\n\n![riotjs badge](https://img.shields.io/badge/syntax-riot-%23fc0e49.svg) ![vuejs badge](https://img.shields.io/badge/syntax-vue-4fc08d.svg)\n\nComponents extend basic HTML elements to encapsulate reusable code. At a high level, components are custom elements that a compiler attaches behavior to. In some cases, they may also appear as a native HTML element extended with the special attributes like `is`, `for`, `if`, `each` etc.\n\nThis component syntax for Sublime Text 3 and 2, has been tested to work with  `Riotjs components`, `Web components` and `Polymer components`. Support for `Vuejs components` is a bit wonky; but works.\n\n## Features\n - Additional syntax sugar over the default HTML sublime syntax.\n - CSS is scoped as`source.css.embedded.html` and uses native syntax.\n - JavaScript is scopeed as `scope.js.embedded.html` and uses native syntax.\n - Tag bindindings example: `\u003cvirtual each={ item in list } \u003e...\u003c/virtual\u003e` are scoped as `scope.js.embedded.html` and content between`{ ... }` is scoped as `meta.entity.block` while `{` and `}` are scoped as tag start and end.\n - Also supports [tagged template literals](https://github.com/sublimehq/Packages/issues/179).\n\n## Installation\nCopy the `sfc.sublime-syntax` file into your packages folder.\nFor Sublime Text 2 compile to tmLanguage using `PackageDev` and copy the `sfc.tmLanguage` file.\n\n## License\nMIT \u0026copy; [Rayraegah](https://github.com/rayraegah)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frayraegah%2Fsfc-language","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frayraegah%2Fsfc-language","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frayraegah%2Fsfc-language/lists"}