{"id":17188382,"url":"https://github.com/jclem/crdt","last_synced_at":"2025-08-30T09:07:33.192Z","repository":{"id":66131077,"uuid":"107727835","full_name":"jclem/crdt","owner":"jclem","description":"Some CRDTs implemented in Go","archived":false,"fork":false,"pushed_at":"2017-10-21T17:17:39.000Z","size":14,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-25T08:24:12.431Z","etag":null,"topics":["crdt","distributed-systems"],"latest_commit_sha":null,"homepage":"","language":"Go","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/jclem.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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,"zenodo":null}},"created_at":"2017-10-20T21:23:41.000Z","updated_at":"2020-05-20T17:42:53.000Z","dependencies_parsed_at":null,"dependency_job_id":"dd386a12-86a7-4c10-a2a6-808fc9ae74e7","html_url":"https://github.com/jclem/crdt","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jclem/crdt","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jclem%2Fcrdt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jclem%2Fcrdt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jclem%2Fcrdt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jclem%2Fcrdt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jclem","download_url":"https://codeload.github.com/jclem/crdt/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jclem%2Fcrdt/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272827488,"owners_count":24999813,"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","status":"online","status_checked_at":"2025-08-30T02:00:09.474Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["crdt","distributed-systems"],"created_at":"2024-10-15T01:08:49.602Z","updated_at":"2025-08-30T09:07:33.184Z","avatar_url":"https://github.com/jclem.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# crdt\n\nA [conflict-free replicated data type][crdt] (CRDT) is a data structure that can\nbe updated concurrently (and in different orders) at different replicas. As long\nas all replicas receive all states or operations on the CRDT, the values of the\nreplicas converge.\n\nThis package implements several CRDTs in Go. The goal is not necessarily to\ncreate production-ready CRDTs (for example, many of them do not support safe\natomic operations, nor are they thread-safe), but rather as an exercise for me\nto get more comfortable with Go and to learn about CRDTs.\n\n## Included CRDTs\n\n- [gcounter](gcounter/) A grow-only counter\n- [LWW Register](lwwregister/) A last-write wins register\n- [pncounter](pncounter/) A counter which can increment or decrement\n- [rgass](rgass/) A CRDT for efficient string-based collaborative editing\n\n[crdt]: https://en.wikipedia.org/wiki/Conflict-free_replicated_data_type\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjclem%2Fcrdt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjclem%2Fcrdt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjclem%2Fcrdt/lists"}