{"id":27944755,"url":"https://github.com/adityaborkar/letsync","last_synced_at":"2026-02-07T18:30:59.422Z","repository":{"id":260133716,"uuid":"849475849","full_name":"AdityaBorkar/letsync","owner":"AdityaBorkar","description":"Syncing service for the next-gen web applications","archived":false,"fork":false,"pushed_at":"2025-01-21T08:28:14.000Z","size":2918,"stargazers_count":1,"open_issues_count":9,"forks_count":0,"subscribers_count":1,"default_branch":"stable","last_synced_at":"2025-04-21T12:44:27.913Z","etag":null,"topics":["client-server","database","filestorage","local-first","sync"],"latest_commit_sha":null,"homepage":"https://adityaborkar.com/projects/letsync","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/AdityaBorkar.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-29T17:01:14.000Z","updated_at":"2025-03-30T00:53:00.000Z","dependencies_parsed_at":"2024-12-02T16:37:57.124Z","dependency_job_id":"54164aa7-b15c-4217-b7ec-77ec83c13e81","html_url":"https://github.com/AdityaBorkar/letsync","commit_stats":null,"previous_names":["adityaborkar/letsync"],"tags_count":33,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdityaBorkar%2Fletsync","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdityaBorkar%2Fletsync/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdityaBorkar%2Fletsync/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdityaBorkar%2Fletsync/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AdityaBorkar","download_url":"https://codeload.github.com/AdityaBorkar/letsync/tar.gz/refs/heads/stable","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252882817,"owners_count":21819153,"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":["client-server","database","filestorage","local-first","sync"],"created_at":"2025-05-07T12:54:23.062Z","updated_at":"2026-02-07T18:30:59.355Z","avatar_url":"https://github.com/AdityaBorkar.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# letsync\n\n\u003c!-- Website Link --\u003e\n\n[![📝 License: MIT](https://img.shields.io/badge/%F0%9F%93%9D_license-MIT-21bb42.svg)](https://github.com/Aditya%20Borkar/example-repo/blob/main/LICENSE.md)\n\n\u003c!-- [!-- prettier-ignore-start \n\tALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section\n\t\u003ca href=\"#contributors\" target=\"_blank\"\u003e\n\t\t\u003cimg alt=\"👪 All Contributors: 1\" src=\"https://img.shields.io/badge/👪_all_contributors-1-21bb42.svg\" /\u003e\n\t\u003c/a\u003e\n\tALL-CONTRIBUTORS-BADGE:END\n\tprettier-ignore-end --\u003e\n\n## Usage\n\n```shell\nnpm i example-repo\n```\n\n```ts\nimport { greet } from \"example-repo\";\n\ngreet(\"Hello, world! 💖\");\n```\n\n## Features\n\nEvaluating if the following features are needed:\n\n- Multiplayer Cursors and Collaborative Editing\n  - 2D canvas cursors \u0026 Text carets\n  - Element-based focus-presence\n  - Scroll-based / out-of-bounds helpers (track screen)\n- Realtime Sync\n- File Uploads\n- E2E Encryption\n- Instant Updates\n- Permissions - role-based permissions\n- Authentication\n- Social features - group based permissions\n  - PostgreSQL introspection\n  - Drizzle \u0026 Prisma\n\n- Push Notifications\n- Background Sync\n- Multiple Local Databases\n- Multiple Server Databases\n\n## List of packages in this monorepo\n\n| Package Name | Package Description | Test Coverage | Latest Stable | Latest Canary |\n|--|--|--|--|--|\n| [@letsync/cli](./packages/cli/README.md) | Command-line interface for letsync | 100% | [0.1.0](https://www.npmjs.com/package/@letsync/cockroachdb/v/0.1.0) | [0.2.0-canary.1](https://www.npmjs.com/package/@letsync/cockroachdb/v/0.2.0-canary.1) |\n| [@letsync/devtools](./packages/devtools/README.md) | Developer tools for letsync | 100% | 0.1.0 | 0.2.0-next.1 |\n| [@letsync/core](./packages/core/README.md) | Core functionality for letsync | 100% | 0.1.0 | 0.2.0-next.1 |\n| [@letsync/aws-iot](./packages/aws-iot/README.md) | AWS IoT functionality for letsync | 100% | 0.1.0 | 0.2.0-next.1 |\n| [@letsync/cockroachdb](./packages/cockroachdb/README.md) | CockroachDB implementation for letsync | 100% | 0.1.0 | 0.2.0-next.1 |\n| [@letsync/d1](./packages/d1/README.md) | D1 implementation for letsync | 100% | 0.1.0 | 0.2.0-next.1 |\n| [@letsync/durable-objects-websockets](./packages/durable-objects-websockets/README.md) | Durable Objects WebSockets implementation for letsync | 100% | 0.1.0 | 0.2.0-next.1 |\n| [@letsync/nextjs](./packages/nextjs/README.md) | Next.js implementation for letsync | 100% | 0.1.0 | 0.2.0-next.1 |\n| [@letsync/node-postgres](./packages/node-postgres/README.md) | Node.js PostgreSQL implementation for letsync | 100% | 0.1.0 | 0.2.0-next.1 |\n| [@letsync/pglite](./packages/pglite/README.md) | PGLite implementation for letsync | 100% | 0.1.0 | 0.2.0-next.1 |\n| [@letsync/r2](./packages/r2/README.md) | R2 implementation for letsync | 100% | 0.1.0 | 0.2.0-next.1 |\n\n## Want to Contribute?\n\nWe welcome contributions! Just text Aditya Borkar on [X](https://x.com/adityaborkar) or [email](mailto:hello@letsync.dev) so discuss the contribution. Read the following documents before contributing:\n\n- [CONTRIBUTING.md](./CONTRIBUTING.md)\n- [Code of Conduct](./CODE_OF_CONDUCT.md)\n- [Readings Resources](https://letsync.adityaborkar.com/docs/contributing/contributing)\n\n## Contributors\n\n\u003c!-- spellchecker: disable --\u003e\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n\u003c!-- (this will be filled in by all-contributors) --\u003e\n\u003c/table\u003e\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\u003c!-- spellchecker: enable --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadityaborkar%2Fletsync","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadityaborkar%2Fletsync","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadityaborkar%2Fletsync/lists"}