{"id":13417062,"url":"https://github.com/laststance/vite-rtk-query","last_synced_at":"2025-04-05T01:08:41.926Z","repository":{"id":37004716,"uuid":"429537032","full_name":"laststance/vite-rtk-query","owner":"laststance","description":"Vite template for React + TypeScript + Redux-Toolkit / RTK Query.","archived":false,"fork":false,"pushed_at":"2025-03-27T10:57:46.000Z","size":5824,"stargazers_count":140,"open_issues_count":2,"forks_count":15,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-28T09:59:55.226Z","etag":null,"topics":["msw","react","redux-toolkit","rtk-query","vite"],"latest_commit_sha":null,"homepage":"","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/laststance.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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":"ryota-murakami"}},"created_at":"2021-11-18T18:27:05.000Z","updated_at":"2025-03-27T10:57:43.000Z","dependencies_parsed_at":"2024-11-06T17:20:08.314Z","dependency_job_id":"29c74f3f-4219-423b-952d-a13dc1082eef","html_url":"https://github.com/laststance/vite-rtk-query","commit_stats":{"total_commits":1438,"total_committers":7,"mean_commits":"205.42857142857142","dds":"0.48748261474269816","last_synced_commit":"1d89ff3ee223196b8e8c2429d9eeaaaf4734d43f"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laststance%2Fvite-rtk-query","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laststance%2Fvite-rtk-query/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laststance%2Fvite-rtk-query/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laststance%2Fvite-rtk-query/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/laststance","download_url":"https://codeload.github.com/laststance/vite-rtk-query/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247271532,"owners_count":20911587,"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":["msw","react","redux-toolkit","rtk-query","vite"],"created_at":"2024-07-30T22:00:32.046Z","updated_at":"2025-04-05T01:08:41.908Z","avatar_url":"https://github.com/laststance.png","language":"TypeScript","funding_links":["https://github.com/sponsors/ryota-murakami"],"categories":["Get Started","TypeScript"],"sub_categories":["Templates"],"readme":"# vite-rtk-query [![Typecheck](https://github.com/laststance/vite-rtk-query/actions/workflows/typecheck.yml/badge.svg)](https://github.com/laststance/vite-rtk-query/actions/workflows/typecheck.yml) [![Test](https://github.com/laststance/vite-rtk-query/actions/workflows/test.yml/badge.svg)](https://github.com/laststance/vite-rtk-query/actions/workflows/test.yml) [![Build](https://github.com/laststance/vite-rtk-query/actions/workflows/build.yml/badge.svg)](https://github.com/laststance/vite-rtk-query/actions/workflows/build.yml) [![Lint](https://github.com/laststance/vite-rtk-query/actions/workflows/lint.yml/badge.svg)](https://github.com/laststance/vite-rtk-query/actions/workflows/lint.yml)\n\n\u003e Vite RTK Query temptelte.  \n\u003e This include React+TS with familiar pre-setup tooling  \n\u003e Redux Toolkit, RTK Query, React Router, eslint-config-ts-prefixer, Vitest/TS/react-testing-library/MSW, tailwindcss, CSS Modules GitHub Actions CI.\n\n## [Try this Online!](https://codesandbox.io/p/github/laststance/vite-rtk-query/main?import=true\u0026layout=%257B%2522sidebarPanel%2522%253A%2522GIT%2522%252C%2522rootPanelGroup%2522%253A%257B%2522direction%2522%253A%2522horizontal%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522id%2522%253A%2522ROOT_LAYOUT%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522clld7m4o8000h3b6hsmaawe7i%2522%252C%2522sizes%2522%253A%255B70%252C30%255D%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522EDITOR%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522id%2522%253A%2522clld7m4o8000c3b6hpg0lt6ua%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522SHELLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522id%2522%253A%2522clld7m4o8000g3b6h3s4es0r6%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522DEVTOOLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522id%2522%253A%2522clld7m4o8000e3b6h9st3psvm%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%255D%252C%2522sizes%2522%253A%255B47.960956959972194%252C52.039043040027806%255D%257D%252C%2522tabbedPanels%2522%253A%257B%2522clld7m4o8000c3b6hpg0lt6ua%2522%253A%257B%2522id%2522%253A%2522clld7m4o8000c3b6hpg0lt6ua%2522%252C%2522activeTabId%2522%253A%2522clomqiwf8005h3b6lc4dltc9x%2522%252C%2522tabs%2522%253A%255B%257B%2522type%2522%253A%2522FILE%2522%252C%2522filepath%2522%253A%2522%252Fpackage.json%2522%252C%2522id%2522%253A%2522clomqiwf8005h3b6lc4dltc9x%2522%252C%2522mode%2522%253A%2522temporary%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%255D%257D%252C%2522clld7m4o8000e3b6h9st3psvm%2522%253A%257B%2522id%2522%253A%2522clld7m4o8000e3b6h9st3psvm%2522%252C%2522tabs%2522%253A%255B%257B%2522type%2522%253A%2522SYSTEM_METRICS%2522%252C%2522id%2522%253A%2522clly7wlzp02e13b6ivx71nygd%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%252C%257B%2522type%2522%253A%2522TASK_PORT%2522%252C%2522taskId%2522%253A%2522dev%2522%252C%2522port%2522%253A3000%252C%2522id%2522%253A%2522clly8lfuo00ny3b6hdm37bbuy%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522path%2522%253A%2522%252F%2522%257D%255D%252C%2522activeTabId%2522%253A%2522clly8lfuo00ny3b6hdm37bbuy%2522%257D%252C%2522clld7m4o8000g3b6h3s4es0r6%2522%253A%257B%2522id%2522%253A%2522clld7m4o8000g3b6h3s4es0r6%2522%252C%2522activeTabId%2522%253A%2522clld7mipg00ke3b6hpzob7gzb%2522%252C%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522clld7m4o8000f3b6hmbw6fmqd%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522TERMINAL%2522%252C%2522shellId%2522%253A%2522clld7m4xm001xdai15pqz8fct%2522%257D%252C%257B%2522type%2522%253A%2522TASK_LOG%2522%252C%2522taskId%2522%253A%2522dev%2522%252C%2522id%2522%253A%2522clld7mipg00ke3b6hpzob7gzb%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%252C%257B%2522type%2522%253A%2522TASK_LOG%2522%252C%2522taskId%2522%253A%2522CSB_RUN_OUTSIDE_CONTAINER%253D1%2520devcontainer%2520templates%2520apply%2520--template-id%2520%255C%2522ghcr.io%252Fdevcontainers%252Ftemplates%252Ftypescript-node%255C%2522%2520--template-args%2520%27%257B%257D%27%2520--features%2520%27%255B%255D%27%2522%252C%2522id%2522%253A%2522clomqn67i00bh3b6lqzvdc6qd%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%255D%257D%257D%252C%2522showDevtools%2522%253Atrue%252C%2522showShells%2522%253Atrue%252C%2522showSidebar%2522%253Atrue%252C%2522sidebarPanelSize%2522%253A15%257D)\n\n\u003cdiv align=\"center\"\u003e\n    \u003ca href=\"https://codesandbox.io/p/github/laststance/vite-rtk-query/main?import=true\u0026layout=%257B%2522sidebarPanel%2522%253A%2522GIT%2522%252C%2522rootPanelGroup%2522%253A%257B%2522direction%2522%253A%2522horizontal%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522id%2522%253A%2522ROOT_LAYOUT%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522clld7m4o8000h3b6hsmaawe7i%2522%252C%2522sizes%2522%253A%255B70%252C30%255D%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522EDITOR%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522id%2522%253A%2522clld7m4o8000c3b6hpg0lt6ua%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522SHELLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522id%2522%253A%2522clld7m4o8000g3b6h3s4es0r6%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522DEVTOOLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522id%2522%253A%2522clld7m4o8000e3b6h9st3psvm%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%255D%252C%2522sizes%2522%253A%255B47.960956959972194%252C52.039043040027806%255D%257D%252C%2522tabbedPanels%2522%253A%257B%2522clld7m4o8000c3b6hpg0lt6ua%2522%253A%257B%2522id%2522%253A%2522clld7m4o8000c3b6hpg0lt6ua%2522%252C%2522activeTabId%2522%253A%2522clomqiwf8005h3b6lc4dltc9x%2522%252C%2522tabs%2522%253A%255B%257B%2522type%2522%253A%2522FILE%2522%252C%2522filepath%2522%253A%2522%252Fpackage.json%2522%252C%2522id%2522%253A%2522clomqiwf8005h3b6lc4dltc9x%2522%252C%2522mode%2522%253A%2522temporary%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%255D%257D%252C%2522clld7m4o8000e3b6h9st3psvm%2522%253A%257B%2522id%2522%253A%2522clld7m4o8000e3b6h9st3psvm%2522%252C%2522tabs%2522%253A%255B%257B%2522type%2522%253A%2522SYSTEM_METRICS%2522%252C%2522id%2522%253A%2522clly7wlzp02e13b6ivx71nygd%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%252C%257B%2522type%2522%253A%2522TASK_PORT%2522%252C%2522taskId%2522%253A%2522dev%2522%252C%2522port%2522%253A3000%252C%2522id%2522%253A%2522clly8lfuo00ny3b6hdm37bbuy%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522path%2522%253A%2522%252F%2522%257D%255D%252C%2522activeTabId%2522%253A%2522clly8lfuo00ny3b6hdm37bbuy%2522%257D%252C%2522clld7m4o8000g3b6h3s4es0r6%2522%253A%257B%2522id%2522%253A%2522clld7m4o8000g3b6h3s4es0r6%2522%252C%2522activeTabId%2522%253A%2522clld7mipg00ke3b6hpzob7gzb%2522%252C%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522clld7m4o8000f3b6hmbw6fmqd%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522TERMINAL%2522%252C%2522shellId%2522%253A%2522clld7m4xm001xdai15pqz8fct%2522%257D%252C%257B%2522type%2522%253A%2522TASK_LOG%2522%252C%2522taskId%2522%253A%2522dev%2522%252C%2522id%2522%253A%2522clld7mipg00ke3b6hpzob7gzb%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%252C%257B%2522type%2522%253A%2522TASK_LOG%2522%252C%2522taskId%2522%253A%2522CSB_RUN_OUTSIDE_CONTAINER%253D1%2520devcontainer%2520templates%2520apply%2520--template-id%2520%255C%2522ghcr.io%252Fdevcontainers%252Ftemplates%252Ftypescript-node%255C%2522%2520--template-args%2520%27%257B%257D%27%2520--features%2520%27%255B%255D%27%2522%252C%2522id%2522%253A%2522clomqn67i00bh3b6lqzvdc6qd%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%255D%257D%257D%252C%2522showDevtools%2522%253Atrue%252C%2522showShells%2522%253Atrue%252C%2522showSidebar%2522%253Atrue%252C%2522sidebarPanelSize%2522%253A15%257D\"\u003e\n        \u003cimg src=\"https://digital3.nyc3.cdn.digitaloceanspaces.com/vite-rtk-query.gif\" /\u003e\n    \u003c/a\u003e\n\u003c/div\u003e\n\n- [Redux Toolkit](https://redux-toolkit.js.org/)\n- [RTK Query](https://redux-toolkit.js.org/rtk-query/overview)\n- [eslint-config-ts-prefixer](https://github.com/laststance/eslint-config-ts-prefixer). Specialized fixable(`--fix` option) rule sets. Zero extend any recommended for confortable DX.\n- [Vitest](https://vitest.dev/), [React Testing Library](https://testing-library.com/docs/react-testing-library/intro/), [MSW](https://mswjs.io/)\n- [tailwindcss](https://tailwindcss.com/)\n- [Github Actions](https://github.com/features/actions)\n\nAll npm package are keeping least release version powered by [Dependabot](https://github.com/dependabot).\n\n# Installation\n\n```\nnpx degit laststance/vite-rtk-query myapp\n```\n\n- Install [pnpm](https://pnpm.io/installation)\n\n### pnpm\n\n```sh\ncd myapp\npnpm install\npnpm validate\npnpm dev\n```\n\nIf you don't need TailwindCSS, run `pnpm remove:tailwind` after `pnpm install`.\n\n## Commands\n\n```bash\npnpm dev             # start development server\npnpm start           # start development server\npnpm validate        # run test,lint,build,typecheck concurrently\npnpm test            # run vitest\npnpm test:watch      # run vitest watch mode\npnpm lint            # run eslint\npnpm lint:fix         # run eslint with --fix option\npnpm typecheck       # run TypeScript compiler check\npnpm build           # build production bundle to 'dist' directly\npnpm prettier        # run prettier for json|yml|css|md|mdx files\npnpm clean           # remove 'node_modules' 'yarn.lock' 'dist' completely\npnpm serve           # launch server for production bundle in local\npnpm remove:tailwind # remove TailwindCSS\n```\n\n# License\n\nMIT\n\n## Contributors ✨\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://ryota-murakami.github.io/\"\u003e\u003cimg src=\"https://avatars1.githubusercontent.com/u/5501268?s=400\u0026u=7bf6b1580b95930980af2588ef0057f3e9ec1ff8\u0026v=4?s=100\" width=\"100px;\" alt=\"ryota-murakami\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eryota-murakami\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/laststance/vite-rtk-query/laststance/vite-rtk-query/commits?author=ryota-murakami\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/laststance/vite-rtk-query/laststance/vite-rtk-query/commits?author=ryota-murakami\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/laststance/vite-rtk-query/laststance/vite-rtk-query/commits?author=ryota-murakami\" title=\"Tests\"\u003e⚠️\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/jhonber\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/451392?v=4?s=100\" width=\"100px;\" alt=\"Jhon Jimenez\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eJhon Jimenez\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/laststance/vite-rtk-query/laststance/vite-rtk-query/commits?author=jhonber\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\nThis project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flaststance%2Fvite-rtk-query","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flaststance%2Fvite-rtk-query","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flaststance%2Fvite-rtk-query/lists"}