{"id":25963496,"url":"https://github.com/gaia-react/react-router","last_synced_at":"2025-03-04T20:38:55.675Z","repository":{"id":255510934,"uuid":"851977859","full_name":"gaia-react/react-router","owner":"gaia-react","description":"GAIA Template for React","archived":false,"fork":false,"pushed_at":"2025-02-28T08:43:48.000Z","size":2189,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-02-28T15:14:57.223Z","etag":null,"topics":["architecture","components","eslint","msw","prettier","react","remix","remix-stack","storybook","stylelint","template","vitest"],"latest_commit_sha":null,"homepage":"https://gaia-react.github.io/docs/","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/gaia-react.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":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"stevensacks"}},"created_at":"2024-09-04T02:29:07.000Z","updated_at":"2025-02-28T08:43:52.000Z","dependencies_parsed_at":"2024-09-16T23:14:10.413Z","dependency_job_id":"7f09fdbc-abad-4dca-bad3-66c45b8e2317","html_url":"https://github.com/gaia-react/react-router","commit_stats":{"total_commits":29,"total_committers":1,"mean_commits":29.0,"dds":0.0,"last_synced_commit":"eafdbecdf689e099cf0bac006acf79703ea94b2c"},"previous_names":["gaia-react/remix"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gaia-react%2Freact-router","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gaia-react%2Freact-router/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gaia-react%2Freact-router/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gaia-react%2Freact-router/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gaia-react","download_url":"https://codeload.github.com/gaia-react/react-router/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241921258,"owners_count":20042761,"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":["architecture","components","eslint","msw","prettier","react","remix","remix-stack","storybook","stylelint","template","vitest"],"created_at":"2025-03-04T20:38:53.753Z","updated_at":"2025-03-04T20:38:55.645Z","avatar_url":"https://github.com/gaia-react.png","language":"TypeScript","readme":"# Welcome to GAIA React!\n\n\u003cimg src=\"./app/assets/images/gaia-logo.svg\" height=\"100\" alt=\"GAIA\"/\u003e\n\nGAIA React is a **fully comprehensive** template for building modern React web applications.\n\nIt is designed to be the best possible starting point for any professional React project.\n\nIt comes with **EVERYTHING** you need, fully configured and ready to go.\n\nThe Developer Experience (DX) is designed to be top-notch.\n\n- Automated and robust code quality tools are all set up, keeping your code clean and tech debt to a minimum.\n- Best practices are baked into the source code examples for you to follow.\n- Utilities, hooks, authentication, components, services, styles, tests, stories, and other code examples are all included to help you get started quickly.\n- Unit, integration, visual regression, and end-to-end tests are set up.\n- While GAIA comes with recommended packages, conventions, and settings, you're free to change or remove them to suit your needs!\n\nGAIA React has many great features built-in:\n\n- Built with [React Router 7](https://reactrouter.com/), a fantastic full-stack React framework for the modern web\n- [TailwindCSS](https://tailwindcss.com/) for styling\n- [Zod](https://zod.dev/) for data validation\n- Robust ESLint ruleset along with [Prettier](https://prettier.io/) and [Stylelint](https://stylelint.io/)\n- [Husky](https://typicode.github.io/husky/) and [Lint-Staged](https://github.com/lint-staged/lint-staged) for pre-commit checks to ensure code quality\n- A complete testing suite with [Vitest](https://vitest.dev), [React Testing Library](https://testing-library.com/docs/react-testing-library/intro/), and [PlayWright](https://playwright.dev/docs/intro)\n- [Storybook](https://storybook.js.org/) and [Chromatic](https://chromatic.com/), with a [React Router Stub](https://reactrouter.com/start/framework/testing) decorator included\n- [Mock Service Worker](https://mswjs.io/) with working handlers, and [msw/data](https://github.com/mswjs/data) for data mocking\n- [remix-auth](https://remix.run/resources/remix-auth) with a working authentication example\n- Toast notifications with [remix-toast](https://remix.run/resources/remix-toast) and [Sonner](https://sonner.emilkowal.ski/)\n- Internationalization via [remix-i18next](https://github.com/sergiodxa/remix-i18next) with sample files already in place\n- [RVF](https://www.rvf-js.io/) for form management and validation\n- [FontAwesome](https://fontawesome.com/) icons\n- A convenient and flexible wrapper around fetch that simplifies API calls\n- Many example components, ready for you to use and modify\n- Useful utility functions and hooks\n- Dark mode support\n- And much more!\n\nNo matter what your skill level or experience, GAIA will make your life and your code better.\n\nRead the [GAIA Documentation](https://gaia-react.github.io/docs/) for detailed information about working with GAIA.\n\n## Is this associated with the GAIA Flash Framework?\n\n**Yes!**\n\nThe GAIA Flash Framework revolutionized Flash website development and became the most popular Flash framework in the world (second only to Adobe Flex, which was focused on enterprise applications). It was used to build over 100,000 Flash sites and relied upon by every major digital agency worldwide.\n\nGAIA React is its spiritual successor. It has been reborn as a React template. Like its predecessor, it's designed to be the most comprehensive and easy-to-use React template available, to build professional-grade frontend applications.\n\n## Installation\n\nMake sure you have [Node.js](https://nodejs.org/en/) \u003e=20.17.0 LTS installed, preferably via [nvm](https://github.com/nvm-sh/nvm).\n\nAll you need to do is run this installation command and get to work.\n\n```sh\nnpx create-react-router@latest --template gaia-react/react-router\n```\n\n### Install packages\n\n```sh\nnpm install\n```\n\nDuplicate the `.env.example` file and name it `.env`.\n\n### Setup Fix on Save in your IDE\n\nFollow these [instructions](/docs/tech-stack/code-quality/#setup-fix-on-save).\n\n## Development\n\nHere's how to develop with GAIA.\n\n### Storybook\n\n```sh\nnpm run storybook\n```\n\n### React Router 7\n\n```sh\nnpm run dev\n```\n\n### Styling\n\nThis template comes with [Tailwind CSS](https://v3.tailwindcss.com/) configured, with some configuration and utilities, which you can change to suit your project.\n\nSee the [Vite docs on css](https://vitejs.dev/guide/features.html#css) for more information.\n\n### Icons\n\n[FontAwesome](https://fontawesome.com/) is included. You're free to change it if you like.\n\n### i18n\n\n[Remix-i18next](https://github.com/sergiodxa/remix-i18next) is configured with examples.\n\nStorybook is already configured with react-i18n support.\n\n## Testing\n\nGAIA comes with a full testing suite already configured.\n\n### Unit and Integration\n\n- [vitest](https://vitest.dev/)\n- [React Testing Library](https://testing-library.com/docs/react-testing-library/intro/)\n\n```sh\n  npm t\n  // or\n  npm run test\n```\n\n### Visual Regression\n\n[Chromatic](https://chromatic.com)\n\nYou'll need to set your `CHROMATIC_PROJECT_TOKEN` env variable on your CI.\n\n### E2E\n\n[PlayWright](https://playwright.dev/docs/intro)\n\n```sh\nnpx playwright test\n```\n\nInteractive mode:\n\n```sh\nnpx playwright test --ui\n```\n\n## Deployment\n\nGAIA comes with the default Remix deployment configuration. You can change this to whatever deployment process you prefer.\n\nHere's the basic Remix deployment process:\n\n```sh\nnpm run build\n```\n\nThen run the app in production mode:\n\n```sh\nnpm start\n```\n\nYou'll need to pick a host to deploy it to. Jacob Paris wrote a [great article](https://www.jacobparis.com/content/where-to-host-remix) on where to host your React Router 7 app.\n\n### DIY\n\nIf you're familiar with deploying Node applications, the built-in Remix app server is production-ready.\n\nMake sure to deploy the output of `npm run build`\n\n- `build/server`\n- `build/client`\n","funding_links":["https://github.com/sponsors/stevensacks"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgaia-react%2Freact-router","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgaia-react%2Freact-router","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgaia-react%2Freact-router/lists"}