{"id":14155144,"url":"https://github.com/igorkamyshev/farfetched","last_synced_at":"2025-04-07T10:19:31.140Z","repository":{"id":59672685,"uuid":"510695032","full_name":"igorkamyshev/farfetched","owner":"igorkamyshev","description":"The advanced data fetching tool for web applications","archived":false,"fork":false,"pushed_at":"2024-09-04T05:38:54.000Z","size":20558,"stargazers_count":189,"open_issues_count":62,"forks_count":33,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-10-30T00:53:42.817Z","etag":null,"topics":["async","data","data-fetching","effector","fetch"],"latest_commit_sha":null,"homepage":"https://ff.effector.dev","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/igorkamyshev.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":["igorkamyshev"]}},"created_at":"2022-07-05T10:49:35.000Z","updated_at":"2024-10-07T07:01:28.000Z","dependencies_parsed_at":"2024-03-05T08:41:09.435Z","dependency_job_id":"ae686bb9-7c72-4150-842c-e01671ba6715","html_url":"https://github.com/igorkamyshev/farfetched","commit_stats":{"total_commits":569,"total_committers":33,"mean_commits":"17.242424242424242","dds":0.2073813708260105,"last_synced_commit":"d85bb7dd04e46802408ea62f8888ff5264ea5196"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igorkamyshev%2Ffarfetched","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igorkamyshev%2Ffarfetched/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igorkamyshev%2Ffarfetched/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igorkamyshev%2Ffarfetched/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/igorkamyshev","download_url":"https://codeload.github.com/igorkamyshev/farfetched/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247631834,"owners_count":20970069,"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":["async","data","data-fetching","effector","fetch"],"created_at":"2024-08-17T08:02:15.181Z","updated_at":"2025-04-07T10:19:31.116Z","avatar_url":"https://github.com/igorkamyshev.png","language":"TypeScript","funding_links":["https://github.com/sponsors/igorkamyshev"],"categories":["data"],"sub_categories":[],"readme":"# Farfetched\n\n\u003cimg align=\"right\" width=\"174\" height=\"180\" title=\"Farfetched logotype\"\n     src=\"./apps/website/docs/public/logo.svg\"\u003e\n\nThe advanced data fetching tool for web applications\n\n## Quick Features\n\n- Transport/protocol/backend agnostic (REST, GraphQL, promises, whatever!)\n- Framework-agnostic (React, Solid, Vue, Svelte, Angular, whatever!)\n- Declarative — expresses the logic of a computation without describing its control flow\n- First class TypeScript support out of the box\n- Focused to improve both developer and user experiences\n\n### Documentation\n\nContinue reading about Farfetched in the [documentation](https://ff.effector.dev). It covers integration with the most popular UI-frameworks (such React and Solid), error handling, dependent queries, advanced contracts and other great tools.\n\n### Showcases\n\nRepository contains [several showcases](./apps/) of Farfetched usage. To start playing with them, clone repository and run `pnpm install \u0026\u0026 pnpm run --filter NAME dev` in the root directory, where `NAME` is the name of the showcase.\n\n## Contributing\n\nIf you want to contribute to Farfetched, please read the [CONTRIBUTING.md](./CONTRIBUTING.md) file first.\n\n## Maintains\n\n### Getting started\n\n- clone repo\n- install deps via `pnpm install`\n- make changes\n- make sure that your changes is passing checks:\n  - run tests via `pnpm run -r test:run`\n  - try to build it via `pnpm run -r build`\n  - format code via `pnpm run format:check`\n- fill in changes via `pnpm changeset`\n- open a PR\n- enjoy 🎉\n\n### Release workflow\n\nReleases of Farfetched are automated by [changesets](https://github.com/changesets/changesets) and GitHub Actions. Your only duty is creating changeset for every PR, it is controlled by [Changes-action](./.github/workflows/changes.yml).\n\nAfter merging PR to master-branch, [Version-action](./.github/workflows/version.yml) will update special PR with the next release. To publish this release, just merge special PR and wait, [Release-action](./.github/workflows/release.yml) will publish packages.\n\n### Repository management\n\n#### New package creation\n\nCopy-paste `packages/atomic-router` directory, rename it to the package name. Then, update `package.json`, `README.md` and `vite.config.ts` files. Then, delete `CHANGELOG.md` file and any other files that are not needed in the new package.\n\nFancy generator will be added in the future.\n\n## Credits\n\nFarfetched powered by [Aviasales](https://aviasales.com).\n\nSpecial thanks to all contributors and especially [Alexandr](https://github.com/AlexandrHoroshih) for endless patience during our debates about this library.\n\nSome of external libraries were inlined to Farfetched due to bundle size and custom features requirements:\n\n- https://github.com/effector/patronum\n- https://github.com/smelukov/nano-equal\n- https://github.com/DirtyHairy/async-mutex\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Figorkamyshev%2Ffarfetched","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Figorkamyshev%2Ffarfetched","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Figorkamyshev%2Ffarfetched/lists"}