{"id":15089096,"url":"https://github.com/infinitered/ignite-andross","last_synced_at":"2025-10-05T21:31:43.045Z","repository":{"id":55036198,"uuid":"85519267","full_name":"infinitered/ignite-andross","owner":"infinitered","description":"The original React Native boilerplate from Infinite Red - Redux, React Navigation, \u0026 more","archived":true,"fork":false,"pushed_at":"2021-03-09T00:44:54.000Z","size":2325,"stargazers_count":475,"open_issues_count":34,"forks_count":153,"subscribers_count":18,"default_branch":"master","last_synced_at":"2024-04-14T04:43:22.899Z","etag":null,"topics":["boilerplate","navigation","navigation-component","react","react-native","redux","redux-saga","storybook"],"latest_commit_sha":null,"homepage":"https://infinite.red/ignite","language":"JavaScript","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/infinitered.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}},"created_at":"2017-03-20T00:24:20.000Z","updated_at":"2024-03-09T01:06:02.000Z","dependencies_parsed_at":"2022-08-14T09:50:13.410Z","dependency_job_id":null,"html_url":"https://github.com/infinitered/ignite-andross","commit_stats":null,"previous_names":["infinitered/ignite-ir-next","infinitered/ignite-ir-boilerplate-andross"],"tags_count":38,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinitered%2Fignite-andross","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinitered%2Fignite-andross/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinitered%2Fignite-andross/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinitered%2Fignite-andross/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/infinitered","download_url":"https://codeload.github.com/infinitered/ignite-andross/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235445671,"owners_count":18991452,"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":["boilerplate","navigation","navigation-component","react","react-native","redux","redux-saga","storybook"],"created_at":"2024-09-25T08:40:02.199Z","updated_at":"2025-10-05T21:31:37.671Z","avatar_url":"https://github.com/infinitered.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","Previous Boilerplates"],"sub_categories":["./test directory"],"readme":"\u003cp align=\"center\"\u003e\u003cimg src=\"http://ir_public.s3.amazonaws.com/projects/ignite/ignite-andross-launch-screen.png\" alt=\"logo\" width=\"414px\"\u003e\u003c/p\u003e\n\n# Ignite \"Andross\" Boilerplate\n\n## Why is this archived?\n\nWe really appreciate all the community support in the years since we first released ignite-andross. Our focus has shifted to the latest version of [Ignite](https://github.com/infinitered/ignite), which includes the latest version of our boilerplate. Feel free to fork this library and continue on its legacy if you want. \n\nNOTE: This repo has been renamed from ignite-ir-boilerplate-andross to ignite-andross. Although web traffic and git operations for the previous name will be redirected, we recommend you update any links and git urls for this repo.\n\n\n## The original tried and true boilerplate for [Infinite Red](https://infinite.red)'s React Native apps\n\nCurrently includes:\n\n* React Native 0.63\n* React Navigation 4.0.0\n* Redux\n* Redux Sagas\n* And more!\n\n## Quick Start\n\nWhen you've installed the [Ignite CLI](https://github.com/infinitered/ignite), you can get started with this boilerplate like this:\n\n```sh\nnpx ignite-cli new MyLatestCreation\n```\n\nBy default we'll ask you to choose which boilerplate you'd like. If you just want to use this one you can specify it with `--boilerplate` or `-b`:\n\n```sh\nnpx ignite-cli new MyLatestCreation --boilerplate andross\n```\n\nYou can also change the React Native version; just keep in mind, we may not have tested this just yet.\n\n```sh\nnpx ignite-cli new MyLatestCreation --react-native-version 0.99.0-rc.2\n```\n\nBy default we'll ask you some questions during install as to which features you'd like.  If you just want them all, you can skip the questions:\n\n```sh\nnpx ignite-cli new MyLatestCreation --max\n```\n\nIf you want very few of these extras:\n\n```sh\nnpx ignite-cli new MyLatestCreation --min\n```\n\n## Boilerplate walkthrough\n\nYour `App` folder is where most of the goodies are found in an Ignite Next app. Let's walk through them in more detail. Start with `Containers/App.js` (described below) and work your way down the walkthrough in order.\n\n### Containers\n\nContainers are (mostly) full screens, although they can be sections of screens or application containers.\n\n* `App.js` - your main application. We create a Redux store and configure it here\n* `RootContainer.js` - main view of your application. Contains your status bar and navigation component\n* `LaunchScreen.js` - this is the first screen shown in your application. It's loaded into the Navigation component\n* `Styles` - styling for each of the above containers and screens\n\nTo generate a new Container or Screen you can use the following generator commands:\n\n* `npx ignite-cli g container New` - Will create a `New.js` and also a `Styles/NewStyle.js`.\n* `npx ignite-cli g list New` - The same as the `container` command, but it will give you a walkthrough to generate a ListView screen. Allowing you to even pick `FlatList` or not, grid, and some other options.\n* `npx ignite-cli g screen New` - Will create a `NewScreen.js` and also a `Styles/NewScreenStyle.js`. Important to mention that the `screen` generator will add the `Screen` on the file/class name to make easier to identify.\n\nThose commands will also add the new container to the navigations file.\n\n### Navigation\n\nYour primary and other navigation components reside here.\n\n* `AppNavigation.js` - loads in your initial screen and creates your menu(s) in a StackNavigation\n* `Styles` - styling for the navigation\n* `ReduxNavigation.js` - This file contains the core navigation of your application. If you ever change your launch screen, make sure to change it also at `if (nav.routes.length === 1 \u0026\u0026 (nav.routes[0].routeName === 'LaunchScreen')) {`, otherwise you may encounter navigation problems with the Android back button!\n\n### Components\n\nReact components go here...pretty self-explanatory. We won't go through each in detail -- open each file to read the comments and view the code.\n\nTo generate a new Component you can use the following generator commands:\n\n* `npx ignite-cli g component New` - Will create a `New.js` and also a `Styles/NewStyle.js`.\n* `npx ignite-cli g component path/New` - The same as above, but will use a relative path\n* `npx ignite-cli g component --folder path` - An alternative to `npx ignite-cli g component path/index`\n* `npx ignite-cli g component --folder path new ` - An alternative to `npx ignite-cli g component relativePath/New`\n\n### Storybook\n\n[Storybook](https://storybook.js.org/) has been setup to show off components in the different states. Storybook is a great way to develop and test components outside of use in your app. Simply run `npm run storybook` to get started. All stores are contained in the `*.story.js` files along side the components.\n\n### Themes\n\nStyling themes used throughout your app styles.\n\n* `ApplicationStyles.js` - app-wide styles\n* `Colors.js` - defined colors for your app\n* `Fonts.js` - defined fonts for your app\n* `Images.js` - loads and caches images used in your app\n* `Metrics.js` - useful measurements of things like navBarHeight\n\n### Config\n\nInitialize and configure things here.\n\n* `AppConfig.js` - simple React Native configuration here\n* `DebugConfig.js` - define how you want your debug environment to act\n* `ReactotronConfig.js` - configures [Reactotron](https://github.com/infinitered/reactotron) in your project (Note: this [will be extracted](https://github.com/infinitered/ignite/issues/779) into a plugin in the future)\n* `ReduxPersist.js` - configures Redux Persist (Note: this [will be extracted](https://github.com/infinitered/ignite/issues/780) into a plugin in the future)\n\n### Fixtures\n\nContains json files that mimic API responses for quicker development. These are used by the `Services/FixtureApi.js` object to mock API responses.\n\n### Redux, Sagas\n\nContains a preconfigured Redux and Redux-Sagas setup. Review each file carefully to see how Redux interacts with your application.\n\nHere again we have generators to help you out. You just have to use one of the following:\n\n* `npx ignite-cli g redux Amazing` - Will generate and link the redux for `Amazing`.\n* `npx ignite-cli g saga Amazing` - The same as above, but for the Sagas\n\nYou can read more about Redux and Redux Sagas in these blog posts:\n\n* [Using redux-saga To Simplify Your Growing React Native Codebase](https://shift.infinite.red/using-redux-saga-to-simplify-your-growing-react-native-codebase-2b8036f650de)\n* [A Tour of React Native — Part 2: Redux \u0026 Friends](https://shift.infinite.red/a-tour-of-react-native-part-2-redux-friends-4fed022aaa1e)\n\n### Services\n\nContains your API service and other important utilities for your application.\n\n* `Api.js` - main API service, giving you an interface to communicate with your back end\n* `ExamplesRegistry.js` - lets you view component and Ignite plugin examples in your app\n* `FixtureApi.js` - mocks your API service, making it faster to develop early on in your app\n* `ImmutablePersistenceTransform.js` - part of the redux-persist implementation (will be removed)\n* `RehydrationServices.js` - part of the redux-persist implementation (will be removed)\n\n### Lib\n\nWe recommend using this folder for modules that can be extracted into their own NPM packages at some point.\n\n### Images\n\nContains actual images (usually png) used in your application.\n\n### Transforms\n\nHelpers for transforming data between API and your application and vice versa. An example is provided that you can look at to see how it works.\n\n### Tests\n\nThis folder (located as a sibling to `App`) contains sample Jest snapshot and unit tests for your application.\n\nIf you would like to have the `npx ignite-cli generate` command include the generation of tests when available, add\n`\"tests\": \"jest\"` or `\"tests\": \"ava\"` to `./ignite/ignite.json`, depending on the test runner you are using.\n\n**Previous Boilerplates**\n\n* [2016 aka Ignite 1.0](https://github.com/infinitered/ignite-ir-boilerplate-2016)\n\n\n## Premium Support\n\n[Ignite CLI](https://infinite.red/ignite) and [Ignite Andross](https://github.com/infinitered/ignite-andross), as open source projects, are free to use and always will be. [Infinite Red](https://infinite.red/) offers premium Ignite CLI support and general mobile app design/development services. Email us at [hello@infinite.red](mailto:hello@infinite.red) to get in touch with us for more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finfinitered%2Fignite-andross","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finfinitered%2Fignite-andross","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finfinitered%2Fignite-andross/lists"}