{"id":34851906,"url":"https://github.com/umahmood/pushid","last_synced_at":"2026-04-27T02:31:49.812Z","repository":{"id":57644659,"uuid":"440298701","full_name":"umahmood/pushid","owner":"umahmood","description":"PushID a Go library which implements Firebase's push IDs","archived":false,"fork":false,"pushed_at":"2021-12-20T20:41:07.000Z","size":4,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-27T04:25:02.888Z","etag":null,"topics":["firebase","go","golang","push-id"],"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/umahmood.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-12-20T20:30:03.000Z","updated_at":"2024-03-06T16:11:14.000Z","dependencies_parsed_at":"2022-08-30T08:11:43.597Z","dependency_job_id":null,"html_url":"https://github.com/umahmood/pushid","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/umahmood/pushid","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umahmood%2Fpushid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umahmood%2Fpushid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umahmood%2Fpushid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umahmood%2Fpushid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/umahmood","download_url":"https://codeload.github.com/umahmood/pushid/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umahmood%2Fpushid/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32320242,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T23:26:28.701Z","status":"online","status_checked_at":"2026-04-27T02:00:06.769Z","response_time":128,"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":["firebase","go","golang","push-id"],"created_at":"2025-12-25T19:24:26.121Z","updated_at":"2026-04-27T02:31:49.791Z","avatar_url":"https://github.com/umahmood.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Push ID\n\nPushID is a Go library which generates chronological, 20-character unique IDs. It \nimplements Firebase's push IDs, what are Push IDs? \n\n*Push IDs are string identifiers that are generated client-side. They are a\n combination of a timestamp and some random bits. The timestamp ensures they\n are ordered chronologically, and the random bits ensure that each ID is\n unique, even if thousands of people are creating push IDs at the same time.*\n\n```\n{\n    \"messages\": {\n        \"-JhLeOlGIEjaIOFHR0xd\": \"Hello there!\",\n        \"-JhQ76OEK_848CkIFhAq\": \"Push IDs are pretty magical.\",\n        \"-JhQ7APk0UtyRTFO9-TS\": \"Look a white rabbit!\"\n    }\n}\n```\n\n# Installation\n\n```\n$ go get github.com/umahmood/pushid\n```\n\n# Usage\n\n```\npackage main\n\nimport (\n    \"fmt\"\n    \n    \"github.com/umahmood/pushid\"\n)\n\nfunc main() {\n    id := pushid.New()\n    for i := 0; i \u003c 10; i++ { \n        pid, err := id.Generate()\n        if err != nil {\n            //...\n        }\n        fmt.Println(pid)\n    }\n}\n```\nOutput:\n```\n-MrOKZ8QmUqMN34sp0Ne\n-MrOKZA2OJ1HB_vkglmr\n-MrOKZBfU9x7emWkX5DX\n-MrOKZDIh7Voefkx01eK\n-MrOKZEsM13vVmJjq4r-\n-MrOKZGU5AYs_lWs7Z8t\n-MrOKZI6VGY4I_rUqtyw\n-MrOKZJirH5rg1F40C8R\n-MrOKZLLqOUswv_-zPE6\n-MrOKZMz_9QG-zOI3eqF\n```\n\n# Documentation\n\n\u003e https://pkg.go.dev/github.com/umahmood/pushid\n\n# Resources\n\n[https://firebase.googleblog.com/2015/02/the-2120-ways-to-ensure-unique_68.html]()\n\n# License\n\nSee the [LICENSE](LICENSE.md) file for license rights and limitations (MIT).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumahmood%2Fpushid","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fumahmood%2Fpushid","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumahmood%2Fpushid/lists"}