Giter Site home page Giter Site logo

mibshara / ignite Goto Github PK

View Code? Open in Web Editor NEW

This project forked from infinitered/ignite

0.0 2.0 0.0 14.41 MB

The unfair starting CLI, Generator, and more for React Native

License: MIT License

Shell 4.42% JavaScript 88.29% Python 0.79% Java 0.97% Ruby 2.63% Objective-C 2.90%

ignite's Introduction

React Native Ignite logo

๐Ÿ”ฅ The ideal starting app for React Native, best practices, generators, and more. ๐Ÿ”ฅ
Join the chat at https://gitter.im/infinitered/ignite js-standard-style Build Status npm version

Why Ignite?

To view the generated example project, just pull down the code and run ignite-base!

โฌ‡๏ธ Install

Make sure you're set up for React Native

Step 1: Install

npm install -g react-native-ignite

or

yarn global add react-native-ignite

NOTE: If you seem to not have ignite available on your path, check that your correct yarn bin directory is on your path by checking that the output of yarn global bin is listed as a directory in $PATH environment variable.

For those of you unfamiliar with the new package manager Yarn, it's basically a 1 for 1 replacement for npm, but with a significant speed boost. Check out this yarn cheatsheet for more info.

Step 2: Use

ignite new MyApplication

install

โ–ถ๏ธ How to Run Generated App

  1. cd to the repo
  2. Run Build for either OS
  • for iOS
    • run the command react-native run-ios
  • for Android
  1. If the packager does not automatically start, run npm start or yarn start
  2. Enjoy!

install

โ–ถ๏ธ Troubleshooting

These are some common issues you may run into while setting up Ignite. If you encounter something that is not listed here, try searching for the issue in GitHub.

Android

  • Problem:

    After running react-native android you get the following error:

      com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException:
      Process 'command '     /usr/lib/jvm/java-8-oracle/bin/java'' finished with non-zero exit value 2
    

    Solution:

      (cd android && ./gradlew clean)
    

โฌ†๏ธ Built-In Generators

Generate an app: ignite new MyApplication

  • The application generator uses the ignite-base template to provide a fresh application with all the common tech wired up and ready to roll. Base applications come with common development screens, tools, and components. As for now, this is a 'Kitchen Sink' plan of attack. Eventually to be pared down, and adjustable in v2.0

Generate a component: ignite generate component SmoothButton

  • The component generator creates a new 'dumb component' with the stylesheet. Both files are created and placed in their appropriate folders.

Generate a container: ignite generate container SubMenu

  • A generated container is a smart component that is connected to Redux. Usually for containing other components. The component and stylesheet are placed in the Containers folder.

Generate a screen: ignite generate screen Settings

  • A generated screen is an opinionated container with a generated route. Keyboard avoiding and other base code is placed in this connected smart component.

Generate a listview: ignite generate listview HotDates

  • React Native listview container with easy step-by-step instructions on how to get started with an easy list template.

Generate a redux: ignite generate redux Login

  • Generate a reducer with three actions and three types: request, success and failure, all hooked together into a reducer.

Generate a saga: ignite generate saga Login

  • Generate a saga - the generated example handles connecting to a third party api. Designed for use in tandem with redux generator.

Generate a mapview: ignite generate mapview MapScreen

  • react-native-maps container, component, and map helpers with easy step-by-step instructions on how to get started with an simple map screen.

Import images: ignite import imagesfile

  • Imports all files in Images folder and converts the names into key: value pairs in the image object inside of the Images.js file in the Themes folder.

โ†—๏ธ This Repo Explained

  • ignite-base aka [BASE] - is the generated default app. Some files are different and have a .template extension.
  • ignite-cli aka [CLI] - is the app that wraps our yeoman generators, and other commands. This is the react-native-ignite node module.
  • ignite-generator aka [GEN] - Yeoman generators for Ignite. This is the generator-react-native-ignite node module that the CLI depends on for generating app items.
  • fireDrill.sh - A shell script for verifying the necessary relationship between folders and files is in good shape. Since versions, templates, and linting is enforce, we have it all in one friendly script for developers and CI.
  • testRelease.sh - A shell script that automatically ignites a project based on the repo to make sure it generates correctly, and functions to the best of automated testability. This script is run before every release.

๐Ÿ†™ Ignite Versions

Ignite is tested on every release: See release history for changes and upgrades.
Ignite master branch is tested against facebook's react-native master branch every 24 hours. Though this doesn't immediately affect the current release of Ignite, it helps us detect early issues with upgrading: Current status Build Status

๐Ÿ”€ Where to Go From Here

Contribute to Ignite - Getting up and running for your first pull request

Chat with us on Gitter - Infinite Red devs standing by

Chosen Tech Docs - Understand the Tech Inside

Roadmap Wiki Page - Future Plans of Ignite

Who are We? - Learn More About Infinite Red

Project Web Page - Our Github Page

โค๏ธ Special Thanks โค๏ธ

Thank you to the numerous contributors of Ignite. Additionally, our Gitter/Slack integration has been most graciously donated by SameRoom.io. Our awe and appreciation for the friendliness of Open Source is the fuel for all Infinite Red projects like Ignite.

ignite's People

Contributors

asndev avatar budda avatar derekgreenberg avatar ecjs avatar excellacenter avatar gantman avatar hiaw avatar iraquitan avatar jamonholmgren avatar juddey avatar kevinvangelder avatar leonskim avatar luizguilhermefr avatar lukabers avatar markrickert avatar matanshavit avatar mgscreativa avatar mmazzarolo avatar mnbroatch avatar msalokangas avatar novex avatar patricksmith avatar plougsgaard avatar pradel avatar rafalwilinski avatar rajington avatar ryanlntn avatar siakaramalegos avatar skellock avatar twerth avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.