{"id":18883668,"url":"https://github.com/julindm/firestore-rules-lsp-vscode","last_synced_at":"2026-04-18T01:10:10.065Z","repository":{"id":260200882,"uuid":"880595155","full_name":"JulindM/firestore-rules-lsp-vscode","owner":"JulindM","description":"VSCode extension for the Firestore Security Rules LSP","archived":false,"fork":false,"pushed_at":"2024-11-20T00:52:30.000Z","size":70,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-31T04:13:12.355Z","etag":null,"topics":["firebase","firestore","lsp","vscode-extension"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JulindM.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2024-10-30T02:02:14.000Z","updated_at":"2024-11-20T00:52:34.000Z","dependencies_parsed_at":"2024-11-07T03:31:41.810Z","dependency_job_id":"426198c6-21d8-496f-9013-ebe85528de72","html_url":"https://github.com/JulindM/firestore-rules-lsp-vscode","commit_stats":null,"previous_names":["julindm/firestore-security-rules-lsp-vscode","julindm/firestore-rules-lsp-vscode"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JulindM%2Ffirestore-rules-lsp-vscode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JulindM%2Ffirestore-rules-lsp-vscode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JulindM%2Ffirestore-rules-lsp-vscode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JulindM%2Ffirestore-rules-lsp-vscode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JulindM","download_url":"https://codeload.github.com/JulindM/firestore-rules-lsp-vscode/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239852093,"owners_count":19707643,"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":["firebase","firestore","lsp","vscode-extension"],"created_at":"2024-11-08T07:08:17.626Z","updated_at":"2026-04-18T01:10:10.052Z","avatar_url":"https://github.com/JulindM.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\u003cimg src=\"./firestore-lsp-logo.png\"\u003e\u003c/img\u003e\u003c/p\u003e\n\n# Firestore Rules LSP VSCode Extension\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"./example.gif\"\u003e\u003c/img\u003e\u003c/p\u003e\n\nThis extension in comparison to others available in the market place, utilizes a LSP ([_Language Server Provider_](https://microsoft.github.io/language-server-protocol/)) and does not rely on semantic calculations on the extension level.\n\nUpon preparation the extension simply wraps around it, and can utilze the features that the LSP is able to provide instead of running its own calculations.\nThe LSP runs natively on machine (its not a node app) so that memory and cpu overhead is kept at minium.\nThe source code of the LSP can be found [here](https://github.com/JulindM/firestore-rules-lsp).\n\n\u003e Make sure the theme you are using supports semantic color tokenizations, otherwise you will not see colors. This is because the extension does not come with a textmate grammar definition that (old) themes might use for token colorization.\n\u003e\n\u003e The default VSCode theme does have this feature.\n\n### Current features\n\n- Syntax highlighting\n- Autocomplete\n- Go to definition\n- Find references\n- Type inference\n- Linting\n  - Wrong return type for `if` rules\n  - Unused variable definition\n  - Unused function declaration\n- Method/Variable documentation\n- Syntax errors\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjulindm%2Ffirestore-rules-lsp-vscode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjulindm%2Ffirestore-rules-lsp-vscode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjulindm%2Ffirestore-rules-lsp-vscode/lists"}