{"id":16842731,"url":"https://github.com/dominikserafin/tz","last_synced_at":"2026-05-21T07:41:09.373Z","repository":{"id":144067950,"uuid":"281928878","full_name":"DominikSerafin/tz","owner":"DominikSerafin","description":"Time zone information in friendly JSON for use cases like server-side validation, user input options, etc.","archived":false,"fork":false,"pushed_at":"2022-07-16T19:17:57.000Z","size":937,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-24T12:26:24.802Z","etag":null,"topics":["iana","json","olson","time","timezone","timezones","tz","tzdata","tzdb","zone","zones"],"latest_commit_sha":null,"homepage":"","language":"C","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/DominikSerafin.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":"2020-07-23T11:07:21.000Z","updated_at":"2022-07-16T19:18:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"085f89d5-0390-4dab-8fdd-04c7d14c8ab1","html_url":"https://github.com/DominikSerafin/tz","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DominikSerafin%2Ftz","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DominikSerafin%2Ftz/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DominikSerafin%2Ftz/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DominikSerafin%2Ftz/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DominikSerafin","download_url":"https://codeload.github.com/DominikSerafin/tz/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244166639,"owners_count":20409177,"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":["iana","json","olson","time","timezone","timezones","tz","tzdata","tzdb","zone","zones"],"created_at":"2024-10-13T12:48:20.974Z","updated_at":"2026-05-21T07:41:04.344Z","avatar_url":"https://github.com/DominikSerafin.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tz\n\nTime zone information in friendly JSON for use cases like server-side validation, user input options, etc.\n\nThis package doesn't contain any historical data and should not be used for working with specific dates. Take a look at other packages for that, such as [pytz](https://pythonhosted.org/pytz/), [moment-timezone](https://momentjs.com/timezone/), etc.\n\nThe data is taken directly from [IANA time zone database](https://www.iana.org/time-zones) (version 2020a).\n\n- `/dist/tz.json` contains time zones sorted by canonical name.\n- `/dist/tz-country.json` contains time zones sorted by country. With extra \"Other\" country for time zones that aren't assigned to any country (\"Etc/GMT\", \"CST6CDT\", etc.).\n\nPlease open an issue or a pull request if you spot any inaccuracy.\n\n## format\n\n```\n{\n  \"canonical\": \"Pacific/Auckland\",  // primary time zone name currently in use\n  \"dst\": true,                      // tells whether time zone observes daylight saving time at all (either now or in future)\n  \"abbr_st\": \"NZST\",                // abbreviation for standard time\n  \"abbr_dst\": \"NZDT\",               // abbreviation for daylight saving time\n  \"offset_st\": 43200,               // offset from UTC (in seconds) for standard time\n  \"offset_dst\": 3600,               // offset from offset_st (in seconds) for daylight saving time\n  \"aliases\": [                      // collection of backward-compatible time zone names\n    \"Antarctica/McMurdo\",\n    \"Antarctica/South_Pole\",\n    \"NZ\"\n  ],\n  \"countries\": [                    // collection of ISO 3166 countries where this time zone is observed\n    {\n      \"code\": \"AQ\",\n      \"name\": \"Antarctica\"\n    },\n    {\n      \"code\": \"NZ\",\n      \"name\": \"New Zealand\"\n    }\n  ]\n}\n```\n\n## running\n\nTo run this code and generate output files, do it in sequence as below.\n\n1. `npm run normalize`\n2. `npm run generate`\n\n\n## todo\n\n- [ ] add full name for each zone abbreviation\n  - CET → Central European Time\n  - CEST → Central European Summer Time\n  - IST → India Standard Time\n  - IST → Irish Standard Time\n  - IST → Israel Standard Time\n  - etc.\n- [ ] parse and nicely present coordinates from zone1970.tab\n- [ ] take population counts from moment-timezone\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdominikserafin%2Ftz","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdominikserafin%2Ftz","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdominikserafin%2Ftz/lists"}