{"id":13798741,"url":"https://github.com/codediodeio/sveltefire","last_synced_at":"2025-05-15T13:08:23.068Z","repository":{"id":41259806,"uuid":"220999223","full_name":"codediodeio/sveltefire","owner":"codediodeio","description":"Cybernetically enhanced Firebase apps","archived":false,"fork":false,"pushed_at":"2024-07-25T02:12:41.000Z","size":980,"stargazers_count":1685,"open_issues_count":66,"forks_count":134,"subscribers_count":41,"default_branch":"master","last_synced_at":"2025-04-15T05:32:06.411Z","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/codediodeio.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-11-11T14:28:01.000Z","updated_at":"2025-04-13T03:00:42.000Z","dependencies_parsed_at":"2023-12-17T23:22:44.118Z","dependency_job_id":"8354f564-e653-4894-9aaa-52da8deeaa83","html_url":"https://github.com/codediodeio/sveltefire","commit_stats":{"total_commits":90,"total_committers":14,"mean_commits":6.428571428571429,"dds":0.6666666666666667,"last_synced_commit":"b78f52dce8e188fb87d9494fb7631150cc5139b7"},"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codediodeio%2Fsveltefire","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codediodeio%2Fsveltefire/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codediodeio%2Fsveltefire/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codediodeio%2Fsveltefire/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codediodeio","download_url":"https://codeload.github.com/codediodeio/sveltefire/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254346624,"owners_count":22055808,"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-08-04T00:00:51.842Z","updated_at":"2025-05-15T13:08:18.058Z","avatar_url":"https://github.com/codediodeio.png","language":"TypeScript","funding_links":[],"categories":["웹","TypeScript"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\u003cimg width=\"128px\" src=\"https://github.com/codediodeio/sveltefire/blob/master/docs/public/logo.png?raw=true\"\u003e\n\u003ch1\u003eSvelteFire \u003ca href=\"\"\u003e\u003c/h1\u003e\n\u003cimg alt=\"npm\" src=\"https://img.shields.io/npm/dy/sveltefire\"\u003e\n\u003ca href=\"https://discord.gg/fireship\" target=\"_blank\"\u003e\u003cimg alt=\"Discord\" src=\"https://img.shields.io/discord/1015095797689360444?label=Discord\"\u003e\u003c/a\u003e\n\u003cimg alt=\"License\" src=\"https://img.shields.io/github/license/codediodeio/sveltefire\"\u003e\n\u003ch6\u003e\u003ci\u003eCybernetically Enhanced Firebase Apps\u003c/i\u003e\u003c/h6\u003e\n\u003chr /\u003e\n\u003c/div\u003e\n\n\u003c!-- ![npm](https://img.shields.io/npm/dy/sveltefire)\n![Discord](https://img.shields.io/discord/1015095797689360444)\n![GitHub License](https://img.shields.io/github/license/codediodeio/sveltefire) --\u003e\n\n\nA minimal, yet powerful library that puts realtime Firebase data into Svelte stores.\n\n- [Quick Start](https://sveltefire.fireship.io/guide/start)\n- [Documentation](https://sveltefire.fireship.io)\n\n## Build Complex Apps Faster\n\nSvelteFire allows you to access Firebase Auth, Firestore, Storage, RealtimeDB, and Analytics with minimal complexity. It simplfies relational data with a declarative syntax, handles loading states, automatically disposes of realtime data subscriptions, and more! \n\nGaze in awe at the example below where we fetch multiple levels of realtime user data with just a few lines of Svelte code:\n\n```svelte\n\u003c!-- 1. 🔥 Firebase App --\u003e\n\u003cFirebaseApp {auth} {firestore}\u003e\n\n  \u003c!-- 2. 👤 Get the current user --\u003e\n  \u003cSignedIn let:user\u003e\n\n    \u003cp\u003eHowdy, {user.uid}\u003c/p\u003e\n\n    \u003c!-- 3 (a). 📜 Get a Firestore document owned by a user --\u003e\n    \u003cDoc ref={`posts/${user.uid}`} let:data={post} let:ref={postRef}\u003e\n\n      \u003ch2\u003e{post.title}\u003c/h2\u003e\n\n      \u003c!-- 4 (a). 💬 Get all the comments in its subcollection --\u003e\n      \u003cCollection ref={postRef.path + '/comments'} let:data={comments}\u003e\n        {#each comments as comment}\n\n        {/each}\n...\n```\n\nEach component in this example above is underpinned by a Svelte store.  These custom stores can be used for fine-grained control and to implement your own custom patterns.\n\nUse stores to access Firebase data with Svelte's reactive `$` syntax:\n\n```svelte\n\u003cscript\u003e\n    import { docStore } from 'sveltefire';\n    import { firestore } from '$lib/firebase'; // your firestore instance\n\n    const post = docStore(firestore, 'posts/id');\n\u003c/script\u003e\n\n{$post?.title}\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodediodeio%2Fsveltefire","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodediodeio%2Fsveltefire","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodediodeio%2Fsveltefire/lists"}