{"id":14155405,"url":"https://github.com/swve/gitstorykit","last_synced_at":"2025-03-19T20:53:22.103Z","repository":{"id":132607881,"uuid":"394415398","full_name":"swve/gitstorykit","owner":"swve","description":"Build rich git projects history discovery apps with ease, used by Gitstory","archived":false,"fork":false,"pushed_at":"2022-08-09T16:26:02.000Z","size":1127,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-23T02:12:40.396Z","etag":null,"topics":["archive","commits","first-commit","git","github","gitstory","history","time-machine","web-archive"],"latest_commit_sha":null,"homepage":"https://gitstory.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/swve.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","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},"funding":{"github":["swve"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":null}},"created_at":"2021-08-09T19:31:34.000Z","updated_at":"2024-10-11T21:45:26.000Z","dependencies_parsed_at":null,"dependency_job_id":"764ed88e-3773-4c06-bef6-337e6fe6f81e","html_url":"https://github.com/swve/gitstorykit","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swve%2Fgitstorykit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swve%2Fgitstorykit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swve%2Fgitstorykit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swve%2Fgitstorykit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/swve","download_url":"https://codeload.github.com/swve/gitstorykit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244227414,"owners_count":20419243,"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":["archive","commits","first-commit","git","github","gitstory","history","time-machine","web-archive"],"created_at":"2024-08-17T08:03:02.712Z","updated_at":"2025-03-19T20:53:22.078Z","avatar_url":"https://github.com/swve.png","language":"TypeScript","funding_links":["https://github.com/sponsors/swve"],"categories":["github"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\u003cbr\u003e\n  \u003ca href=\"#\"\u003e\n    \u003cimg src=\".github/img/gitstorykit.png\" height=\"200\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\u003ccenter\u003e\n\u003cp align=\"center\"\u003e\n  \n \u003cimg alt=\"GitHub\" src=\"https://img.shields.io/github/license/swve/gitstorykit\"\u003e\n \u003cimg alt=\"GitHub contributors\" src=\"https://img.shields.io/github/contributors/swve/gitstorykit\"\u003e\n \u003cimg alt=\"GitHub issues\" src=\"https://img.shields.io/github/issues/swve/gitstorykit\"\u003e\n\u003c/p\u003e\n\u003c/center\u003e\n\n\n\nGitStoryKit is a little development kit that can be used to develop apps and software that enables git time travel, the library is in early development and is designed for simplicity, it is heavily used in GitStory  \n\n\nThe following Git clients are supported : \n- GitHub ✅\n- GitLab ⏳ (on development)\n\n## Usage \n\n### Initialization \n\n```js\nimport GitStory from \"gitstorykit\";\n\nconst gitstory = new GitStory(\"Github\");\n\ngitstory.init({ owner: \"swve\", repo: \"framestack\" }); \n\n// with auth tokens\ngitstory.init({ owner: \"swve\", repo: \"framestack\" , auth: \"yourtoken\" }); \n```\n\n### Get first commit\n```js\nconst firstcommit = await gitstory.getFirstCommit();\n```\n\n### Get first commit Date\n```js\nconst firstcommitdate = await gitstory.getFirstCommitDate();\n```\n\n### Get a commit's Date\nDates should be in the **ISO 8601 format**\n```js\nconst commit_date = await gitstory.getCommitDate(commit_sha);\n```\n\n### Get commit between dates\n\nDates should be in the **ISO 8601 format**\n```js\nconst commit = await gitstory.getCommitsBetweenDates(startDate, endDate, per_page: number, page: number);\n```\n\n### Get commits until date\n\nDates should be in the **ISO 8601 format**\n```js\nconst commit = await gitstory.getCommitsUntilDate(date, per_page: number, page: number);\n```\n\n### Get a repository active years \n```js\nconst active_years = await gitstory.yearsActive();\n```\n\n## Contributing\nTo contribute or understand the code structure,\nplease see our [contributing.md](/CONTRIBUTING.md).\n\n## Authors\n\nBadr B. ([@swve](https://github.com/swve))\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswve%2Fgitstorykit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fswve%2Fgitstorykit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswve%2Fgitstorykit/lists"}